Skip to content

Trash image segmentation & object detection project

Notifications You must be signed in to change notification settings

philgineer/Trash_object_detection

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

54 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๋ถ€์ŠคํŠธ์บ ํ”„ AI Tech - Team Project

Title Task Date Team
์žฌํ™œ์šฉ ์“ฐ๋ ˆ๊ธฐ ์ด๋ฏธ์ง€ ๊ฐ์ฒด ์˜์—ญ ๊ตฌ๋ถ„ & ๊ฐ์ฒด ํƒ์ง€ Semantic Segmentation & Object Detection 2021.04.26 ~ 2021.05.21 5์กฐ ConnectNet

P stage 3 ๋Œ€ํšŒ ์ง„ํ–‰ ๊ณผ์ •๊ณผ ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ๋กํ•œ Team Git repo ์ž…๋‹ˆ๋‹ค. ๋Œ€ํšŒ ํŠน์„ฑ์ƒ ์ˆ˜์ • ํ˜น์€ ์‚ญ์ œ๋œ ๋ถ€๋ถ„์ด ์กด์žฌ ํ•ฉ๋‹ˆ๋‹ค


โœ”๏ธ Segmentation Task

  • Rank: 17
  • LB: 0.6205

โœ”๏ธ Object Detection Task

  • Rank : 5
  • LB: 0.4789

๐Ÿ“‹ Table of content

Team ์†Œ๊ฐœ
Gound Rule

1.1 ๋Œ€ํšŒ ์ „๋žต
1.2 Model
1.3 Loss
1.4 Augmentation
1.5 ์‹คํŒจํ•œ ๋ถ€๋ถ„
1.6 ํšŒ๊ณ  & ๊ณผ์ œ

2.1 ๋Œ€ํšŒ ์ „๋žต
2.2 Model
2.3 Augmentation
2.4 ์‚ฌ์šฉํ•œ ๊ธฐ์ˆ 
2.5 Ensemble
2.6 ์‹คํŒจํ•œ ๋ถ€๋ถ„


๐ŸŒTeam - ConnectNet

  • ๊น€์ข…ํ˜ธ_T1034 Github Badge Blog Badge
  • ๊น€ํ˜„์šฐ_T1045 Github Badge
  • ๊น€ํ˜„์šฐ_T1046 Github Badge
  • ๋ฐฐ์ฒ ํ™˜_T1086 Github Badge
  • ์„œ์ค€๋ฐฐ_T1097 Github Badge
  • ์œค์ค€ํ˜ธ_T1138 Github Badge Blog Badge

Ground rule

  1. ๊ณต์œ  ์ฝ”๋“œ ์ž‘์„ฑ ์‹œ

    • ์ž‘์„ฑ์ž ํ‘œ์‹œ
    • ํ•จ์ˆ˜ ๋‹จ์œ„ ์ž‘์„ฑ
    • merge ์‹œ .py ํ˜•์‹ ์‚ฌ์šฉ
  2. ๋ชจ๋ธ ๋กœ๊ทธ ๊ธฐ๋ก

    • Wandb ์‚ฌ์šฉ
  3. ํšŒ์˜ ๊ธฐ๋ก ์ž‘์„ฑ

  4. ์ž๋ฃŒ ๊ณต์œ  ๋ฐ ์—ฐ๋ฝ - Slack

  5. Code review

    • Git์— code review ์š”์ฒญ,
    • Peer session ํ™œ์šฉ
  6. ๊ฒฐ๊ณผ ์ œ์ถœ ์‹œ

    • ์‹คํ—˜ ๋‚ด์šฉ ๊ฒฐ๊ณผ ๊ณต์œ  ๋ฐ ๊ธฐ๋ก

๐Ÿ”Segmentation

์ „์ฒด ์‹คํ—˜ ๋‚ด์šฉ

1. ๋Œ€ํšŒ ์ „๋žต

  • Daily Mission ์ˆ˜ํ–‰
  • Augmentation & Loss ์กฐํ•ฉ ์‹คํ—˜
  • Model ์„ ์ •
  • Skill
    • TTA

    • SWA

    • Pseudo Labeling

    • Image ์ƒ์„ฑ - ๊น€ํ˜„์šฐT1045 ์ง„ํ–‰

