boostcampaitech3 / level2-semantic-segmentation-level2-cv-17

[2022.04.25 ~ 2022.05.12] Recycle Trash Semantic Segmentation Competition - 부스트캠프 AI Tech 3기
4 stars 2 forks source link

[feat] Augmentation setup #13

Closed baekkr95 closed 2 years ago

baekkr95 commented 2 years ago

What is this PR?

Changes

To reviewers

돌려본 결과 에러는 없었습니다.

Dongwoo-Im commented 2 years ago

각자 원하는 방식으로 transform.py를 수정하는 것이 목적이라면, wandb_setup.py처럼 github에는 올리지 않고 여기 댓글에 적어주시는게 좋을것 같습니다.

baekkr95 commented 2 years ago

PR 할때도 augmentation 부분을 일일이 변경 안해도 좋을 것 같고, argparser나 sweep으로도 관리가 가능할 것 같아서 넣으면 편할 것 같아요

댓글에 적는다는게 여기 코멘트에 어떤 augmentation을 쓰고 있는지 각자 적어서 관리한다는 뜻인가요?

Dongwoo-Im commented 2 years ago

github에 transform.py가 한 번 올라가면 이것을 계속 추적하기 때문에, 다른 branch로 git checkout을 하기 위해서는 transform.py의 변경사항을 계속 지워줘야 합니다. 그래서 아래처럼 적어두고, github에는 올리지 않는 게 좋을 것 같다고 말한 것이었습니다.

그런데 args나 config로 transform.py를 관리할 생각이라면, 일단 올려두고 해당 기능을 추가 구현한 다음에 나중에 지워도 될 것 같습니다.

transform.py

import albumentations as A
from albumentations.pytorch import ToTensorV2

# Segmentation 대회 추천 Augmentation
'''
A.HorizontalFlip(),
A.VerticalFlip(),
A.ChannelShuffle(),
A.GaussNoise(),
A.RandomBrightness(),
A.CLAHE(),
A.ColorJitter()     
Elastic Transform??
'''
# 여기서 각자 원하는 augmentation 조합을 만들면 됩니다.
# 나중에 argparser로 관리도 가능할 듯

def train_transform(preprocessing_fn):
    return A.Compose(
        [
            A.Resize(512, 512),
            A.Lambda(image=preprocessing_fn),
            ToTensorV2(),

        ]
    )

def valid_transform(preprocessing_fn):
    return A.Compose(
        [
            A.Resize(512, 512),
            A.Lambda(image=preprocessing_fn),
            ToTensorV2(),
        ]
    )
Dongwoo-Im commented 2 years ago

돌려보고 있는데 에러 없는 것 확인되면, 이름 같은거만 간단하게 수정한 상태로 commit 해두겠습니다!

baekkr95 commented 2 years ago

네. 그리고 피어세션때 얘기해보면 좋을 것 같아요