diff --git a/.gitignore b/.gitignore index 6e8ba6a..72f6906 100644 --- a/.gitignore +++ b/.gitignore @@ -113,4 +113,5 @@ dmypy.json runs/ Test/ -yolo_dataset/ \ No newline at end of file +yolo_dataset/ +calib_images/ \ No newline at end of file diff --git a/best_int8.tflite b/best_int8.tflite new file mode 100644 index 0000000..fbd9672 Binary files /dev/null and b/best_int8.tflite differ diff --git a/quantisierung.py b/quantisierung.py new file mode 100644 index 0000000..eb3f6b0 --- /dev/null +++ b/quantisierung.py @@ -0,0 +1,42 @@ +import tensorflow as tf +import numpy as np +import os +from PIL import Image + +dir = os.path.dirname(os.path.realpath(__file__)) + +# --- Pfad zum SavedModel --- +saved_model_dir = dir + "/yolo_training/NAO_detector9/weights/best_saved_model" + +# --- Optional: Pfad zu Beispielbildern --- +image_dir = dir + "/calib_images" # z. B. 50–100 JPGs aus deinem Datensatz (z. B. NAO-Roboter-Bilder) +input_size = (320, 320) # oder (640, 640) je nach deinem Modellinput + +# --- Repräsentative Datenfunktion --- +def representative_data_gen(): + for filename in os.listdir(image_dir): + if filename.endswith(".jpg") or filename.endswith(".png"): + img = Image.open(os.path.join(image_dir, filename)).convert("RGB") + img = img.resize(input_size) + img = np.array(img, dtype=np.float32) / 255.0 # normalisieren falls nötig + img = np.expand_dims(img, axis=0) + yield [img] + +# --- Konverter konfigurieren --- +converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir) +converter.optimizations = [tf.lite.Optimize.DEFAULT] +converter.representative_dataset = representative_data_gen +converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS_INT8] + +# Je nach Ziel-Hardware (z. B. NAO): INT8 in/out oder UINT8 +converter.inference_input_type = tf.uint8 +converter.inference_output_type = tf.uint8 + +# --- Konvertieren --- +quant_model = converter.convert() + +# --- Speichern --- +with open("best_int8.tflite", "wb") as f: + f.write(quant_model) + +print("✅ INT8-Quantisierung abgeschlossen.") \ No newline at end of file diff --git a/train_yolo.py b/train_yolo.py index 9dd84c2..ebefeb6 100644 --- a/train_yolo.py +++ b/train_yolo.py @@ -99,14 +99,8 @@ def train_yolo(): # OpenVINO Format (optimiert für Intel Hardware) model.export(format='openvino', imgsz=320) - model.export( - format="tflite", - dynamic=False, - inference_type="uint8", - quantize=True, - imgsz=320, - calibration_data=os.path.join(dir, "calib_images") - ) + # tflite Format + model.export(format="tflite",imgsz=320,) print("\nTraining abgeschlossen. Die Modelle wurden im 'yolo_training/NAO_detector' Ordner gespeichert.") diff --git a/yolo_training/NAO_detector9/F1_curve.png b/yolo_training/NAO_detector9/F1_curve.png new file mode 100644 index 0000000..22943b7 Binary files /dev/null and b/yolo_training/NAO_detector9/F1_curve.png differ diff --git a/yolo_training/NAO_detector9/PR_curve.png b/yolo_training/NAO_detector9/PR_curve.png new file mode 100644 index 0000000..7cd9e7c Binary files /dev/null and b/yolo_training/NAO_detector9/PR_curve.png differ diff --git a/yolo_training/NAO_detector9/P_curve.png b/yolo_training/NAO_detector9/P_curve.png new file mode 100644 index 0000000..026a3c0 Binary files /dev/null and b/yolo_training/NAO_detector9/P_curve.png differ diff --git a/yolo_training/NAO_detector9/R_curve.png b/yolo_training/NAO_detector9/R_curve.png new file mode 100644 index 0000000..0796ae6 Binary files /dev/null and b/yolo_training/NAO_detector9/R_curve.png differ diff --git a/yolo_training/NAO_detector9/args.yaml b/yolo_training/NAO_detector9/args.yaml new file mode 100644 index 0000000..e4dca83 --- /dev/null +++ b/yolo_training/NAO_detector9/args.yaml @@ -0,0 +1,105 @@ +task: detect +mode: train +model: yolov8n.pt +data: yolo_dataset/dataset.yaml +epochs: 50 +time: null +patience: 5 +batch: 16 +imgsz: 320 +save: true +save_period: -1 +cache: false +device: '0' +workers: 8 +project: yolo_training +name: NAO_detector9 +exist_ok: false +pretrained: true +optimizer: auto +verbose: true +seed: 0 +deterministic: true +single_cls: false +rect: false +cos_lr: false +close_mosaic: 10 +resume: false +amp: true +fraction: 1.0 +profile: false +freeze: null +multi_scale: false +overlap_mask: true +mask_ratio: 4 +dropout: 0.0 +val: true +split: val +save_json: false +conf: null +iou: 0.7 +max_det: 300 +half: false +dnn: false +plots: true +source: null +vid_stride: 1 +stream_buffer: false +visualize: false +augment: false +agnostic_nms: false +classes: null +retina_masks: false +embed: null +show: false +save_frames: false +save_txt: false +save_conf: false +save_crop: false +show_labels: true +show_conf: true +show_boxes: true +line_width: null +format: torchscript +keras: false +optimize: false +int8: false +dynamic: false +simplify: true +opset: null +workspace: null +nms: false +lr0: 0.01 +lrf: 0.01 +momentum: 0.937 +weight_decay: 0.0005 +warmup_epochs: 3.0 +warmup_momentum: 0.8 +warmup_bias_lr: 0.1 +box: 7.5 +cls: 0.5 +dfl: 1.5 +pose: 12.0 +kobj: 1.0 +nbs: 64 +hsv_h: 0.015 +hsv_s: 0.7 +hsv_v: 0.4 +degrees: 0.0 +translate: 0.1 +scale: 0.5 +shear: 0.0 +perspective: 0.0 +flipud: 0.0 +fliplr: 0.5 +bgr: 0.0 +mosaic: 1.0 +mixup: 0.0 +cutmix: 0.0 +copy_paste: 0.0 +copy_paste_mode: flip +auto_augment: randaugment +erasing: 0.4 +cfg: null +tracker: botsort.yaml +save_dir: yolo_training/NAO_detector9 diff --git a/yolo_training/NAO_detector9/confusion_matrix.png b/yolo_training/NAO_detector9/confusion_matrix.png new file mode 100644 index 0000000..fa3090d Binary files /dev/null and b/yolo_training/NAO_detector9/confusion_matrix.png differ diff --git a/yolo_training/NAO_detector9/confusion_matrix_normalized.png b/yolo_training/NAO_detector9/confusion_matrix_normalized.png new file mode 100644 index 0000000..a44886a Binary files /dev/null and b/yolo_training/NAO_detector9/confusion_matrix_normalized.png differ diff --git a/yolo_training/NAO_detector9/labels.jpg b/yolo_training/NAO_detector9/labels.jpg new file mode 100644 index 0000000..e352e9b Binary files /dev/null and b/yolo_training/NAO_detector9/labels.jpg differ diff --git a/yolo_training/NAO_detector9/results.csv b/yolo_training/NAO_detector9/results.csv new file mode 100644 index 0000000..613934a --- /dev/null +++ b/yolo_training/NAO_detector9/results.csv @@ -0,0 +1,31 @@ +epoch,time,train/box_loss,train/cls_loss,train/dfl_loss,metrics/precision(B),metrics/recall(B),metrics/mAP50(B),metrics/mAP50-95(B),val/box_loss,val/cls_loss,val/dfl_loss,lr/pg0,lr/pg1,lr/pg2 +1,24.5837,1.38337,1.59497,1.13299,0.77381,0.63415,0.79174,0.51402,1.07247,1.59311,1.10924,0.000661064,0.000661064,0.000661064 +2,44.1935,1.37648,1.1011,1.12629,0.47912,0.56098,0.48856,0.29811,1.65133,2.146,1.48548,0.00130144,0.00130144,0.00130144 +3,63.5209,1.37521,1.00512,1.14473,0.75871,0.76707,0.85137,0.51276,1.45374,1.14832,1.33055,0.00191542,0.00191542,0.00191542 +4,83.0181,1.39248,0.97729,1.1521,0.72427,0.90244,0.83962,0.55562,1.1063,1.1655,1.1848,0.0018812,0.0018812,0.0018812 +5,102.099,1.34909,0.9365,1.1294,0.80313,0.82927,0.87456,0.59494,1.10444,0.98597,1.10162,0.0018416,0.0018416,0.0018416 +6,120.495,1.30565,0.85466,1.10696,0.78937,0.90244,0.88324,0.6495,1.01957,0.99015,1.0765,0.001802,0.001802,0.001802 +7,139.265,1.29615,0.83925,1.10297,0.81199,0.84285,0.91349,0.69203,0.9179,0.87651,1.0519,0.0017624,0.0017624,0.0017624 +8,158.55,1.23532,0.78344,1.08741,0.83294,0.8513,0.90222,0.70301,0.93553,0.8022,1.00482,0.0017228,0.0017228,0.0017228 +9,177.315,1.24022,0.77411,1.07758,0.89615,0.80488,0.92216,0.66249,0.98643,0.82604,1.02006,0.0016832,0.0016832,0.0016832 +10,195.778,1.22761,0.76174,1.09093,0.77696,0.9347,0.94549,0.74916,0.89332,0.75543,1.02896,0.0016436,0.0016436,0.0016436 +11,214.175,1.20899,0.74909,1.08335,0.80922,0.87805,0.91758,0.68197,0.89423,0.88144,1.04086,0.001604,0.001604,0.001604 +12,232.891,1.20618,0.74583,1.07317,0.9041,0.90244,0.94701,0.72502,0.86928,0.74318,0.9874,0.0015644,0.0015644,0.0015644 +13,251.636,1.18134,0.71034,1.05533,0.8864,0.95162,0.9707,0.75873,0.84101,0.64098,0.99018,0.0015248,0.0015248,0.0015248 +14,270.239,1.17983,0.70683,1.06267,0.79901,0.90244,0.92739,0.74632,0.74994,0.70678,0.96296,0.0014852,0.0014852,0.0014852 +15,288.895,1.17521,0.69821,1.06029,0.82494,0.87805,0.90711,0.68548,0.81982,0.72279,0.95689,0.0014456,0.0014456,0.0014456 +16,307.27,1.15779,0.68632,1.04943,0.92729,0.95122,0.96588,0.76468,0.82413,0.6346,0.99141,0.001406,0.001406,0.001406 +17,325.407,1.16109,0.6758,1.04592,0.92107,0.95122,0.96739,0.7732,0.7881,0.62989,0.9065,0.0013664,0.0013664,0.0013664 +18,343.35,1.12661,0.66474,1.04166,0.97356,0.97561,0.98827,0.81068,0.69881,0.55234,0.88231,0.0013268,0.0013268,0.0013268 +19,361.278,1.12698,0.64788,1.03084,0.94956,0.92683,0.96542,0.7717,0.7068,0.63099,0.92191,0.0012872,0.0012872,0.0012872 +20,379.226,1.13069,0.65455,1.03885,0.90112,0.97561,0.97418,0.78791,0.70749,0.60267,0.89277,0.0012476,0.0012476,0.0012476 +21,397.629,1.11647,0.63365,1.0299,0.92627,0.97561,0.9702,0.81019,0.67045,0.62768,0.8665,0.001208,0.001208,0.001208 +22,416.662,1.09492,0.62911,1.02721,0.95114,0.94962,0.98024,0.81772,0.69665,0.538,0.87337,0.0011684,0.0011684,0.0011684 +23,435.458,1.11042,0.63233,1.02942,0.91751,0.95122,0.9419,0.80744,0.6747,0.58275,0.86386,0.0011288,0.0011288,0.0011288 +24,453.303,1.09507,0.61695,1.01568,0.97617,0.99934,0.98929,0.84059,0.60503,0.48919,0.84754,0.0010892,0.0010892,0.0010892 +25,472.178,1.0891,0.61445,1.01644,0.92973,1,0.97934,0.8638,0.62973,0.48138,0.85107,0.0010496,0.0010496,0.0010496 +26,491.604,1.08137,0.60952,1.01945,0.93175,0.99902,0.97946,0.83194,0.63044,0.51215,0.87336,0.00101,0.00101,0.00101 +27,510.376,1.07061,0.59402,1.01434,0.9511,0.94891,0.96358,0.83484,0.60126,0.50725,0.86608,0.0009704,0.0009704,0.0009704 +28,528.926,1.07173,0.58656,1.00666,0.85579,0.97561,0.95489,0.8313,0.61699,0.53136,0.8611,0.0009308,0.0009308,0.0009308 +29,547.212,1.0585,0.59106,1.01413,0.90673,1,0.96285,0.80755,0.70054,0.54551,0.89977,0.0008912,0.0008912,0.0008912 +30,565.478,1.04424,0.57113,1.00423,0.88856,0.97245,0.9692,0.85572,0.61174,0.4804,0.83299,0.0008516,0.0008516,0.0008516 diff --git a/yolo_training/NAO_detector9/results.png b/yolo_training/NAO_detector9/results.png new file mode 100644 index 0000000..8b3b71d Binary files /dev/null and b/yolo_training/NAO_detector9/results.png differ diff --git a/yolo_training/NAO_detector9/train_batch0.jpg b/yolo_training/NAO_detector9/train_batch0.jpg new file mode 100644 index 0000000..884ff45 Binary files /dev/null and b/yolo_training/NAO_detector9/train_batch0.jpg differ diff --git a/yolo_training/NAO_detector9/train_batch1.jpg b/yolo_training/NAO_detector9/train_batch1.jpg new file mode 100644 index 0000000..7836199 Binary files /dev/null and b/yolo_training/NAO_detector9/train_batch1.jpg differ diff --git a/yolo_training/NAO_detector9/train_batch2.jpg b/yolo_training/NAO_detector9/train_batch2.jpg new file mode 100644 index 0000000..da1e7d8 Binary files /dev/null and b/yolo_training/NAO_detector9/train_batch2.jpg differ diff --git a/yolo_training/NAO_detector9/val_batch0_labels.jpg b/yolo_training/NAO_detector9/val_batch0_labels.jpg new file mode 100644 index 0000000..8a69725 Binary files /dev/null and b/yolo_training/NAO_detector9/val_batch0_labels.jpg differ diff --git a/yolo_training/NAO_detector9/val_batch0_pred.jpg b/yolo_training/NAO_detector9/val_batch0_pred.jpg new file mode 100644 index 0000000..88d4951 Binary files /dev/null and b/yolo_training/NAO_detector9/val_batch0_pred.jpg differ diff --git a/yolo_training/NAO_detector9/weights/best.onnx b/yolo_training/NAO_detector9/weights/best.onnx new file mode 100644 index 0000000..1a4eab9 Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best.onnx differ diff --git a/yolo_training/NAO_detector9/weights/best.pt b/yolo_training/NAO_detector9/weights/best.pt new file mode 100644 index 0000000..1f8e740 Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best.pt differ diff --git a/yolo_training/NAO_detector9/weights/best_openvino_model/best.bin b/yolo_training/NAO_detector9/weights/best_openvino_model/best.bin new file mode 100644 index 0000000..d75d80a Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best_openvino_model/best.bin differ diff --git a/yolo_training/NAO_detector9/weights/best_openvino_model/best.xml b/yolo_training/NAO_detector9/weights/best_openvino_model/best.xml new file mode 100644 index 0000000..35f375d --- /dev/null +++ b/yolo_training/NAO_detector9/weights/best_openvino_model/best.xml @@ -0,0 +1,7846 @@ + + + + + + + + 1 + 3 + 320 + 320 + + + + + + + + 1 + 2 + 2100 + + + + + + + + 16 + 3 + 3 + 3 + + + + + + + + 1 + 3 + 320 + 320 + + + 16 + 3 + 3 + 3 + + + + + 1 + 16 + 160 + 160 + + + + + + + + 1 + 16 + 1 + 1 + + + + + + + + 1 + 16 + 160 + 160 + + + 1 + 16 + 1 + 1 + + + + + 1 + 16 + 160 + 160 + + + + + + + 1 + 16 + 160 + 160 + + + + + 1 + 16 + 160 + 160 + + + + + + + + 32 + 16 + 3 + 3 + + + + + + + + 1 + 16 + 160 + 160 + + + 32 + 16 + 3 + 3 + + + + + 1 + 32 + 80 + 80 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 80 + 80 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 80 + 80 + + + + + + + 1 + 32 + 80 + 80 + + + + + 1 + 32 + 80 + 80 + + + + + + + + 32 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 80 + 80 + + + 32 + 32 + 1 + 1 + + + + + 1 + 32 + 80 + 80 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 80 + 80 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 80 + 80 + + + + + + + 1 + 32 + 80 + 80 + + + + + 1 + 32 + 80 + 80 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 32 + 80 + 80 + + + + 2 + + + + + 1 + 16 + 80 + 80 + + + 1 + 16 + 80 + 80 + + + + + + + + 16 + 16 + 3 + 3 + + + + + + + + 1 + 16 + 80 + 80 + + + 16 + 16 + 3 + 3 + + + + + 1 + 16 + 80 + 80 + + + + + + + + 1 + 16 + 1 + 1 + + + + + + + + 1 + 16 + 80 + 80 + + + 1 + 16 + 1 + 1 + + + + + 1 + 16 + 80 + 80 + + + + + + + 1 + 16 + 80 + 80 + + + + + 1 + 16 + 80 + 80 + + + + + + + + 16 + 16 + 3 + 3 + + + + + + + + 1 + 16 + 80 + 80 + + + 16 + 16 + 3 + 3 + + + + + 1 + 16 + 80 + 80 + + + + + + + + 1 + 16 + 1 + 1 + + + + + + + + 1 + 16 + 80 + 80 + + + 1 + 16 + 1 + 1 + + + + + 1 + 16 + 80 + 80 + + + + + + + 1 + 16 + 80 + 80 + + + + + 1 + 16 + 80 + 80 + + + + + + + + 1 + 16 + 80 + 80 + + + 1 + 16 + 80 + 80 + + + + + 1 + 16 + 80 + 80 + + + + + + + + 1 + 16 + 80 + 80 + + + 1 + 16 + 80 + 80 + + + 1 + 16 + 80 + 80 + + + + + 1 + 48 + 80 + 80 + + + + + + + + 32 + 48 + 1 + 1 + + + + + + + + 1 + 48 + 80 + 80 + + + 32 + 48 + 1 + 1 + + + + + 1 + 32 + 80 + 80 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 80 + 80 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 80 + 80 + + + + + + + 1 + 32 + 80 + 80 + + + + + 1 + 32 + 80 + 80 + + + + + + + + 64 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 80 + 80 + + + 64 + 32 + 3 + 3 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 64 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 64 + 40 + 40 + + + + 2 + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + + + + + + 32 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 40 + 40 + + + 32 + 32 + 3 + 3 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 40 + 40 + + + + + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 32 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 40 + 40 + + + 32 + 32 + 3 + 3 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 40 + 40 + + + + + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 32 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 40 + 40 + + + 32 + 32 + 3 + 3 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 40 + 40 + + + + + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 32 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 40 + 40 + + + 32 + 32 + 3 + 3 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 40 + 40 + + + + + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + + + 1 + 128 + 40 + 40 + + + + + + + + 64 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 40 + 40 + + + 64 + 128 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 128 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 40 + 40 + + + 128 + 64 + 3 + 3 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 128 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 128 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 128 + 20 + 20 + + + + 2 + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + 1 + 256 + 20 + 20 + + + + + + + + 128 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 20 + 20 + + + 128 + 256 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 256 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 20 + 20 + + + 256 + 128 + 3 + 3 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 1 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 1 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + 1 + 256 + 10 + 10 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 256 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 256 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 1 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 1 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + 1 + 256 + 10 + 10 + + + + + 1 + 256 + 10 + 10 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 256 + 10 + 10 + + + + 2 + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + + + + 128 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 10 + 10 + + + 128 + 128 + 3 + 3 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 128 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 10 + 10 + + + 128 + 128 + 3 + 3 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + 1 + 384 + 10 + 10 + + + + + + + + 256 + 384 + 1 + 1 + + + + + + + + 1 + 384 + 10 + 10 + + + 256 + 384 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 1 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 1 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + 1 + 256 + 10 + 10 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 128 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 128 + 256 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + 1 + 512 + 10 + 10 + + + + + + + + 256 + 512 + 1 + 1 + + + + + + + + 1 + 512 + 10 + 10 + + + 256 + 512 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 1 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 1 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + 1 + 256 + 10 + 10 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 2 + + + + + + + + 2 + + + + + + + + 1 + 256 + 10 + 10 + + + 2 + + + 2 + + + + + 1 + 256 + 20 + 20 + + + + + + + + 1 + 256 + 20 + 20 + + + 1 + 128 + 20 + 20 + + + + + 1 + 384 + 20 + 20 + + + + + + + + 128 + 384 + 1 + 1 + + + + + + + + 1 + 384 + 20 + 20 + + + 128 + 384 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 128 + 20 + 20 + + + + 2 + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + 1 + 192 + 20 + 20 + + + + + + + + 128 + 192 + 1 + 1 + + + + + + + + 1 + 192 + 20 + 20 + + + 128 + 192 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 2 + + + + + + + + 2 + + + + + + + + 1 + 128 + 20 + 20 + + + 2 + + + 2 + + + + + 1 + 128 + 40 + 40 + + + + + + + + 1 + 128 + 40 + 40 + + + 1 + 64 + 40 + 40 + + + + + 1 + 192 + 40 + 40 + + + + + + + + 64 + 192 + 1 + 1 + + + + + + + + 1 + 192 + 40 + 40 + + + 64 + 192 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 64 + 40 + 40 + + + + 2 + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + + + + + + 32 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 40 + 40 + + + 32 + 32 + 3 + 3 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 40 + 40 + + + + + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 32 + 32 + 3 + 3 + + + + + + + + 1 + 32 + 40 + 40 + + + 32 + 32 + 3 + 3 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 1 + 1 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 1 + 1 + + + + + 1 + 32 + 40 + 40 + + + + + + + 1 + 32 + 40 + 40 + + + + + 1 + 32 + 40 + 40 + + + + + + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + 1 + 32 + 40 + 40 + + + + + 1 + 96 + 40 + 40 + + + + + + + + 64 + 96 + 1 + 1 + + + + + + + + 1 + 96 + 40 + 40 + + + 64 + 96 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 64 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 40 + 40 + + + + + + + 1 + 64 + 40 + 40 + + + + + 1 + 64 + 40 + 40 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 64 + 1 + 1 + + + + + 1 + 1 + 40 + 40 + + + + + + + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 1 + 40 + 40 + + + 1 + 1 + 1 + 1 + + + + + 1 + 1 + 40 + 40 + + + + + + + + 1 + 64 + 40 + 40 + + + 1 + 1 + 40 + 40 + + + + + 1 + 65 + 40 + 40 + + + + + + + + 3 + + + + + + + + 1 + 65 + 40 + 40 + + + 3 + + + + + 1 + 65 + 1600 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 40 + 40 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 128 + 20 + 20 + + + + + 1 + 192 + 20 + 20 + + + + + + + + 128 + 192 + 1 + 1 + + + + + + + + 1 + 192 + 20 + 20 + + + 128 + 192 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 128 + 20 + 20 + + + + 2 + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 20 + 20 + + + + + 1 + 192 + 20 + 20 + + + + + + + + 128 + 192 + 1 + 1 + + + + + + + + 1 + 192 + 20 + 20 + + + 128 + 192 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 20 + 20 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 20 + 20 + + + + + + + 1 + 128 + 20 + 20 + + + + + 1 + 128 + 20 + 20 + + + + + + + + 64 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 20 + 20 + + + 64 + 128 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 20 + 20 + + + 64 + 128 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 20 + 20 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 20 + 20 + + + + + + + 1 + 64 + 20 + 20 + + + + + 1 + 64 + 20 + 20 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 64 + 1 + 1 + + + + + 1 + 1 + 20 + 20 + + + + + + + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 1 + 20 + 20 + + + 1 + 1 + 1 + 1 + + + + + 1 + 1 + 20 + 20 + + + + + + + + 1 + 64 + 20 + 20 + + + 1 + 1 + 20 + 20 + + + + + 1 + 65 + 20 + 20 + + + + + + + + 3 + + + + + + + + 1 + 65 + 20 + 20 + + + 3 + + + + + 1 + 65 + 400 + + + + + + + + 128 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 20 + 20 + + + 128 + 128 + 3 + 3 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 256 + 10 + 10 + + + + + 1 + 384 + 10 + 10 + + + + + + + + 256 + 384 + 1 + 1 + + + + + + + + 1 + 384 + 10 + 10 + + + 256 + 384 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 1 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 1 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + 1 + 256 + 10 + 10 + + + + + 1 + 256 + 10 + 10 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 256 + 10 + 10 + + + + 2 + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + + + + 128 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 10 + 10 + + + 128 + 128 + 3 + 3 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 128 + 128 + 3 + 3 + + + + + + + + 1 + 128 + 10 + 10 + + + 128 + 128 + 3 + 3 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 1 + 1 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 1 + 1 + + + + + 1 + 128 + 10 + 10 + + + + + + + 1 + 128 + 10 + 10 + + + + + 1 + 128 + 10 + 10 + + + + + + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + 1 + 128 + 10 + 10 + + + + + 1 + 384 + 10 + 10 + + + + + + + + 256 + 384 + 1 + 1 + + + + + + + + 1 + 384 + 10 + 10 + + + 256 + 384 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 1 + 256 + 1 + 1 + + + + + + + + 1 + 256 + 10 + 10 + + + 1 + 256 + 1 + 1 + + + + + 1 + 256 + 10 + 10 + + + + + + + 1 + 256 + 10 + 10 + + + + + 1 + 256 + 10 + 10 + + + + + + + + 64 + 256 + 3 + 3 + + + + + + + + 1 + 256 + 10 + 10 + + + 64 + 256 + 3 + 3 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 10 + 10 + + + + + + + 1 + 64 + 10 + 10 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 10 + 10 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 10 + 10 + + + + + + + 1 + 64 + 10 + 10 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 64 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 64 + 64 + 1 + 1 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 64 + 256 + 3 + 3 + + + + + + + + 1 + 256 + 10 + 10 + + + 64 + 256 + 3 + 3 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 10 + 10 + + + + + + + 1 + 64 + 10 + 10 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 64 + 64 + 3 + 3 + + + + + + + + 1 + 64 + 10 + 10 + + + 64 + 64 + 3 + 3 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 64 + 1 + 1 + + + + + 1 + 64 + 10 + 10 + + + + + + + 1 + 64 + 10 + 10 + + + + + 1 + 64 + 10 + 10 + + + + + + + + 1 + 64 + 1 + 1 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 64 + 1 + 1 + + + + + 1 + 1 + 10 + 10 + + + + + + + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 1 + 10 + 10 + + + 1 + 1 + 1 + 1 + + + + + 1 + 1 + 10 + 10 + + + + + + + + 1 + 64 + 10 + 10 + + + 1 + 1 + 10 + 10 + + + + + 1 + 65 + 10 + 10 + + + + + + + + 3 + + + + + + + + 1 + 65 + 10 + 10 + + + 3 + + + + + 1 + 65 + 100 + + + + + + + + 1 + 65 + 1600 + + + 1 + 65 + 400 + + + 1 + 65 + 100 + + + + + 1 + 65 + 2100 + + + + + + + + + + + + + + 2 + + + + + + + 1 + 65 + 2100 + + + + 2 + + + + + 1 + 64 + 2100 + + + 1 + 1 + 2100 + + + + + + + + 4 + + + + + + + + 1 + 64 + 2100 + + + 4 + + + + + 1 + 4 + 16 + 2100 + + + + + + + + 4 + + + + + + + 1 + 4 + 16 + 2100 + + + 4 + + + + + 1 + 16 + 4 + 2100 + + + + + + + + 1 + 16 + 4 + 2100 + + + + + 1 + 16 + 4 + 2100 + + + + + + + + 1 + 16 + 1 + 1 + + + + + + + + 1 + 16 + 4 + 2100 + + + 1 + 16 + 1 + 1 + + + + + 1 + 1 + 4 + 2100 + + + + + + + + 3 + + + + + + + + 1 + 1 + 4 + 2100 + + + 3 + + + + + 1 + 4 + 2100 + + + + + + + + 1 + 4 + 2100 + + + + + 3 + + + + + + + + 1 + + + + + + + + 3 + + + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + + + + 1 + + + + + + + + 1 + + + + + 1 + + + + + + + + + 1 + + + + + 1 + + + + + + + + 1 + + + + + + + + 1 + + + 1 + + + + + 2 + + + + + + + 1 + 4 + 2100 + + + + 2 + + + + + 1 + 2 + 2100 + + + 1 + 2 + 2100 + + + + + + + + 1 + 2 + 2100 + + + 1 + 2 + 2100 + + + + + 1 + 2 + 2100 + + + + + + + + 1 + 2 + 2100 + + + 1 + 2 + 2100 + + + + + 1 + 2 + 2100 + + + + + + + + 1 + 2 + 2100 + + + 1 + 2 + 2100 + + + + + 1 + 2 + 2100 + + + + + + + + 1 + 1 + 1 + + + + + + + + 1 + 2 + 2100 + + + 1 + 1 + 1 + + + + + 1 + 2 + 2100 + + + + + + + + 1 + 2 + 2100 + + + 1 + 2 + 2100 + + + + + 1 + 2 + 2100 + + + + + + + + 1 + 2 + 2100 + + + 1 + 2 + 2100 + + + + + 1 + 4 + 2100 + + + + + + + + 1 + 1 + 2100 + + + + + + + + 1 + 4 + 2100 + + + 1 + 1 + 2100 + + + + + 1 + 4 + 2100 + + + + + + + 1 + 1 + 2100 + + + + + 1 + 1 + 2100 + + + + + + + + 1 + 4 + 2100 + + + 1 + 1 + 2100 + + + + + 1 + 5 + 2100 + + + + + + + 1 + 5 + 2100 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/yolo_training/NAO_detector9/weights/best_openvino_model/metadata.yaml b/yolo_training/NAO_detector9/weights/best_openvino_model/metadata.yaml new file mode 100644 index 0000000..1fcd860 --- /dev/null +++ b/yolo_training/NAO_detector9/weights/best_openvino_model/metadata.yaml @@ -0,0 +1,22 @@ +description: Ultralytics best model trained on yolo_dataset/dataset.yaml +author: Ultralytics +date: '2025-07-31T01:20:11.832379' +version: 8.3.154 +license: AGPL-3.0 License (https://ultralytics.com/license) +docs: https://docs.ultralytics.com +stride: 32 +task: detect +batch: 1 +imgsz: +- 320 +- 320 +names: + 0: NAO-Roboter +args: + batch: 1 + fraction: 1.0 + half: false + int8: false + dynamic: false + nms: false +channels: 3 diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/best_float16.tflite b/yolo_training/NAO_detector9/weights/best_saved_model/best_float16.tflite new file mode 100644 index 0000000..36c1dfd Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best_saved_model/best_float16.tflite differ diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/best_float32.tflite b/yolo_training/NAO_detector9/weights/best_saved_model/best_float32.tflite new file mode 100644 index 0000000..8604efb Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best_saved_model/best_float32.tflite differ diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/fingerprint.pb b/yolo_training/NAO_detector9/weights/best_saved_model/fingerprint.pb new file mode 100644 index 0000000..9511033 --- /dev/null +++ b/yolo_training/NAO_detector9/weights/best_saved_model/fingerprint.pb @@ -0,0 +1 @@ +ۜs󮿜ɔ٠±Q ׵ՙ(2:5233161973706285970 \ No newline at end of file diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/metadata.yaml b/yolo_training/NAO_detector9/weights/best_saved_model/metadata.yaml new file mode 100644 index 0000000..88dae3b --- /dev/null +++ b/yolo_training/NAO_detector9/weights/best_saved_model/metadata.yaml @@ -0,0 +1,21 @@ +description: Ultralytics best model trained on yolo_dataset/dataset.yaml +author: Ultralytics +date: '2025-07-31T01:21:01.673821' +version: 8.3.154 +license: AGPL-3.0 License (https://ultralytics.com/license) +docs: https://docs.ultralytics.com +stride: 32 +task: detect +batch: 1 +imgsz: +- 320 +- 320 +names: + 0: NAO-Roboter +args: + batch: 1 + fraction: 1.0 + half: false + int8: false + nms: false +channels: 3 diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/saved_model.pb b/yolo_training/NAO_detector9/weights/best_saved_model/saved_model.pb new file mode 100644 index 0000000..4c93274 Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best_saved_model/saved_model.pb differ diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/variables/variables.data-00000-of-00001 b/yolo_training/NAO_detector9/weights/best_saved_model/variables/variables.data-00000-of-00001 new file mode 100644 index 0000000..2b98532 Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best_saved_model/variables/variables.data-00000-of-00001 differ diff --git a/yolo_training/NAO_detector9/weights/best_saved_model/variables/variables.index b/yolo_training/NAO_detector9/weights/best_saved_model/variables/variables.index new file mode 100644 index 0000000..f16cf52 Binary files /dev/null and b/yolo_training/NAO_detector9/weights/best_saved_model/variables/variables.index differ diff --git a/yolo_training/NAO_detector9/weights/last.pt b/yolo_training/NAO_detector9/weights/last.pt new file mode 100644 index 0000000..cad21fd Binary files /dev/null and b/yolo_training/NAO_detector9/weights/last.pt differ