2. Model

  1. efficientb3-noisy-student , FPN
  • LB ์ ์ˆ˜ : 0.6248
  • ๋ชจ๋ธ : decoder : FPN, backbone : efficientb3-noisy-student
  • loss : Jaccard + SoftCE
  • optimizer : AdamP (learning_rate = 0.0001), LookAhead
  • hyperparameters : Batch size 4, Epochs : 40
  • augmentation
    • HorizontalFlip
    • ShiftScaleRotate
    • RandomBrightnessContrast
    • VerticalFlip
    • OneOf
      • A.RandomResizedCrop(512,512,scale = (0.5,0.8),p=0.8)
      • A.CropNonEmptyMaskIfExists(height=300, width=300, p=0.2),], p=0.5)
      • A.Resize(256, 256)
  • SWA
  1. se_resnext101_32x4d, FPN
  • LB ์ ์ˆ˜: 0.6228 (public)
  • ๋ชจ๋ธ : decoder : FPN, backbone : se_resnext101_32x4d
  • loss : Jacarrd
  • optimizer : Adam (learning_rate = 0.00001)
  • hyperparameters : Batch size 16, Epochs : 15
  • augmentation
    • HorizontalFlip
    • VerticalFlip
    • ShiftScaleRotate
    • RandomBrightnessContrast(brightness_limit=0.15, contrast_limit=0.2, p=0.5)
    • RandomResizedCrop(512,512,scale = (0.5,0.8))
  1. efficient-b3 , FPN
  • LB ์ ์ˆ˜: 0.5897 (public)
  • ๋ชจ๋ธ : decoder : FPN, backbone : efficient-b3
  • loss : Cross Entropy
  • optimizer : AdamW (learning_rate = 0.00001)
  • augmentation
    • HorizontalFlip
    • ShiftScaleRotate
    • RandomBrightnessContrast
    • RandomResizedCrop
    • OpticalDistortion
    • VerticalFlip
  • pseudo hyperparameters : batch 8, epochs 20
  • pseudo ํ•™์Šต: Fold๋กœ ๋‚˜๋‰œ ๋ชจ๋ธ, ๊ฐ๊ฐ psudo labeling ํ•™์Šต ์ง„ํ–‰

3. Loss

๋™์ผํ•œ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ, Loss ๊ฐ’์— ๋”ฐ๋ฅธ Score ์‹คํ—˜

  • Decoder : deeplabV3+
  • Backbone : efficientb3-noisy-student
  • Optimizer : AdamW

seg_chart

4. Augmentation

arg0

crop0

Scale58 = RandomResizedCrop(512,512,scale = (0.5,0.8))
Scale68 =RandomResizedCrop(512,512,scale = (0.6,0.8))
Scale46 = RandomResizedCrop(512,512,scale = (0.4,0.6))
Scale24 = RandomResizedCrop(512,512,scale = (0.2,0.4))

