{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.12","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"gpu","dataSources":[{"sourceId":18237,"databundleVersionId":1053191,"sourceType":"competition"},{"sourceId":10417415,"sourceType":"datasetVersion","datasetId":6456305},{"sourceId":10606662,"sourceType":"datasetVersion","datasetId":6565855},{"sourceId":10632928,"sourceType":"datasetVersion","datasetId":6565852},{"sourceId":10652536,"sourceType":"datasetVersion","datasetId":6473995}],"dockerImageVersionId":30823,"isInternetEnabled":true,"language":"python","sourceType":"notebook","isGpuEnabled":true}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"!pip install ultralytics","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"execution_failed":"2025-01-29T08:59:12.46Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import yaml\nfrom ultralytics import YOLO\nimport os","metadata":{"trusted":true,"execution":{"execution_failed":"2025-01-29T08:59:12.46Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import torch\nprint(torch.__version__)\nprint(torch.cuda.is_available())\n","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"data = {\n    \"path\": \"/kaggle/input/fashionpediandataset/op\",\n    \"train\": \"/kaggle/input/fashionpediandataset/op/images\",\n    \"val\": \"/kaggle/input/imaterialist-fashion-2020-fgvc7/test\",\n    \"names\": {\n        0: \"shirt, blouse\",\n        1: \"top, t-shirt, sweatshirt\",\n        2: \"sweater\",\n        3: \"cardigan\",\n        4: \"jacket\",\n        5: \"vest\",\n        6: \"pants\",\n        7: \"shorts\",\n        8: \"skirt\",\n        9: \"coat\",\n        10: \"dress\",\n        11: \"jumpsuit\",\n        12: \"cape\",\n        13: \"glasses\",\n        14: \"hat\",\n        15: \"headband, head covering, hair accessory\",\n        16: \"tie\",\n        17: \"glove\",\n        18: \"watch\",\n        19: \"belt\",\n        20: \"leg warmer\",\n        21: \"tights, stockings\",\n        22: \"sock\",\n        23: \"shoe\",\n        24: \"bag, wallet\",\n        25: \"scarf\",\n        26: \"umbrella\",\n        27: \"hood\",\n        28: \"epaulette\",\n        29: \"buckle\",\n        30: \"applique\",\n        31: \"bead\",\n        32: \"bow\",\n        33: \"flower\",\n        34: \"fringe\",\n        35: \"ribbon\",\n        36: \"rivet\",\n        37: \"ruffle\",\n        38: \"sequin\",\n        39: \"tassel\"\n    }\n}\n\nwith open(\"trainyolo.yaml\", \"w\") as file:\n    yaml.dump(data, file, default_flow_style=False)","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# data = {\n#     \"path\": \"/kaggle/input/fashion-pedia/op\",\n#     \"train\": \"/kaggle/input/fashion-pedia/op/images\",\n#     \"val\": \"/kaggle/input/imaterialist-fashion-2020-fgvc7/test\",\n#     \"names\": {\n#         0: \"classic (t-shirt)\",\n#         1: \"polo (shirt)\",\n#         2: \"undershirt\",\n#         3: \"henley (shirt)\",\n#         4: \"ringer (t-shirt)\",\n#         5: \"raglan (t-shirt)\",\n#         6: \"rugby (shirt)\",\n#         7: \"sailor (shirt)\",\n#         8: \"crop (top)\",\n#         9: \"halter (top)\",\n#         10: \"camisole\",\n#         11: \"tank (top)\",\n#         12: \"peasant (top)\",\n#         13: \"tube (top)\",\n#         14: \"tunic (top)\",\n#         15: \"smock (top)\",\n#         16: \"hoodie\",\n#         17: \"blazer\",\n#         18: \"pea (jacket)\",\n#         19: \"puffer (jacket)\",\n#         20: \"biker (jacket)\",\n#         21: \"trucker (jacket)\",\n#         22: \"bomber (jacket)\",\n#         23: \"anorak\",\n#         24: \"safari (jacket)\",\n#         25: \"mao (jacket)\",\n#         26: \"nehru (jacket)\",\n#         27: \"norfolk (jacket)\",\n#         28: \"classic military (jacket)\",\n#         29: \"track (jacket)\",\n#         30: \"windbreaker\",\n#         31: \"chanel (jacket)\",\n#         32: \"bolero\",\n#         33: \"tuxedo (jacket)\",\n#         34: \"varsity (jacket)\",\n#         35: \"crop (jacket)\",\n#         36: \"jeans\",\n#         37: \"sweatpants\",\n#         38: \"leggings\",\n#         39: \"hip-huggers (pants)\",\n#         40: \"cargo (pants)\",\n#         41: \"culottes\",\n#         42: \"capri (pants)\",\n#         43: \"harem (pants)\",\n#         44: \"sailor (pants)\",\n#         45: \"jodhpur\",\n#         46: \"peg (pants)\",\n#         47: \"camo (pants)\",\n#         48: \"track (pants)\",\n#         49: \"crop (pants)\",\n#         50: \"short (shorts)\",\n#         51: \"booty (shorts)\",\n#         52: \"bermuda (shorts)\",\n#         53: \"cargo (shorts)\",\n#         54: \"trunks\",\n#         55: \"boardshorts\",\n#         56: \"skort\",\n#         57: \"roll-up (shorts)\",\n#         58: \"tie-up (shorts)\",\n#         59: \"culotte (shorts)\",\n#         60: \"lounge (shorts)\",\n#         61: \"bloomers\",\n#         62: \"tutu (skirt)\",\n#         63: \"kilt\",\n#         64: \"wrap (skirt)\",\n#         65: \"skater (skirt)\",\n#         66: \"cargo (skirt)\",\n#         67: \"hobble (skirt)\",\n#         68: \"sheath (skirt)\",\n#         69: \"ball gown (skirt)\",\n#         70: \"gypsy (skirt)\",\n#         71: \"rah-rah (skirt)\",\n#         72: \"prairie (skirt)\",\n#         73: \"flamenco (skirt)\",\n#         74: \"accordion (skirt)\",\n#         75: \"sarong (skirt)\",\n#         76: \"tulip (skirt)\",\n#         77: \"dirndl (skirt)\",\n#         78: \"godet (skirt)\",\n#         79: \"blanket (coat)\",\n#         80: \"parka\",\n#         81: \"trench (coat)\",\n#         82: \"pea (coat)\",\n#         83: \"shearling (coat)\",\n#         84: \"teddy bear (coat)\",\n#         85: \"puffer (coat)\",\n#         86: \"duster (coat)\",\n#         87: \"raincoat\",\n#         88: \"kimono\",\n#         89: \"robe\",\n#         90: \"dress (coat)\",\n#         91: \"duffle (coat)\",\n#         92: \"wrap (coat)\",\n#         93: \"military (coat)\",\n#         94: \"swing (coat)\",\n#         95: \"halter (dress)\",\n#         96: \"wrap (dress)\",\n#         97: \"chemise (dress)\",\n#         98: \"slip (dress)\",\n#         99: \"cheongsams\",\n#         100: \"jumper (dress)\",\n#         101: \"shift (dress)\",\n#         102: \"sheath (dress)\",\n#         103: \"shirt (dress)\",\n#         104: \"sundress\",\n#         105: \"kaftan\",\n#         106: \"bodycon (dress)\",\n#         107: \"nightgown\",\n#         108: \"gown\",\n#         109: \"sweater (dress)\",\n#         110: \"tea (dress)\",\n#         111: \"blouson (dress)\",\n#         112: \"tunic (dress)\",\n#         113: \"skater (dress)\",\n#         114: \"asymmetrical\",\n#         115: \"symmetrical\",\n#         116: \"peplum\",\n#         117: \"circle\",\n#         118: \"flare\",\n#         119: \"fit and flare\",\n#         120: \"trumpet\",\n#         121: \"mermaid\",\n#         122: \"balloon\",\n#         123: \"bell\",\n#         124: \"bell bottom\",\n#         125: \"bootcut\",\n#         126: \"peg\",\n#         127: \"pencil\",\n#         128: \"straight\",\n#         129: \"a-line\",\n#         130: \"tent\",\n#         131: \"baggy\",\n#         132: \"wide leg\",\n#         133: \"high low\",\n#         134: \"curved (fit)\",\n#         135: \"tight (fit)\",\n#         136: \"regular (fit)\",\n#         137: \"loose (fit)\",\n#         138: \"oversized\",\n#         139: \"empire waistline\",\n#         140: \"dropped waistline\",\n#         141: \"high waist\",\n#         142: \"normal waist\",\n#         143: \"low waist\",\n#         144: \"basque (wasitline)\",\n#         145: \"no waistline\",\n#         146: \"above-the-hip (length)\",\n#         147: \"hip (length)\",\n#         148: \"micro (length)\",\n#         149: \"mini (length)\",\n#         150: \"above-the-knee (length)\",\n#         151: \"knee (length)\",\n#         152: \"below the knee (length)\",\n#         153: \"midi\",\n#         154: \"maxi (length)\",\n#         155: \"floor (length)\",\n#         156: \"sleeveless\",\n#         157: \"short (length)\",\n#         158: \"elbow-length\",\n#         159: \"three quarter (length)\",\n#         160: \"wrist-length\",\n#         161: \"asymmetric (collar)\",\n#         162: \"regular (collar)\",\n#         163: \"shirt (collar)\",\n#         164: \"polo (collar)\",\n#         165: \"chelsea (collar)\",\n#         166: \"banded (collar)\",\n#         167: \"mandarin (collar)\",\n#         168: \"peter pan (collar)\",\n#         169: \"bow (collar)\",\n#         170: \"stand-away (collar)\",\n#         171: \"jabot (collar)\",\n#         172: \"sailor (collar)\",\n#         173: \"oversized (collar)\",\n#         174: \"notched (lapel)\",\n#         175: \"peak (lapel)\",\n#         176: \"shawl (lapel)\",\n#         177: \"napoleon (lapel)\",\n#         178: \"oversized (lapel)\",\n#         179: \"collarless\",\n#         180: \"asymmetric (neckline)\",\n#         181: \"crew (neck)\",\n#         182: \"round (neck)\",\n#         183: \"v-neck\",\n#         184: \"surplice (neck)\",\n#         185: \"oval (neck)\",\n#         186: \"u-neck\",\n#         187: \"sweetheart (neckline)\",\n#         188: \"queen anne (neck)\",\n#         189: \"boat (neck)\",\n#         190: \"scoop (neck)\",\n#         191: \"square (neckline)\",\n#         192: \"plunging (neckline)\",\n#         193: \"keyhole (neck)\",\n#         194: \"halter (neck)\",\n#         195: \"crossover (neck)\",\n#         196: \"choker (neck)\",\n#         197: \"high (neck)\",\n#         198: \"turtle (neck)\",\n#         199: \"cowl (neck)\",\n#         200: \"straight across (neck)\",\n#         201: \"illusion (neck)\",\n#         202: \"off-the-shoulder\",\n#         203: \"one shoulder\",\n#         204: \"set-in sleeve\",\n#         205: \"dropped-shoulder sleeve\",\n#         206: \"raglan (sleeve)\",\n#         207: \"cap (sleeve)\",\n#         208: \"tulip (sleeve)\",\n#         209: \"puff (sleeve)\",\n#         210: \"bell (sleeve)\",\n#         211: \"circular flounce (sleeve)\",\n#         212: \"poet (sleeve)\",\n#         213: \"dolman (sleeve), batwing (sleeve)\",\n#         214: \"bishop (sleeve)\",\n#         215: \"leg of mutton (sleeve)\",\n#         216: \"kimono (sleeve)\",\n#         217: \"cargo (pocket)\",\n#         218: \"patch (pocket)\",\n#         219: \"welt (pocket)\",\n#         220: \"kangaroo (pocket)\",\n#         221: \"seam (pocket)\",\n#         222: \"slash (pocket)\",\n#         223: \"curved (pocket)\",\n#         224: \"flap (pocket)\",\n#         225: \"single breasted\",\n#         226: \"double breasted\",\n#         227: \"lace up\",\n#         228: \"wrapping\",\n#         229: \"zip-up\",\n#         230: \"fly (opening)\",\n#         231: \"chained (opening)\",\n#         232: \"buckled (opening)\",\n#         233: \"toggled (opening)\",\n#         234: \"no opening\",\n#         281: \"plastic\",\n#         282: \"rubber\",\n#         283: \"metal\",\n#         285: \"feather\",\n#         286: \"gem\",\n#         287: \"bone\",\n#         288: \"ivory\",\n#         289: \"fur\",\n#         290: \"suede\",\n#         291: \"shearling\",\n#         292: \"crocodile\",\n#         293: \"snakeskin\",\n#         294: \"wood\",\n#         295: \"no non-textile material\",\n#         296: \"burnout\",\n#         297: \"distressed\",\n#         298: \"washed\",\n#         299: \"embossed\",\n#         300: \"frayed\",\n#         301: \"printed\",\n#         302: \"ruched\",\n#         303: \"quilted\",\n#         304: \"pleat\",\n#         305: \"gathering\",\n#         306: \"smocking\",\n#         307: \"tiered\",\n#         308: \"cutout\",\n#         309: \"slit\",\n#         310: \"perforated\",\n#         311: \"lining\",\n#         312: \"applique(a)\",\n#         313: \"bead(a)\",\n#         314: \"rivet(a)\",\n#         315: \"sequin(a)\",\n#         316: \"no special manufacturing technique\",\n#         317: \"plain (pattern)\",\n#         318: \"abstract\",\n#         319: \"cartoon\",\n#         320: \"letters, numbers\",\n#         321: \"camouflage\",\n#         322: \"check\",\n#         323: \"dot\",\n#         324: \"fair isle\",\n#         325: \"floral\",\n#         326: \"geometric\",\n#         327: \"paisley\",\n#         328: \"stripe\",\n#         329: \"houndstooth (pattern)\",\n#         330: \"herringbone (pattern)\",\n#         331: \"chevron\",\n#         332: \"argyle\",\n#         333: \"leopard\",\n#         334: \"snakeskin (pattern)\",\n#         335: \"cheetah\",\n#         336: \"peacock\",\n#         337: \"zebra\",\n#         338: \"giraffe\",\n#         339: \"toile de jouy\",\n#         340: \"plant\"\n#     },\n# }\n\n# with open(\"trainyolo.yaml\", \"w\") as file:\n#     yaml.dump(data, file, default_flow_style=False)","metadata":{"trusted":true,"execution":{"execution_failed":"2025-01-29T08:59:12.46Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"model = YOLO(\"/kaggle/input/weights/last.pt\") ","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"results = model.train(data=\"/kaggle/working/trainyolo.yaml\", epochs=100, imgsz=640, resume=True)","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"!pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"","metadata":{"trusted":true},"outputs":[],"execution_count":null}]}