• 티스토리 홈
  • 프로필사진
    Cat_Code
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
Cat_Code
  • 프로필사진
    Cat_Code
    • 분류 전체보기 (117)
      • [네이버 부스트캠프] (46)
        • ⭐주간 학습 정리 (43)
        • 🎶추가 학습 정리 (3)
      • [연습의 흔적들] (27)
        • 백준⚾ (26)
        • 캐글 & 데이콘 🤝 (1)
      • [ML] (23)
        • 머신러닝 💕 (5)
        • 딥러닝 🔫 (10)
        • 데이터 분석 🖤 (1)
        • 수학 ☑️ (4)
        • LLM🦜 (3)
      • [CS] (17)
        • 파이썬 🖤 (13)
        • 해체 분석기📝 (3)
        • Service Product (1)
        • MultiMedia (0)
      • [개발일지] (2)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • Unet 계열 - 1편 Unet
        2023년 06월 14일
        • Cat_Code
        • 작성자
        • 2023.06.14.:49

        오늘은 Sementic Segmentation을 위해 등장한 모델인 

        Unet 계열의 모델에 대해서 알아보려고 한다

         

        먼저 Unet을 살펴보고 이를 발전 시킨 Unet++, Unet3+ 모델에 대해서 자세히 알아보자

         

        목차

        1. Unet

        2. Unet++

        3. Unet3+


        1. Unet

        Paper : https://arxiv.org/abs/1505.04597

         

        U-Net: Convolutional Networks for Biomedical Image Segmentation

        There is large consent that successful training of deep networks requires many thousand annotated training samples. In this paper, we present a network and training strategy that relies on the strong use of data augmentation to use the available annotated

        arxiv.org

        Unet은 2015년 Biomedical 분야에서 이미지 분할(Image Segmentation)을 목적으로 만들어진 모델이자

        모델의 이름에서 알 수 있듯이 모델의 구조를 U자 형태로 구성하여서 좋은 성능의 모델을 만들어 냈다

        Unet

        Unet은 크게 3가지의 구성단계로 이루어져 있다

        1. 수축 단계 Contracting Path

        2. 팽창 단계 Expanding Path

        3. Skip Connection

         

        차근차근 살펴보자

         

        우선 위 3단계를 이해하기 위해서는 FCN을 이해하고 있어야한다

         

        FCN 논문 리뷰 — Fully Convolutional Networks for Semantic Segmentation

        딥러닝 기반 OCR 스터디 — FCN 논문 리뷰

        medium.com

         

        Sementic Segmentation에서는 우선 Input의 이미지를 활용해서 이미지의 전체적인 Context을 추출하는 수축단계가 있다

        또한 이렇게 수축된 Feature Map을 다시 Up sampling 하면서 Pixel의 위치 정보를 추출하는 Localization 단계인 팽창 단계가 있다

         

         

        1. Contracting Path

        수축단계는 각 단계 마다 3x3 conv를 수행하고

        이때 padding을 사용하지 않기 때문에 feature map의 크기가 조금씩 줄어든다

        그리고 각 conv 연산 마다 ReLU 활성화 함수를 사용하다

         

        그리고 다음 수축 단계로 넘어 갈때에는 2x2 max pooling을 사용해서 - stride 2 feature map의 크기를 절반으로 줄여준다

        또한 이 단계에서 feature map의 채널의 수가 2배씩 증가하게 된다

         

        논문에서는 VGG 구조를 활용해서 해당 단계가 진행된다


         

        2. Expanding Path

        이렇게 만들어진 feature map을 이용해서 다시 원본 사진의 크기만큼 Up sampling 해주는 단계가 

        Expanding Path 단계가 있다

        단계를 넘어갈때 Up conv를 활용해서 feature map의 크기를 늘려주고

        채널을 2배씩 감소시켜 준다

         

        그리고 각 단계에서는 3x3 conv를 2번씩 실행해주고 똑같이 ReLU 활성화 함수를 사용해준다


        3. Skip connection

        Contracting Path과 Expanding Path 사이에 Skip connection 구조가 추가되어 있다

         

        즉, Contracting path의 정보와 Expanding path의 정보를 합쳐주는 역할을 한다

        방법은 간단하다

         

        Contracting에서 만들어진 단계별 feature map을 Expanding 각 단계의 첫 번째 feature map과 사이즈를 맞춰서 (padding) 

        Concat을 해준다 (add가 아니다)


         

        추가적인 학습 방법

        Unet에서는 뿐만 아니라 다양한 학습 방법을 활용해서 모델의 성능을 항샹시켰다

        Overlap-Tite Input

        Fully Convolutional Network 구조의 특성상 입력 이미지의 크기에 제약이 없다.

        하지만 이러한 크기 제약의 부재는 오히려 학습을 어렵게 만든다

        따라서 본 논문에서는 이를 Overlap-tite전략으로 보완하였다

        쉽게 말해서 위의 사진의 파란영역을 입력으로 넣으면

        노란 영역을 segmentation 결과가 나온다

        다음 tile에 대한 Segmentation을 얻기 위해서는 이전 입력의 일부분이 포함되어야 한다.

        이미지의 경계 부분 픽셀에 대한 세그멘테이션을 위해 0이나 임의의 패딩값을 사용하는 대신 이미지 경계 부분의 미러링을 이용한 Extrapolation 기법을 사용하였다.

        Touching cells separation

        또한 해당데이터의 경우 동일한 세포가 겹쳐져 있는 경우가 있는데 이런경우

        경계가 매우 어려워진다

        따라서 이를 구별하는 방법이 필요했다

        즉, 각 세포 사이의 경계를 잘 파악해야한다

        이를 위해 학습 데이터에서 각 픽셀마다 클래스 분포가 다른 점을 고려하여

        사전에 Ground-Truth에 대한 Weight map을 구해 학습에 반영하였다

         

         

         

         

        U-Net 논문 리뷰 — U-Net: Convolutional Networks for Biomedical Image Segmentation

        딥러닝 기반 OCR 스터디 — U-Net 논문 리뷰

        medium.com

         

        '[네이버 부스트캠프] > ⭐주간 학습 정리' 카테고리의 다른 글

        Unet 계열 - 2편 Unet ++, Unet3+  (0) 2023.06.15
        EfficientDet  (0) 2023.05.10
        1 Stage Detectors  (0) 2023.05.09
        Neck  (0) 2023.05.08
        2 Stage Detectors  (0) 2023.05.03
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바