5. ์‹คํŒจํ•œ ๋ถ€๋ถ„

  • Unet, Unet ++, Unet3+์„ ์ ์šฉํ•˜๋ ค๊ณ  ํ–ˆ์œผ๋‚˜ ์„ฑ๋Šฅ์ด ๋‚˜์˜ค์ง€ ์•Š์•˜๋‹ค.

  • pseudo labeling

    • ํ•™์Šต ๋ฐฉ๋ฒ•
      • label์ด ์—†๋Š” ๋ฐ์ดํ„ฐ์…‹(test์…‹)์— ๋Œ€ํ•ด ๋งค ๋ฐฐ์น˜๋งˆ๋‹ค ์ƒ์„ฑ ๋ฐ ํ•™์Šต
      • 50batch๋งˆ๋‹ค ๊ธฐ์กด train์…‹์„ 1epochํ•™์Šต ์ง„ํ–‰
    for each_test_image in test_loader:
    	model.eval()
    	output = output of model with each_test_image
    	oms = output label
    	model.train()
    	unlabled_loss = alpha_wight * CE(output,oms)
    	if batch % 50 == 0:
    		for each_train_image in train_loader:
    			train_output = output of model with each_train_image
          

    โ†’ ๊ทธ๋Ÿฌ๋‚˜, CE(output, mos)๋Š” ์‚ฌ์‹ค์ƒ ๊ฐ™์€ ๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ’์ด 0์— ์ˆ˜๋ ดํ•˜์—ฌ ์˜๋ฏธ๊ฐ€ ์—†๋‹ค. ๋”ฐ๋ผ์„œ, ์œ„ pseudo code๋Š” ์›๋ž˜์˜ pseudo-labeling์˜ ์˜๋„์™€๋Š” ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ž‘๋™ํ•œ๋‹ค. ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์ ์šฉํ•˜์ง€ ์•Š์•˜์„ ๋•Œ ๋ณด๋‹ค 0.06์ด ์ƒ์Šนํ•˜๋Š” ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ, ์ด๋Š” ๋‹จ์ˆœํžˆ ๋‚ด๋ถ€ for๋ฌธ์— ์˜ํ•ด train์ด ์ถ”๊ฐ€์ ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๊ฒฐ๊ณผ์— ๊ธฐ์ธํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.

6. ํšŒ๊ณ  & ๊ณผ์ œ

  • Library ๋ฒ„์ „ ํ†ต์ผํ•˜๊ธฐ
  • EDA๋ฅผ ํ†ตํ•ด์„œ ์ด๋ฏธ์ง€ ํŠน์„ฑ์— ๋”ฐ๋ผ ์‹คํ—˜ํ•˜๊ธฐ
  • ์‹œ๊ฐํ™” ์ฝ”๋“œ๋„ ํ•œ๋ฒˆ ์งœ๋ณด๊ธฐ
  • ํ•™์Šต ์ง„ํ–‰ ์‹œ ,๋‹ค๋ฅธ ์ž‘์—…์„ ๋ชปํ•  ๋•Œ๋Š” SOTA ๋ชจ๋ธ TTA๋‚˜ CRF ๊ฐ™์ด ํ…Œํฌ๋‹‰ ํƒ์ƒ‰
  • loss๋ฅผ ์กฐํ•ฉ ์‹œ, ํŠน์ • ๋ชจ๋ธ์—์„œ๋งŒ ์ข‹์•˜๋˜ ๊ฒƒ์ผ ์ˆ˜๋„ ์žˆ์œผ๋‹ˆ ์ฐธ๊ณ ํ•˜๊ธฐ
  • ์ตœ๋Œ€ํ•œ ์ž‘์€ ๋ชจ๋ธ๋กœ ์‹คํ—˜ ํ•˜๊ธฐ -> ๊ธฐ๋ณธ์  ์กฐํ•ฉ (loss, optim, augmentation, batch_size, lr, epoch)
  • ๊ธฐ์ค€ ์ ์ˆ˜ (ex. ํ˜„์žฌ single SOTA ์ ์ˆ˜์˜ +- 15%)๋ฅผ ์ถฉ์กฑํ•˜์ง€ ๋ชปํ•˜๋ฉด ๊ณผ๊ฐํ•˜๊ฒŒ ๋“œ๋žํ•˜๊ธฐ
  • csv ํŒŒ์ผ๋กœ soft voting, hard voting ์•™์ƒ๋ธ” ๊ธฐ๋Šฅ์„ ๋ฏธ๋ฆฌ ๊ตฌํ˜„
  • ๊ฐœ์ธ๋ณ„ ์•™์ƒ๋ธ” ๋ฏธ๋ฆฌ ์‹คํ—˜
  • ๋‚ฎ์—๋Š” ์ž‘์€ ๋ชจ๋ธ๋กœ ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ , ๋ฐค์—๋Š” ์„ฑ๋Šฅ์ด ์ข‹์€ ๋ชจ๋ธ๋กœ ์‹คํ—˜์„ ์ง„ํ–‰ํ•จ -> ์„ฑ๋Šฅ์ด ์ข‹์€ ๋ชจ๋ธ์€ ๋ชจ๋‘ ๋‹ค๋ฅธ ์กฐํ•ฉ์œผ๋กœ ์ง„ํ–‰ํ•จ
  • pseudo labeling ๋‹ค๋ฅธํŒ€๊ณผ ๋น„๊ตํ•ด์„œ ๊ฒ€์ฆ ๋ฐ ์žฌ์‚ฌ์šฉ
  • ๋ชฉํ‘œ๋ฅผ ์„ธ๋ถ„ํ™”ํ•ด์„œ ๊ฐ๊ฐ ๋ฐ๋“œ๋ผ์ธ์„ ์ง€์ •
  • ์‹œ๊ฐ„์ด ๋ถ€์กฑํ•˜๋ฉด validation score ์ธก์ • ๋นผ๊ณ  ์‹คํ—˜
  • GPU 20 ์‹œ๊ฐ„ ๋Œ๋ฆฌ๊ธฐ!!!
  • ํ•ญ์ƒ ๋ชจ๋ธ pt ์ €์žฅํ•ด์„œ ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๊ธฐ
  • ์‹œ๊ฐํ™” ์ฝ”๋“œ๋„ ํ•œ๋ฒˆ ์งœ๋ณด๊ธฐ


