├── .gitignore ├── .vscode ├── launch.json └── settings.json ├── Data ├── Train_NG │ ├── kos01_Part5_label.bmp │ ├── kos06_Part7_label.bmp │ ├── kos09_Part6_label.bmp │ ├── kos11_Part4_label.bmp │ ├── kos12_Part5_label.bmp │ ├── kos13_Part3_label.bmp │ ├── kos14_Part7_label.bmp │ ├── kos15_Part3_label.bmp │ ├── kos16_Part5_label.bmp │ ├── kos17_Part5_label.bmp │ ├── kos18_Part3_label.bmp │ ├── kos19_Part5_label.bmp │ ├── kos20_Part4_label.bmp │ ├── kos25_Part4_label.bmp │ ├── kos26_Part5_label.bmp │ ├── kos27_Part0_label.bmp │ ├── kos28_Part3_label.bmp │ ├── kos29_Part0_label.bmp │ ├── kos30_Part0_label.bmp │ ├── kos31_Part1_label.bmp │ ├── kos32_Part2_label.bmp │ ├── kos33_Part6_label.bmp │ ├── kos34_Part0_label.bmp │ ├── kos35_Part5_label.bmp │ ├── kos36_Part3_label.bmp │ ├── kos38_Part0_label.bmp │ ├── kos39_Part7_label.bmp │ ├── kos40_Part5_label.bmp │ ├── kos41_Part7_label.bmp │ ├── kos42_Part3_label.bmp │ ├── kos43_Part1_label.bmp │ ├── kos44_Part6_label.bmp │ ├── kos45_Part3_label.bmp │ ├── kos46_Part7_label.bmp │ └── kos47_Part2_label.bmp └── Train_OK │ ├── kos01_Part0_label.bmp │ ├── kos01_Part1_label.bmp │ ├── kos01_Part2_label.bmp │ ├── kos01_Part3_label.bmp │ ├── kos01_Part4_label.bmp │ ├── kos01_Part6_label.bmp │ ├── kos01_Part7_label.bmp │ ├── kos02_Part0_label.bmp │ ├── kos02_Part1_label.bmp │ ├── kos02_Part2_label.bmp │ ├── kos02_Part3_label.bmp │ ├── kos02_Part4_label.bmp │ ├── kos02_Part5_label.bmp │ ├── kos03_Part5_label.bmp │ ├── kos06_Part1_label.bmp │ ├── kos06_Part3_label.bmp │ ├── kos06_Part5_label.bmp │ ├── kos06_Part6_label.bmp │ ├── kos07_Part0_label.bmp │ ├── kos07_Part2_label.bmp │ ├── kos07_Part3_label.bmp │ ├── kos07_Part4_label.bmp │ ├── kos07_Part7_label.bmp │ ├── kos08_Part3_label.bmp │ ├── kos08_Part4_label.bmp │ ├── kos08_Part7_label.bmp │ ├── kos09_Part0_label.bmp │ ├── kos09_Part5_label.bmp │ ├── kos10_Part1_label.bmp │ ├── kos10_Part2_label.bmp │ ├── kos10_Part5_label.bmp │ ├── kos10_Part6_label.bmp │ ├── kos11_Part0_label.bmp │ ├── kos11_Part3_label.bmp │ ├── kos11_Part5_label.bmp │ ├── kos11_Part7_label.bmp │ ├── kos12_Part0_label.bmp │ ├── kos12_Part2_label.bmp │ ├── kos12_Part3_label.bmp │ ├── kos12_Part4_label.bmp │ ├── kos12_Part6_label.bmp │ ├── kos12_Part7_label.bmp │ ├── kos13_Part0_label.bmp │ ├── kos13_Part1_label.bmp │ ├── kos13_Part2_label.bmp │ ├── kos13_Part4_label.bmp │ ├── kos13_Part5_label.bmp │ ├── kos13_Part6_label.bmp │ ├── kos13_Part7_label.bmp │ ├── kos14_Part0_label.bmp │ ├── kos14_Part1_label.bmp │ ├── kos14_Part2_label.bmp │ ├── kos14_Part3_label.bmp │ ├── kos14_Part4_label.bmp │ ├── kos14_Part5_label.bmp │ ├── kos14_Part6_label.bmp │ ├── kos15_Part0_label.bmp │ ├── kos15_Part1_label.bmp │ ├── kos15_Part2_label.bmp │ ├── kos15_Part4_label.bmp │ ├── kos15_Part5_label.bmp │ ├── kos15_Part6_label.bmp │ ├── kos15_Part7_label.bmp │ ├── kos16_Part0_label.bmp │ ├── kos16_Part1_label.bmp │ ├── kos16_Part2_label.bmp │ ├── kos16_Part3_label.bmp │ ├── kos16_Part4_label.bmp │ ├── kos16_Part6_label.bmp │ ├── kos16_Part7_label.bmp │ ├── kos17_Part0_label.bmp │ ├── kos17_Part1_label.bmp │ ├── kos17_Part2_label.bmp │ ├── kos17_Part3_label.bmp │ ├── kos17_Part4_label.bmp │ ├── kos17_Part6_label.bmp │ ├── kos17_Part7_label.bmp │ ├── kos18_Part0_label.bmp │ ├── kos18_Part1_label.bmp │ ├── kos18_Part2_label.bmp │ ├── kos18_Part4_label.bmp │ ├── kos18_Part5_label.bmp │ ├── kos18_Part6_label.bmp │ ├── kos18_Part7_label.bmp │ ├── kos19_Part0_label.bmp │ ├── kos19_Part1_label.bmp │ ├── kos19_Part2_label.bmp │ ├── kos19_Part3_label.bmp │ ├── kos19_Part4_label.bmp │ ├── kos19_Part6_label.bmp │ ├── kos19_Part7_label.bmp │ ├── kos20_Part0_label.bmp │ ├── kos20_Part1_label.bmp │ ├── kos20_Part2_label.bmp │ ├── kos20_Part3_label.bmp │ ├── kos20_Part5_label.bmp │ ├── kos23_Part5_label.bmp │ ├── kos24_Part5_label.bmp │ ├── kos24_Part6_label.bmp │ ├── kos25_Part2_label.bmp │ ├── kos25_Part3_label.bmp │ ├── kos25_Part5_label.bmp │ ├── kos25_Part6_label.bmp │ ├── kos26_Part0_label.bmp │ ├── kos26_Part1_label.bmp │ ├── kos26_Part2_label.bmp │ ├── kos26_Part3_label.bmp │ ├── kos26_Part4_label.bmp │ ├── kos26_Part7_label.bmp │ ├── kos27_Part2_label.bmp │ ├── kos27_Part3_label.bmp │ ├── kos27_Part4_label.bmp │ ├── kos27_Part5_label.bmp │ ├── kos27_Part6_label.bmp │ ├── kos27_Part7_label.bmp │ ├── kos28_Part0_label.bmp │ ├── kos28_Part1_label.bmp │ ├── kos28_Part2_label.bmp │ ├── kos28_Part4_label.bmp │ ├── kos28_Part5_label.bmp │ ├── kos28_Part6_label.bmp │ ├── kos28_Part7_label.bmp │ ├── kos29_Part2_label.bmp │ ├── kos29_Part3_label.bmp │ ├── kos29_Part4_label.bmp │ ├── kos29_Part5_label.bmp │ ├── kos29_Part7_label.bmp │ ├── kos30_Part1_label.bmp │ ├── kos30_Part2_label.bmp │ ├── kos30_Part3_label.bmp │ ├── kos30_Part4_label.bmp │ ├── kos30_Part5_label.bmp │ ├── kos30_Part6_label.bmp │ ├── kos30_Part7_label.bmp │ ├── kos31_Part0_label.bmp │ ├── kos31_Part2_label.bmp │ ├── kos31_Part3_label.bmp │ ├── kos31_Part4_label.bmp │ ├── kos31_Part5_label.bmp │ ├── kos31_Part6_label.bmp │ ├── kos31_Part7_label.bmp │ ├── kos32_Part0_label.bmp │ ├── kos32_Part1_label.bmp │ ├── kos32_Part3_label.bmp │ ├── kos32_Part4_label.bmp │ ├── kos32_Part5_label.bmp │ ├── kos32_Part6_label.bmp │ ├── kos32_Part7_label.bmp │ ├── kos33_Part0_label.bmp │ ├── kos33_Part1_label.bmp │ ├── kos33_Part2_label.bmp │ ├── kos33_Part3_label.bmp │ ├── kos33_Part4_label.bmp │ ├── kos33_Part5_label.bmp │ ├── kos33_Part7_label.bmp │ ├── kos34_Part1_label.bmp │ ├── kos34_Part2_label.bmp │ ├── kos34_Part3_label.bmp │ ├── kos34_Part4_label.bmp │ ├── kos34_Part5_label.bmp │ ├── kos34_Part6_label.bmp │ ├── kos34_Part7_label.bmp │ ├── kos35_Part0_label.bmp │ ├── kos35_Part1_label.bmp │ ├── kos35_Part2_label.bmp │ ├── kos35_Part3_label.bmp │ ├── kos35_Part4_label.bmp │ ├── kos35_Part6_label.bmp │ ├── kos37_Part7_label.bmp │ ├── kos39_Part1_label.bmp │ ├── kos40_Part3_label.bmp │ ├── kos40_Part4_label.bmp │ ├── kos40_Part7_label.bmp │ ├── kos41_Part0_label.bmp │ ├── kos41_Part1_label.bmp │ ├── kos41_Part2_label.bmp │ ├── kos41_Part3_label.bmp │ ├── kos41_Part4_label.bmp │ ├── kos41_Part5_label.bmp │ ├── kos41_Part6_label.bmp │ ├── kos42_Part0_label.bmp │ ├── kos42_Part1_label.bmp │ ├── kos42_Part2_label.bmp │ ├── kos42_Part4_label.bmp │ ├── kos42_Part5_label.bmp │ ├── kos42_Part6_label.bmp │ ├── kos42_Part7_label.bmp │ ├── kos43_Part0_label.bmp │ ├── kos43_Part2_label.bmp │ ├── kos43_Part3_label.bmp │ ├── kos43_Part4_label.bmp │ ├── kos43_Part5_label.bmp │ ├── kos43_Part6_label.bmp │ ├── kos43_Part7_label.bmp │ ├── kos44_Part0_label.bmp │ ├── kos44_Part1_label.bmp │ ├── kos44_Part2_label.bmp │ ├── kos44_Part3_label.bmp │ ├── kos44_Part4_label.bmp │ ├── kos44_Part5_label.bmp │ ├── kos44_Part7_label.bmp │ ├── kos45_Part0_label.bmp │ ├── kos45_Part1_label.bmp │ ├── kos45_Part2_label.bmp │ ├── kos45_Part4_label.bmp │ ├── kos45_Part5_label.bmp │ ├── kos45_Part6_label.bmp │ ├── kos45_Part7_label.bmp │ ├── kos46_Part0_label.bmp │ ├── kos46_Part1_label.bmp │ ├── kos46_Part2_label.bmp │ ├── kos46_Part3_label.bmp │ ├── kos46_Part4_label.bmp │ ├── kos46_Part5_label.bmp │ ├── kos46_Part6_label.bmp │ ├── kos47_Part0_label.bmp │ ├── kos47_Part1_label.bmp │ ├── kos47_Part3_label.bmp │ ├── kos47_Part4_label.bmp │ ├── kos47_Part5_label.bmp │ ├── kos48_Part4_label.bmp │ ├── kos50_Part1_label.bmp │ ├── kos50_Part6_label.bmp │ └── kos50_Part7_label.bmp ├── README.md ├── __pycache__ ├── dataset.cpython-36.pyc ├── models.cpython-36.pyc └── models.cpython-37.pyc ├── data_rename.py ├── dataset.py ├── models.py ├── test.py ├── train_decision.py └── train_segment.py /.gitignore: -------------------------------------------------------------------------------- 1 | # 2 | testResultDec/ 3 | testResultSeg/ 4 | saved_models/ 5 | *.jpg 6 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | "version": "0.2.0", 6 | "configurations": [ 7 | { 8 | "name": "Python: Current File (Integrated Terminal)", 9 | "type": "python", 10 | "request": "launch", 11 | "program": "${file}", 12 | "console": "integratedTerminal" 13 | }, 14 | { 15 | "name": "Python: Remote Attach", 16 | "type": "python", 17 | "request": "attach", 18 | "port": 5678, 19 | "host": "localhost", 20 | "pathMappings": [ 21 | { 22 | "localRoot": "${workspaceFolder}", 23 | "remoteRoot": "." 24 | } 25 | ] 26 | }, 27 | { 28 | "name": "Python: Module", 29 | "type": "python", 30 | "request": "launch", 31 | "module": "enter-your-module-name-here", 32 | "console": "integratedTerminal" 33 | }, 34 | { 35 | "name": "Python: Django", 36 | "type": "python", 37 | "request": "launch", 38 | "program": "${workspaceFolder}/manage.py", 39 | "console": "integratedTerminal", 40 | "args": [ 41 | "runserver", 42 | "--noreload", 43 | "--nothreading" 44 | ], 45 | "django": true 46 | }, 47 | { 48 | "name": "Python: Flask", 49 | "type": "python", 50 | "request": "launch", 51 | "module": "flask", 52 | "env": { 53 | "FLASK_APP": "app.py" 54 | }, 55 | "args": [ 56 | "run", 57 | "--no-debugger", 58 | "--no-reload" 59 | ], 60 | "jinja": true 61 | }, 62 | { 63 | "name": "Python: Current File (External Terminal)", 64 | "type": "python", 65 | "request": "launch", 66 | "program": "${file}", 67 | "console": "externalTerminal" 68 | } 69 | ] 70 | } -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "python.pythonPath": "/home/sean/.conda/envs/pytorch_1.1/bin/python" 3 | } -------------------------------------------------------------------------------- /Data/Train_NG/kos01_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos01_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos06_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos06_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos09_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos09_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos11_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos11_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos12_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos12_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos13_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos13_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos14_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos14_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos15_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos15_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos16_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos16_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos17_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos17_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos18_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos18_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos19_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos19_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos20_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos20_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos25_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos25_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos26_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos26_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos27_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos27_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos28_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos28_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos29_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos29_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos30_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos30_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos31_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos31_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos32_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos32_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos33_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos33_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos34_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos34_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos35_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos35_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos36_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos36_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos38_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos38_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos39_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos39_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos40_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos40_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos41_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos41_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos42_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos42_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos43_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos43_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos44_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos44_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos45_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos45_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos46_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos46_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_NG/kos47_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_NG/kos47_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos01_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos01_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos02_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos02_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos02_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos02_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos02_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos02_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos02_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos02_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos02_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos02_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos02_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos02_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos03_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos03_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos06_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos06_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos06_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos06_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos06_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos06_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos06_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos06_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos07_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos07_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos07_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos07_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos07_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos07_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos07_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos07_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos07_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos07_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos08_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos08_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos08_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos08_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos08_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos08_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos09_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos09_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos09_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos09_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos10_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos10_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos10_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos10_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos10_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos10_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos10_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos10_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos11_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos11_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos11_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos11_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos11_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos11_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos11_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos11_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos12_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos12_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos12_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos12_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos12_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos12_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos12_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos12_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos12_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos12_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos12_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos12_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos13_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos13_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos14_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos14_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos15_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos15_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos16_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos16_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos17_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos17_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos18_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos18_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos19_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos19_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos20_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos20_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos20_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos20_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos20_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos20_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos20_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos20_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos20_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos20_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos23_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos23_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos24_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos24_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos24_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos24_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos25_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos25_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos25_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos25_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos25_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos25_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos25_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos25_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos26_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos26_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos26_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos26_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos26_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos26_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos26_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos26_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos26_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos26_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos26_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos26_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos27_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos27_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos27_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos27_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos27_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos27_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos27_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos27_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos27_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos27_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos27_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos27_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos28_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos28_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos29_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos29_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos29_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos29_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos29_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos29_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos29_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos29_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos29_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos29_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos30_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos30_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos31_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos31_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos32_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos32_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos33_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos33_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos34_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos34_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos35_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos35_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos35_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos35_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos35_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos35_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos35_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos35_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos35_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos35_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos35_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos35_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos37_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos37_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos39_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos39_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos40_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos40_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos40_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos40_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos40_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos40_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos41_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos41_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos42_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos42_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos43_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos43_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos44_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos44_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos45_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos45_Part7_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part2_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part2_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos46_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos46_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos47_Part0_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos47_Part0_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos47_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos47_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos47_Part3_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos47_Part3_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos47_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos47_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos47_Part5_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos47_Part5_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos48_Part4_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos48_Part4_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos50_Part1_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos50_Part1_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos50_Part6_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos50_Part6_label.bmp -------------------------------------------------------------------------------- /Data/Train_OK/kos50_Part7_label.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/Data/Train_OK/kos50_Part7_label.bmp -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | Pytorch Implement of the paper "Segmentation Based Deep-Learning Approach for Surface DefectDetection" 3 | https://arxiv.org/abs/1903.08536 4 | 5 | Modified little things without changing the accuracy 6 | 7 | 8 | step1: train segment net 9 | 10 | python train_segment.py 11 | 12 | step2: train decision net 13 | 14 | python train_decision.py 15 | 16 | step3: test 17 | 18 | python test.py 19 | 20 | -------------------------------------------------------------------------------- /__pycache__/dataset.cpython-36.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/__pycache__/dataset.cpython-36.pyc -------------------------------------------------------------------------------- /__pycache__/models.cpython-36.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/__pycache__/models.cpython-36.pyc -------------------------------------------------------------------------------- /__pycache__/models.cpython-37.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seanXYZ/SegDecNet/b21b2d775649def8da426195418a7ea3685ab15b/__pycache__/models.cpython-37.pyc -------------------------------------------------------------------------------- /data_rename.py: -------------------------------------------------------------------------------- 1 | import glob 2 | import os 3 | from os.path import exists, isdir, split 4 | 5 | dataRoot = "/home/sean/Data/KolektorSDD_sean/temp" 6 | 7 | 8 | for x in glob.glob(dataRoot + "/*"): 9 | if isdir(x): 10 | for y in glob.glob(x + "/*"): 11 | strs = y.split('/') 12 | newName = os.path.join(x, strs[-2] + '_' + strs[-1] ) 13 | os.rename(y, newName) 14 | -------------------------------------------------------------------------------- /dataset.py: -------------------------------------------------------------------------------- 1 | import glob 2 | import os 3 | import numpy as np 4 | import cv2 5 | 6 | from torch.utils.data import Dataset 7 | from PIL import Image 8 | import torchvision.transforms as transforms 9 | 10 | import torchvision.transforms.functional as VF 11 | 12 | class KolektorDataset(Dataset): 13 | def __init__(self, dataRoot, transforms_= None, transforms_mask = None, subFold="Train_NG", isTrain=True): 14 | 15 | self.isTrain = isTrain 16 | if transforms_mask == None: 17 | self.maskTransform = transforms.Compose([transforms.ToTensor()]) 18 | else: 19 | self.maskTransform = transforms_mask 20 | 21 | if transforms_== None: 22 | self.transform = self.maskTransform 23 | else: 24 | self.transform = transforms_ 25 | 26 | self.imgFiles = sorted(glob.glob(os.path.join(dataRoot, subFold) + "/*.jpg")) 27 | 28 | if isTrain: 29 | self.labelFiles = sorted(glob.glob(os.path.join(dataRoot, subFold) + "/*.jpg")) 30 | 31 | self.len = len(self.imgFiles) 32 | 33 | def __getitem__(self, index): 34 | 35 | idx = index % self.len 36 | 37 | 38 | 39 | if self.isTrain==True: 40 | 41 | img = Image.open(self.imgFiles[idx]).convert("RGB") 42 | 43 | #mask = Image.open(self.labelFiles[idx]).convert("RGB") 44 | mat = cv2.imread(self.labelFiles[idx], cv2.IMREAD_GRAYSCALE) 45 | kernel = np.ones((5, 5), np.uint8) 46 | matD = cv2.dilate(mat, kernel) 47 | mask = Image.fromarray(matD) # image2 is a PIL image 48 | 49 | if np.random.rand(1) > 0.5: 50 | mask = VF.hflip(mask) 51 | img = VF.hflip(img) 52 | 53 | if np.random.rand(1) > 0.5: 54 | mask = VF.vflip(mask) 55 | img = VF.vflip(img) 56 | 57 | img = self.transform(img) 58 | mask = self.maskTransform(mask) 59 | 60 | return {"img":img, "mask":mask} 61 | else: 62 | img = Image.open(self.imgFiles[idx]).convert("RGB") 63 | img = self.transform(img) 64 | return {"img":img} 65 | 66 | def __len__(self): 67 | return len(self.imgFiles) 68 | -------------------------------------------------------------------------------- /models.py: -------------------------------------------------------------------------------- 1 | import torch.nn as nn 2 | import torch 3 | 4 | def weights_init_normal(m): 5 | classname = m.__class__.__name__ 6 | if classname.find("Conv2d") != -1: 7 | torch.nn.init.normal_(m.weight.data, 0.0, 0.02) 8 | elif classname.find("BatchNorm2d") != -1: 9 | torch.nn.init.normal_(m.weight.data, 1.0, 0.02) 10 | torch.nn.init.constant_(m.bias.data, 0.0) 11 | elif classname.find("Linear") != -1: 12 | torch.nn.init.constant_(m.weight.data, 0.0) 13 | if m.bias is not None: 14 | torch.nn.init.constant_(m.bias.data, 0.0) 15 | 16 | 17 | class SegmentNet(nn.Module): 18 | def __init__(self, in_channels=3, init_weights=True): 19 | super(SegmentNet, self).__init__() 20 | 21 | self.layer1 = nn.Sequential( 22 | nn.Conv2d(in_channels, 32, 5, stride=1, padding=2), 23 | nn.BatchNorm2d(32), 24 | nn.ReLU(inplace=True), 25 | nn.Conv2d(32, 32, 5, stride=1, padding=2), 26 | nn.BatchNorm2d(32), 27 | nn.ReLU(inplace=True), 28 | nn.MaxPool2d(2) 29 | ) 30 | 31 | self.layer2 = nn.Sequential( 32 | nn.Conv2d(32, 64, 5, stride=1, padding=2), 33 | nn.BatchNorm2d(64), 34 | nn.ReLU(inplace=True), 35 | nn.Conv2d(64, 64, 5, stride=1, padding=2), 36 | nn.BatchNorm2d(64), 37 | nn.ReLU(inplace=True), 38 | nn.Conv2d(64, 64, 5, stride=1, padding=2), 39 | nn.BatchNorm2d(64), 40 | nn.ReLU(inplace=True), 41 | nn.MaxPool2d(2) 42 | ) 43 | 44 | self.layer3 = nn.Sequential( 45 | nn.Conv2d(64, 64, 5, stride=1, padding=2), 46 | nn.BatchNorm2d(64), 47 | nn.ReLU(inplace=True), 48 | nn.Conv2d(64, 64, 5, stride=1, padding=2), 49 | nn.BatchNorm2d(64), 50 | nn.ReLU(inplace=True), 51 | nn.Conv2d(64, 64, 5, stride=1, padding=2), 52 | nn.BatchNorm2d(64), 53 | nn.ReLU(inplace=True), 54 | nn.Conv2d(64, 64, 5, stride=1, padding=2), 55 | nn.BatchNorm2d(64), 56 | nn.ReLU(inplace=True), 57 | nn.MaxPool2d(2) 58 | ) 59 | 60 | self.layer4 = nn.Sequential( 61 | nn.Conv2d(64, 1024, 15, stride=1, padding=7), 62 | nn.BatchNorm2d(1024), 63 | nn.ReLU(inplace=True) 64 | ) 65 | 66 | self.layer5 = nn.Sequential( 67 | nn.Conv2d(1024, 1, 1), 68 | nn.ReLU(inplace=True) 69 | ) 70 | 71 | if init_weights == True: 72 | pass 73 | 74 | def forward(self, x): 75 | x1 = self.layer1(x) 76 | x2 = self.layer2(x1) 77 | x3 = self.layer3(x2) 78 | x4 = self.layer4(x3) 79 | x5 = self.layer5(x4) 80 | 81 | return {"f":x4, "seg":x5} 82 | 83 | 84 | class DecisionNet(nn.Module): 85 | 86 | def __init__(self, init_weights=True): 87 | super(DecisionNet, self).__init__() 88 | 89 | self.layer1 = nn.Sequential( 90 | nn.MaxPool2d(2), 91 | nn.Conv2d(1025, 8, 5, stride=1, padding=2), 92 | nn.BatchNorm2d(8), 93 | nn.ReLU(inplace=True), 94 | nn.MaxPool2d(2), 95 | nn.Conv2d(8, 16, 5, stride=1, padding=2), 96 | nn.BatchNorm2d(16), 97 | nn.ReLU(inplace=True), 98 | nn.Conv2d(16, 32, 5, stride=1, padding=2), 99 | nn.BatchNorm2d(32), 100 | nn.ReLU(inplace=True) 101 | ) 102 | 103 | self.fc = nn.Sequential( 104 | nn.Linear(66, 1, bias=False), 105 | nn.Sigmoid() 106 | ) 107 | 108 | if init_weights == True: 109 | pass 110 | 111 | def forward(self, f, s): 112 | xx = torch.cat((f, s), 1) 113 | x1 = self.layer1(xx) 114 | x2 = x1.view(x1.size(0), x1.size(1), -1) 115 | s2 = s.view(s.size(0), s.size(1), -1) 116 | 117 | x_max, x_max_idx = torch.max(x2, dim=2) 118 | x_avg = torch.mean(x2, dim=2) 119 | s_max, s_max_idx = torch.max(s2, dim=2) 120 | s_avg = torch.mean(s2, dim=2) 121 | 122 | y = torch.cat((x_max, x_avg, s_avg, s_max), 1) 123 | y = y.view(y.size(0), -1) 124 | 125 | return self.fc(y) 126 | 127 | 128 | if __name__=='__main__': 129 | 130 | snet = SegmentNet() 131 | dnet = DecisionNet() 132 | img = torch.randn(4, 3, 704, 256) 133 | 134 | snet.eval() 135 | 136 | snet = snet.cuda() 137 | dnet = dnet.cuda() 138 | img = img.cuda() 139 | 140 | ret = snet(img) 141 | f = ret["f"] 142 | s = ret["seg"] 143 | 144 | c = dnet(f, s) 145 | print(c) 146 | pass 147 | 148 | 149 | 150 | -------------------------------------------------------------------------------- /test.py: -------------------------------------------------------------------------------- 1 | from models import SegmentNet, DecisionNet, weights_init_normal 2 | from dataset import KolektorDataset 3 | 4 | import torch.nn as nn 5 | import torch 6 | 7 | from torchvision import datasets 8 | from torchvision.utils import save_image 9 | import torchvision.transforms as transforms 10 | from torch.autograd import Variable 11 | from torch.utils.data import DataLoader 12 | 13 | import os 14 | import sys 15 | import argparse 16 | import time 17 | import PIL.Image as Image 18 | 19 | parser = argparse.ArgumentParser() 20 | 21 | parser.add_argument("--cuda", type=bool, default=True, help="number of gpu") 22 | parser.add_argument("--test_seg_epoch", type=int, default=60, help="test segment epoch") 23 | parser.add_argument("--test_dec_epoch", type=int, default=60, help="test segment epoch") 24 | parser.add_argument("--img_height", type=int, default=704, help="size of image height") 25 | parser.add_argument("--img_width", type=int, default=256, help="size of image width") 26 | 27 | opt = parser.parse_args() 28 | 29 | print(opt) 30 | 31 | dataSetRoot = "/home/sean/Projects/SegDecNet/Data" 32 | 33 | # *********************************************************************** 34 | 35 | # Build nets 36 | segment_net = SegmentNet(init_weights=True) 37 | decision_net = DecisionNet(init_weights=True) 38 | 39 | if opt.cuda: 40 | segment_net = segment_net.cuda() 41 | decision_net = decision_net.cuda() 42 | 43 | if opt.test_seg_epoch != 0: 44 | # Load pretrained models 45 | segment_net.load_state_dict(torch.load("./saved_models/segment_net_%d.pth" % (opt.test_seg_epoch))) 46 | 47 | if opt.test_dec_epoch != 0: 48 | # Load pretrained models 49 | decision_net.load_state_dict(torch.load("./saved_models/decision_net_%d.pth" % (opt.test_dec_epoch))) 50 | 51 | transforms_ = transforms.Compose([ 52 | transforms.Resize((opt.img_height, opt.img_width), Image.BICUBIC), 53 | transforms.ToTensor(), 54 | #transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), 55 | ]) 56 | 57 | 58 | testloader = DataLoader( 59 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= None, subFold="Test", isTrain=False), 60 | batch_size=1, 61 | shuffle=False, 62 | num_workers=0, 63 | ) 64 | 65 | #segment_net.eval() 66 | #decision_net.eval() 67 | 68 | for i, testBatch in enumerate(testloader): 69 | 70 | torch.cuda.synchronize() 71 | 72 | t1 = time.time() 73 | imgTest = testBatch["img"].cuda() 74 | 75 | 76 | 77 | with torch.no_grad(): 78 | rstTest = segment_net(imgTest) 79 | 80 | fTest = rstTest["f"] 81 | segTest = rstTest["seg"] 82 | 83 | with torch.no_grad(): 84 | cTest = decision_net(fTest, segTest) 85 | 86 | torch.cuda.synchronize() 87 | t2 = time.time() 88 | 89 | if cTest.item() > 0.5: 90 | labelStr = "NG" 91 | else: 92 | labelStr = "OK" 93 | 94 | save_path_str = os.path.join(dataSetRoot, "testResult") 95 | 96 | if os.path.exists(save_path_str) == False: 97 | os.makedirs(save_path_str, exist_ok=True) 98 | 99 | print("processing image NO %d, time comsuption %fs"%(i, t2 - t1)) 100 | save_image(imgTest.data, "%s/img_%d_%s.jpg"% (save_path_str, i, labelStr)) 101 | save_image(segTest.data, "%s/img_%d_seg_%s.jpg"% (save_path_str, i, labelStr)) 102 | -------------------------------------------------------------------------------- /train_decision.py: -------------------------------------------------------------------------------- 1 | 2 | from models import SegmentNet, DecisionNet, weights_init_normal 3 | from dataset import KolektorDataset 4 | import numpy as np 5 | 6 | import torch.nn as nn 7 | import torch 8 | 9 | from torchvision import datasets 10 | from torchvision.utils import save_image 11 | import torchvision.transforms as transforms 12 | from torch.autograd import Variable 13 | from torch.utils.data import DataLoader 14 | 15 | import os 16 | import sys 17 | import argparse 18 | import time 19 | import PIL.Image as Image 20 | 21 | parser = argparse.ArgumentParser() 22 | 23 | parser.add_argument("--cuda", type=bool, default=True, help="number of gpu") 24 | parser.add_argument("--gpu_num", type=int, default=1, help="number of gpu") 25 | parser.add_argument("--worker_num", type=int, default=4, help="number of input workers") 26 | parser.add_argument("--batch_size", type=int, default=4, help="batch size of input") 27 | parser.add_argument("--lr", type=float, default=0.001, help="adam: learning rate") 28 | parser.add_argument("--b1", type=float, default=0.5, help="adam: decay of first order momentum of gradient") 29 | parser.add_argument("--b2", type=float, default=0.999, help="adam: decay of first order momentum of gradient") 30 | 31 | parser.add_argument("--begin_epoch", type=int, default=0, help="begin_epoch") 32 | parser.add_argument("--end_epoch", type=int, default=61, help="end_epoch") 33 | parser.add_argument("--seg_epoch", type=int, default=50, help="pretrained segment epoch") 34 | 35 | parser.add_argument("--need_test", type=bool, default=True, help="need to test") 36 | parser.add_argument("--test_interval", type=int, default=10, help="interval of test") 37 | parser.add_argument("--need_save", type=bool, default=True, help="need to save") 38 | parser.add_argument("--save_interval", type=int, default=10, help="interval of save weights") 39 | 40 | 41 | parser.add_argument("--img_height", type=int, default=704, help="size of image height") 42 | parser.add_argument("--img_width", type=int, default=256, help="size of image width") 43 | 44 | 45 | opt = parser.parse_args() 46 | 47 | print(opt) 48 | 49 | dataSetRoot = "./Data" # "/home/sean/Data/KolektorSDD_sean" 50 | 51 | # *********************************************************************** 52 | 53 | # Build nets 54 | segment_net = SegmentNet(init_weights=True) 55 | decision_net = DecisionNet(init_weights=True) 56 | 57 | # Loss functions 58 | #criterion_segment = torch.nn.MSELoss() 59 | criterion_decision = torch.nn.MSELoss() 60 | 61 | if opt.cuda: 62 | segment_net = segment_net.cuda() 63 | decision_net = decision_net.cuda() 64 | #criterion_segment.cuda() 65 | criterion_decision.cuda() 66 | 67 | if opt.gpu_num > 1: 68 | segment_net = torch.nn.DataParallel(segment_net, device_ids=list(range(opt.gpu_num))) 69 | decision_net = torch.nn.DataParallel(decision_net, device_ids=list(range(opt.gpu_num))) 70 | 71 | if opt.begin_epoch != 0: 72 | # Load pretrained models 73 | decision_net.load_state_dict(torch.load("./saved_models/decision_net_%d.pth" % (opt.begin_epoch))) 74 | else: 75 | # Initialize weights 76 | decision_net.apply(weights_init_normal) 77 | 78 | # load pretrained segment parameters 79 | segment_net.load_state_dict(torch.load("./saved_models/segment_net_%d.pth" % (opt.seg_epoch))) 80 | #segment_net.eval() 81 | 82 | # Optimizers 83 | optimizer_dec = torch.optim.Adam(decision_net.parameters(), lr=opt.lr, betas=(opt.b1, opt.b2)) 84 | 85 | transforms_ = transforms.Compose([ 86 | transforms.Resize((opt.img_height, opt.img_width), Image.BICUBIC), 87 | transforms.ToTensor(), 88 | #transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), 89 | ]) 90 | 91 | transforms_mask = transforms.Compose([ 92 | transforms.Resize((opt.img_height//8, opt.img_width//8)), 93 | transforms.ToTensor(), 94 | #transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), 95 | ]) 96 | 97 | 98 | trainOKloader = DataLoader( 99 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Train_OK", isTrain=True), 100 | batch_size=opt.batch_size, 101 | shuffle=True, 102 | num_workers=opt.worker_num, 103 | ) 104 | 105 | trainNGloader = DataLoader( 106 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Train_NG", isTrain=True), 107 | batch_size=opt.batch_size, 108 | shuffle=True, 109 | num_workers=opt.worker_num, 110 | ) 111 | ''' 112 | trainloader = DataLoader( 113 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Train_ALL", isTrain=True), 114 | batch_size=opt.batch_size, 115 | shuffle=True, 116 | num_workers=opt.worker_num, 117 | ) 118 | ''' 119 | testloader = DataLoader( 120 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Test", isTrain=False), 121 | batch_size=1, 122 | shuffle=False, 123 | num_workers=0, 124 | ) 125 | 126 | 127 | for epoch in range(opt.begin_epoch, opt.end_epoch): 128 | 129 | iterOK = trainOKloader.__iter__() 130 | iterNG = trainNGloader.__iter__() 131 | 132 | lenNum = min( len(trainNGloader), len(trainOKloader)) 133 | lenNum = 2*(lenNum-1) 134 | 135 | #decision_net.train() 136 | #segment_net.eval() 137 | # train ***************************************************************** 138 | for i in range(0, lenNum): 139 | 140 | if i % 2 == 0: 141 | batchData = iterOK.__next__() 142 | #idx, batchData = enumerate(trainOKloader) 143 | gt_c = Variable(torch.Tensor(np.zeros((batchData["img"].size(0), 1))), requires_grad=False) 144 | else : 145 | batchData = iterNG.__next__() 146 | gt_c = Variable(torch.Tensor(np.ones((batchData["img"].size(0), 1))), requires_grad=False) 147 | #idx, batchData = enumerate(trainNGloader) 148 | 149 | if opt.cuda: 150 | img = batchData["img"].cuda() 151 | mask = batchData["mask"].cuda() 152 | gt_c = gt_c.cuda() 153 | else: 154 | img = batchData["img"] 155 | mask = batchData["mask"] 156 | 157 | rst = segment_net(img) 158 | 159 | f = rst["f"] 160 | seg = rst["seg"] 161 | 162 | optimizer_dec.zero_grad() 163 | 164 | rst_d = decision_net(f, seg) 165 | # rst_d = torch.Tensor.long(rst_d) 166 | 167 | loss_dec = criterion_decision(rst_d, gt_c) 168 | 169 | loss_dec.backward() 170 | optimizer_dec.step() 171 | 172 | sys.stdout.write( 173 | "\r [Epoch %d/%d] [Batch %d/%d] [loss %f]" 174 | %( 175 | epoch, 176 | opt.end_epoch, 177 | i, 178 | lenNum, 179 | loss_dec.item() 180 | ) 181 | ) 182 | 183 | # test **************************************************************************** 184 | if opt.need_test and epoch % opt.test_interval == 0 and epoch >= opt.test_interval: 185 | #decision_net.eval() 186 | #segment_net.eval() 187 | 188 | for i, testBatch in enumerate(testloader): 189 | imgTest = testBatch["img"].cuda() 190 | t1 = time.time() 191 | rstTest = segment_net(imgTest) 192 | 193 | fTest = rstTest["f"] 194 | segTest = rstTest["seg"] 195 | 196 | cTest = decision_net(fTest, segTest) 197 | 198 | t2 = time.time() 199 | save_path_str = "./testResultDec/epoch_%d"%epoch 200 | if os.path.exists(save_path_str) == False: 201 | os.makedirs(save_path_str, exist_ok=True) 202 | #os.mkdir(save_path_str) 203 | 204 | if cTest.item() > 0.5: 205 | labelStr = "NG" 206 | else: 207 | labelStr = "OK" 208 | 209 | print("processing image NO %d, time comsuption %fs"%(i, t2 - t1)) 210 | save_image(imgTest.data, "%s/img_%d_%s.jpg"% (save_path_str, i , labelStr)) 211 | save_image(segTest.data, "%s/img_%d_seg_%s.jpg"% (save_path_str, i, labelStr)) 212 | 213 | #decision_net.train() 214 | 215 | # save parameters ***************************************************************** 216 | if opt.need_save and epoch % opt.save_interval == 0 and epoch >= opt.save_interval: 217 | #decision_net.eval() 218 | 219 | save_path_str = "./saved_models" 220 | if os.path.exists(save_path_str) == False: 221 | os.makedirs(save_path_str, exist_ok=True) 222 | 223 | torch.save(decision_net.state_dict(), "%s/decision_net_%d.pth" % (save_path_str, epoch)) 224 | print("save weights ! epoch = %d"%epoch) 225 | #decision_net.train() 226 | pass 227 | -------------------------------------------------------------------------------- /train_segment.py: -------------------------------------------------------------------------------- 1 | 2 | from models import SegmentNet, DecisionNet, weights_init_normal 3 | from dataset import KolektorDataset 4 | 5 | import torch.nn as nn 6 | import torch 7 | 8 | from torchvision import datasets 9 | from torchvision.utils import save_image 10 | import torchvision.transforms as transforms 11 | from torch.autograd import Variable 12 | from torch.utils.data import DataLoader 13 | 14 | import os 15 | import sys 16 | import argparse 17 | import time 18 | import PIL.Image as Image 19 | 20 | parser = argparse.ArgumentParser() 21 | 22 | parser.add_argument("--cuda", type=bool, default=True, help="number of gpu") 23 | parser.add_argument("--gpu_num", type=int, default=1, help="number of gpu") 24 | parser.add_argument("--worker_num", type=int, default=4, help="number of input workers") 25 | parser.add_argument("--batch_size", type=int, default=2, help="batch size of input") 26 | parser.add_argument("--lr", type=float, default=0.0005, help="adam: learning rate") 27 | parser.add_argument("--b1", type=float, default=0.5, help="adam: decay of first order momentum of gradient") 28 | parser.add_argument("--b2", type=float, default=0.999, help="adam: decay of first order momentum of gradient") 29 | 30 | parser.add_argument("--begin_epoch", type=int, default=0, help="begin_epoch") 31 | parser.add_argument("--end_epoch", type=int, default=101, help="end_epoch") 32 | 33 | parser.add_argument("--need_test", type=bool, default=True, help="need to test") 34 | parser.add_argument("--test_interval", type=int, default=10, help="interval of test") 35 | parser.add_argument("--need_save", type=bool, default=True, help="need to save") 36 | parser.add_argument("--save_interval", type=int, default=10, help="interval of save weights") 37 | 38 | 39 | parser.add_argument("--img_height", type=int, default=704, help="size of image height") 40 | parser.add_argument("--img_width", type=int, default=256, help="size of image width") 41 | 42 | opt = parser.parse_args() 43 | 44 | print(opt) 45 | 46 | dataSetRoot = "./Data" #"/home/sean/Data/KolektorSDD_sean" # 47 | 48 | # *********************************************************************** 49 | 50 | # Build nets 51 | segment_net = SegmentNet(init_weights=True) 52 | 53 | # Loss functions 54 | criterion_segment = torch.nn.MSELoss() 55 | 56 | if opt.cuda: 57 | segment_net = segment_net.cuda() 58 | criterion_segment.cuda() 59 | 60 | 61 | if opt.gpu_num > 1: 62 | segment_net = torch.nn.DataParallel(segment_net, device_ids=list(range(opt.gpu_num))) 63 | 64 | if opt.begin_epoch != 0: 65 | # Load pretrained models 66 | segment_net.load_state_dict(torch.load("./saved_models/segment_net_%d.pth" % (opt.begin_epoch))) 67 | else: 68 | # Initialize weights 69 | segment_net.apply(weights_init_normal) 70 | 71 | # Optimizers 72 | optimizer_seg = torch.optim.Adam(segment_net.parameters(), lr=opt.lr, betas=(opt.b1, opt.b2)) 73 | 74 | transforms_ = transforms.Compose([ 75 | transforms.Resize((opt.img_height, opt.img_width), Image.BICUBIC), 76 | transforms.ToTensor(), 77 | #transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), 78 | ]) 79 | 80 | transforms_mask = transforms.Compose([ 81 | transforms.Resize((opt.img_height//8, opt.img_width//8)), 82 | transforms.ToTensor(), 83 | #transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)), 84 | ]) 85 | 86 | 87 | trainOKloader = DataLoader( 88 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Train_OK", isTrain=True), 89 | batch_size=opt.batch_size, 90 | shuffle=True, 91 | num_workers=opt.worker_num, 92 | ) 93 | 94 | trainNGloader = DataLoader( 95 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Train_NG", isTrain=True), 96 | batch_size=opt.batch_size, 97 | shuffle=True, 98 | num_workers=opt.worker_num, 99 | ) 100 | 101 | ''' 102 | trainloader = DataLoader( 103 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Train_ALL", isTrain=True), 104 | batch_size=opt.batch_size, 105 | shuffle=True, 106 | num_workers=opt.worker_num, 107 | ) 108 | ''' 109 | 110 | testloader = DataLoader( 111 | KolektorDataset(dataSetRoot, transforms_=transforms_, transforms_mask= transforms_mask, subFold="Test", isTrain=False), 112 | batch_size=1, 113 | shuffle=False, 114 | num_workers=opt.worker_num, 115 | ) 116 | 117 | 118 | for epoch in range(opt.begin_epoch, opt.end_epoch): 119 | 120 | iterOK = trainOKloader.__iter__() 121 | iterNG = trainNGloader.__iter__() 122 | 123 | lenNum = min( len(trainNGloader), len(trainOKloader)) 124 | lenNum = 2*(lenNum-1) 125 | 126 | segment_net.train() 127 | # train ***************************************************************** 128 | for i in range(0, lenNum): 129 | if i % 2 == 0: 130 | batchData = iterOK.__next__() 131 | #idx, batchData = enumerate(trainOKloader) 132 | else : 133 | batchData = iterNG.__next__() 134 | #idx, batchData = enumerate(trainNGloader) 135 | 136 | if opt.cuda: 137 | img = batchData["img"].cuda() 138 | mask = batchData["mask"].cuda() 139 | else: 140 | img = batchData["img"] 141 | mask = batchData["mask"] 142 | 143 | optimizer_seg.zero_grad() 144 | 145 | rst = segment_net(img) 146 | 147 | seg = rst["seg"] 148 | 149 | loss_seg = criterion_segment(seg, mask) 150 | loss_seg.backward() 151 | optimizer_seg.step() 152 | 153 | sys.stdout.write( 154 | "\r [Epoch %d/%d] [Batch %d/%d] [loss %f]" 155 | %( 156 | epoch, 157 | opt.end_epoch, 158 | i, 159 | lenNum, 160 | loss_seg.item() 161 | ) 162 | ) 163 | 164 | # test **************************************************************************** 165 | if opt.need_test and epoch % opt.test_interval == 0 and epoch >= opt.test_interval: 166 | # segment_net.eval() 167 | 168 | for i, testBatch in enumerate(testloader): 169 | imgTest = testBatch["img"].cuda() 170 | t1 = time.time() 171 | rstTest = segment_net(imgTest) 172 | t2 = time.time() 173 | segTest = rstTest["seg"] 174 | 175 | save_path_str = "./testResultSeg/epoch_%d"%epoch 176 | if os.path.exists(save_path_str) == False: 177 | os.makedirs(save_path_str, exist_ok=True) 178 | #os.mkdir(save_path_str) 179 | 180 | print("processing image NO %d, time comsuption %fs"%(i, t2 - t1)) 181 | save_image(imgTest.data, "%s/img_%d.jpg"% (save_path_str, i)) 182 | save_image(segTest.data, "%s/img_%d_seg.jpg"% (save_path_str, i)) 183 | 184 | segment_net.train() 185 | 186 | # save parameters ***************************************************************** 187 | if opt.need_save and epoch % opt.save_interval == 0 and epoch >= opt.save_interval: 188 | #segment_net.eval() 189 | 190 | save_path_str = "./saved_models" 191 | if os.path.exists(save_path_str) == False: 192 | os.makedirs(save_path_str, exist_ok=True) 193 | 194 | torch.save(segment_net.state_dict(), "%s/segment_net_%d.pth" % (save_path_str, epoch)) 195 | print("save weights ! epoch = %d"%epoch) 196 | #segment_net.train() 197 | pass 198 | --------------------------------------------------------------------------------