논문
https://www.mdpi.com/2220-9964/8/12/549
모델 파이프라인
새벽/황혼, 낮, 밤, 눈부심, 비, 눈, 안개를 각각 감지하는 4개의 심층 CNN 모델로 구성
(1) NightNet은 새벽/황혼, 낮과 밤의 차이를 감지합니다. 기상 조건과 도시 구조의 역동성에도 불구하고 거리 수준 이미지의 미묘함을 이해하는 것을 목표로 합니다.
(2) GlareNet은 다양한 기상 조건의 새벽/해질녘, 낮과 밤 모두에 대해 광원(태양 또는 인공 조명)에 관계없이 눈부신 이미지를 감지합니다. 눈부심은 보정 없이 카메라 길이에 링이나 별 효과를 일으키는 것으로 볼 수 있는 직접적인 광원으로 정의됩니다.
(3) PreciptationNet은 낮과 밤 모두 맑은 날씨, 비가 오는 날씨, 눈 오는 날씨를 감지합니다.
(4) FogNet은 새벽/황혼의 안개 발생을 감지합니다.
모델 2와 4는 앞서 언급한 이벤트 중 하나가 발생하는지 여부를 감지하는 이진 분류기(0,1)로 학습된 반면 모델 1과 3은 세 가지 클래스 중 하나를 출력하도록 학습되었습니다
방법론
pretrained 모델 4개를 정의하고
input형식을 dict형식으로 넣어줘야겠습니다.
각각 loss를 구해서 loss합치면 될듯한데
loss값이 1.6에서 안떨어지네요 조금 더 연구해봐야겠습니다.
model define
class model1(nn.Module):
def __init__(self, num_classes=):
super(model1, self).__init__()
def forward(self, x):
class model2():
def __init__(self, num_classes=):
super(model2, self).__init__()
def forward(self, x):
class model3():
def __init__(self, num_classes=):
super(model3, self).__init__()
def forward(self, x):
class model4():
def __init__(self, num_classes=):
super(model3, self).__init__()
def forward(self, x):
train
def train(**arg)
...
output1 = model1(image)
output2 = model2(image)
output3 = model3(image)
output4 = model4(image)
label1_ = output1['label1']
label2_ = output2['label2']
label3_ = output3['label3']
label4_ = output4['label4']
loss1=nn.CrossEntropyLoss(preds,trues)
loss2=nn.CrossEntropyLoss(preds,trues)
loss3=nn.CrossEntropyLoss(preds,trues)
loss4=nn.CrossEntropyLoss(preds,trues)
loss = loss1 + loss2 + loss3 + loss4
loss.backward()
# grad
optimizer.step()
validation
def validation():
train과 동일하게 loss계산
nn.BCELoss(), nn.CrossEntropyLoss() 마저 찾아보기
CLASStorch.nn.BCELoss(weight=None, size_average=None, reduce=None, reduction='mean')
>>> m = nn.Sigmoid()
>>> loss = nn.BCELoss()
>>> input = torch.randn(3, requires_grad=True)
>>> target = torch.empty(3).random_(2)
>>> output = loss(m(input), target)
>>> output.backward()
https://pytorch.org/docs/stable/generated/torch.nn.BCELoss.html#torch.nn.BCELoss
'영상처리 > 논문' 카테고리의 다른 글
Vision Transformer(ViT) : An Image Worth 16 x 16 Words (109) | 2023.05.15 |
---|---|
[ResNet]Deep Residual Learning for Image Recognition 리뷰 (0) | 2023.01.26 |
DreamBooth: Fine Tuning Text-to-Image Diffusion Models for Subject-Driven Generation(주제 기반 미세조정 텍스트-이미지 확산 모델) (0) | 2022.12.15 |
논문 읽는법 (10) | 2022.12.14 |
다중 클래스 아다부스트 알고리즘 (0) | 2022.12.13 |