๐Ÿ”Object Detection

์ „์ฒด ์‹คํ—˜ ๋‚ด์šฉ

1. ๋Œ€ํšŒ ์ „๋žต

  • Global wheat detection ๋ถ„์„์„ ํ†ตํ•ด ์‚ฌ์ „ ์‹คํ—˜์˜ ๋ฐฉํ–ฅ์„ฑ์„ ์ˆ˜๋ฆฝ

  • ๋ชจ๋ธ ์„ค์ •

  • augmentation & loss ์กฐํ•ฉ ์‹คํ—˜

  • Multi Scale Train

  • TTA

  • WBF

  • Pseudo Labeling

  • hyper parameter ํŠœ๋‹

2. Model

  1. Cascade R-CNN ๊ณ„์—ด

    • ResNext101 / FPN / Cascade R-CNN

      • LB: 0.4781
      • optimizer : SGD (learning_rate = 0.02)
      • loss: CrossEntropyLoss (Class loss), SmoothL1Loss (Bbox loss)
      • hyperparameters : batch : 16, epochs : 50
    • ResNet50 / RFN + SAC / Cascade R-CNN (DetectoRS)

      • LB : 0.5121
      • optimizer : SGD (learning_rate = 0.01)
      • loss: SoftCrossEntropyLoss (Class loss), SmoothL1Loss (Bbox loss)
      • hyperparameters : batch : 4, epochs : 48 or 60
      • 5 fold cross-validation
      • TTA
    • ResNext101 / RFN + SAC / Cascade R-CNN (DetectoRS)

      • LB: 0.5247
      • optimizer : SGD (learning_rate = 0.01)
      • loss: SoftCrossEntropyLoss (Class loss), SmoothL1Loss (Bbox loss)
      • hyperparameters : batch : 4, epochs : 48 or 60
      • TTA : vertical, horizontal flip, 512, 768 resize
  2. YOLO ๊ณ„์—ด

    • DarkNet / SPP / YOLO v5
      • LB : 0.4916
      • loss : CrossEntropy (150 epoch models), Focal Loss (240 epoch models)
      • optimizer : SGD (learning_rate = 0.01)
      • hyperparameters : batch : 32, epochs : 150 or 240
      • TTA
      • ์›๋ณธ ์‚ฌ์ด์ฆˆ์˜ ์ ˆ๋ฐ˜์œผ๋กœ Multi-scale train ์ง„ํ–‰
  3. Swin ๊ณ„์—ด

    • SwinTransformer / FPN / Mask R-CNN
      • LB: 0.5486
      • cls_loss: LabelSmooth + CE + Focal (๊ฐ box_head ๋ณ„)
      • bbox_loss: SmoothL1Loss
      • optimizer: AdamW (learning_rate = 0.0001)
      • ์žฌํ•™์Šต
        • loss ๋ณ€๊ฒฝ
        • augmentation ์ถ”๊ฐ€
      • TTA

3. Augmentation

  • Mosaic

    • ์ด๋ฏธ์ง€ 4์žฅ์„ ๊ฐ๊ฐ ๋ฌด์ž‘์œ„๋กœ ์ž˜๋ผ์„œ ํ•˜๋‚˜์˜ ์‚ฌ์ง„์œผ๋กœ ๋งŒ๋“œ๋Š” augmentation

    • cutmix์™€ ์ฐจ์ด์  : cutmix๋Š” ์ž๋ฅธ ์‚ฌ์ง„์ด ๋‹ค๋ฅธ ์‚ฌ์ง„์„ ๊ฐ€๋ฆฌ๋Š” ๊ตฌ์กฐ, Mosaic์€ 4์žฅ์˜ ๋žœ๋คํ•˜๊ฒŒ ์ž๋ฅธ ์‚ฌ์ง„์„ ํ•˜๋‚˜๋กœ ํ•ฉ์น˜๋Š” ๊ตฌ์กฐ

      mosaic

    • Mixup

    • RandomRotate90

    • HueSaturationValue

    • CLAHE

    • RandomBrightnessContrast

    • RGBShift

    • Blur

    • MotionBlur

    • GaussNoise

    • ShiftScaleRotate

    • Multi-scale

4. ์‚ฌ์šฉํ•œ ๊ธฐ์ˆ 

  1. Add Data

    • ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ์ด์šฉ์€ ๋Œ€ํšŒ ๊ทœ์น™ ์ƒ ๊ธˆ์ง€
    • ๋งˆ์Šคํฌ์™€ BBOX๋ฅผ ์ด์šฉํ•ด์„œ ์›ํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋ถ„๋ฆฌํ•ด์„œ ๋‹ค๋ฅธ ์ด๋ฏธ์ง€์— ๋ถ™์ผ์ˆ˜ ์žˆ์„๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐ.
    • ๋ฐ์ดํ„ฐ์ƒ์—์„œ Battery, Clothes, Metal, PaperPack, Glass ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๋ถ€์กฑํ•œ๊ฒƒ์œผ๋กœ ๋ฐ”์•…ํ•ด์„œ ํ•ด๋‹น ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ธฐ์กด ์ด๋ฏธ์ง€์— ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฆ๊ฐ•.
    • ๋ถ€์กฑํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋œ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๊ฐ 500๊ฐœ์”ฉ ์ฆ๊ฐ€
    • ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ ํ›„ ๊ธฐ๋ณธ ๋ฒ ์ด์Šค ๋ผ์ธ ์ฝ”๋“œ๋กœ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ 0.05์ •๋„ ์ ์ˆ˜ ์ƒ์Šนํ•ด์„œ ํด๋“œ๋ณ„๋กœ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€
    • SWIN_T์—์„œ๋Š” ๋งˆ์Šคํฌ ๋ถ€๋ถ„์ด ์ƒˆ๋กœ ์ƒ์„ฑ๋œ ์ด๋ฏธ์ง€์— ์กด์žฌํ•˜์ง€ ์•Š์•„ ์ ์šฉํ•˜์ง€ ๋ชปํ•จ.
  2. WBF

    • ์—ฌ๋Ÿฌ๊ฐœ์˜ bounding box๋ฅผ ๊ฐ๊ฐ์˜ ํ™•๋ฅ ์„ ๊ฐ€์ค‘ํ‰๊ท ์œผ๋กœ ํ•˜์—ฌ ํ•˜๋‚˜์˜ bounding box๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ์‹
  3. Pseudo-Labeling

    • ๊ธฐ๋ณธ๋ชจ๋ธ : Fold = 2 / size = 640 / EfficientDetD6
    1. ๊ธฐ๋ณธ๋ชจ๋ธ์„ 10 epoch ํ•™์Šต

      • ํ•™์Šต ๋ฐ์ดํ„ฐ๋Š” ๊ธฐ๋ณธ train data + Pseudo-Labeling test data mixup
    2. 1์—์„œ ํ•™์Šตํ•œ ๋ชจ๋ธ์„ ๋‹ค์‹œ 6์—ํญ๋™์•ˆ ํ•™์Šต

      • ํ•™์Šต ๋ฐ์ดํ„ฐ๋Š” ๊ธฐ๋ณธ train data + 1๋‹จ๊ณ„ ๋ชจ๋ธ Pseudo-Labeling test data mixup
  4. WBF hyperparameter

    • IOU threshold ์™€ Skip box threshold ์กฐ์ •
    • IOU threshold๋Š” ํŠน์ • ์ž„๊ณ„๊ฐ’ ์ดํ•˜๋กœ ๋‚ด๋ฆฌ๋ฉด ์˜คํžˆ๋ ค ์„ฑ๋Šฅ์ด ํ•˜๋ฝ
    • Skip box threshold๋Š” ๋‚ฎ์€ ๊ฐ’์ธ ๊ฒฝ์šฐ, test data visualization ์‹œ ์ง€๋‚˜์น˜๊ฒŒ ๋งŽ์€ ๋ฐ•์Šค๊ฐ€ ์กด์žฌํ•˜์—ฌ ์ง๊ด€์ ์œผ๋กœ๋Š” ๋‚ฉ๋“ํ•˜๊ธฐ ์–ด๋ ค์›€
    • ์ตœ์ข…๊ฐ’
    • IOU threshold : 0.4, Skip box threshold : 0.01

5. Ensemble

  • ์ด 26๊ฐœ ๋ชจ๋ธ์„ WBF์™€ threshold ์ตœ์ ํ™”๋ฅผ ์ด์šฉํ•˜์—ฌ ์•™์ƒ๋ธ”
  • stratified kfold๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ์…‹์„ 5๊ฐœ(fold0,fold1,fold2,fold3,fold4)๋กœ ๋‚˜๋‰˜์–ด ํ•™์Šตํ•˜์—ฌ ์•™์ƒ๋ธ”
  • ๊ธฐ์ค€(0.5์ด์ƒ)์„ ๋„˜๊ธด ๋ชจ๋ธ ์•™์ƒ๋ธ” ๋ชฉ๋ก
    • YOLO v5
      • fold0, fold1, fold2, fold3, fold4
      • augment์ ์šฉ fold0 ,fold1, fold2, fold3
      • fold4(img size 256)
    • Swin T
      • fold0, fold1, fold2, fold3
      • fold4(img size 768)
    • Cascade R-CNN
      • ResNet50
        • fold0, fold1, fold2, fold3
        • trainall data
      • ResNet101
        • fold0, fold1, fold2, fold3, fold4
        • train all data

6. ์‹คํŒจํ•œ ๋ถ€๋ถ„

  • pseudo labeling
    • ํ…Œ์ŠคํŠธ ๋ฐ์ดํ„ฐ์…‹์„ inference ํ•˜๋ฉด csv ํŒŒ์ผ์ด ์ƒ์„ฑ๋œ๋‹ค. LB ์„ฑ๋Šฅ์ด ๊ฐ€์žฅ ์ข‹์€ ๊ฒฐ๊ณผ ํŒŒ์ผ์„ csv ํŒŒ์ผ์„ ๊ธฐ์ค€์œผ๋กœ pseudo labeling ์„ ์ƒ์„ฑํ•œ๋‹ค.
    • BBox ์„ฑ๋Šฅ์ด 0.75 ์ด์ƒ์˜ ๊ฐ’๋งŒ ์ฝ์–ด COCO dataset ์˜ ํŒŒ์ผ์ธ pseudo.json ํŒŒ์ผ์„ ์ƒ์„ฑํ•œ๋‹ค.
    • pseudo.json ํŒŒ์ผ๋กœ ๋ชจ๋ธ์„ ์žฌํ•™์Šต์‹œํ‚จ ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ์˜ฌ๋ฆฐ๋‹ค.

Reference

Paper

GIt

Site & Kaggle

ํŽธ์˜ ๊ธฐ๋Šฅ

About

Trash image segmentation & object detection project

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 81.0%
  • Python 19.0%