Image Segmentation
- 이미지에서 픽셀 단위로 영역을 분리하는 것
- Semantic segmentation
- 이미지의 각 픽셀이 어느 클래스에 속하는지 알아내는 것
- 대표적 모델 : FCN (Fully Convolution Networks)
- Instance segmentation
- semantic segmentation에서 한 발 더 나아가 같은 클래스의 객체들도 각각의 instance로 구분해내는 것.
Semantic Segmentation
semantic segmentation의 목적과 대표 알고리즘 FCN의 원리
요즘 semantic segmentation을 활용하는 연구를 하나 진행하고 있다. semantic segmentation, 이름만 봐서는 이것이 무엇인지 감이 안오는 분들이 있을 것이다. 구지 번역하자면 '의미적 분할' 정도로 번역이
bskyvision.com
- AlexNet, VGGNet 등 image classification용 CNN 알고리즘들은 일반적으로 convolution 층들과 fully connected 층들로 이루어져 있음. 항상 입력 이미지를 네트워크에 맞는 고정된 사이즈로 작게 만들어서 입력해주면 네트워크는 그 이미지가 속할 클래스를 예측해서 알려줌.
- 그렇지만 이러한 분류용 알고리즘들은 fully connected층에 들어서며 위치정보가 소실되어 그 물체가 어디에 존재하는지는 예측할 수 없음! 따라서 semantic segmentation 과제에 그대로 사용은 불가
- 위치 정보 소실 방지 & 입력이미지의 크기 제약 제거를 위해 알고리즘을 발전시킴
- 고정된 크기의 input만을 허용하는 fully connected 층을 1X1 컨볼루션층으로 바꿔줌
- 네트워크 전체가 convolution층들로 이루어져 입력이미지의 크기에 제한 X
- 여러 convolution층들을 거치고 나서 얻게 된 마지막 특성맵(heatmap)의 개수는 훈련된 클래스의 개수와 동일
- 각 특성맵은 하나의 클래스를 대표. 만약 고양이 클래스에 대한 특성맵이라면 고양이가 있는 위치의 픽셀값들이 높고, 강아지 클래스에 대한 특성맵이라면 강아지 위치의 픽셀값들이 높다.
- 이 대략적인(coarse0 특성맵들의 크기를 원래 이미지 크기로 다시 복원해주어야 함. 이미지의 모든 픽셀에 대해서 클래스를 예측하는 dense prediction을 해주는 것이 semantic segmentation의 목적이기 때문.
=> upsampling : 원래 이미지 크기로 복원하는 과정 - upsampling된 특성맵들을 종합해서 최종적인 segmentation map을 만듦 = 각 픽셀당 확률이 가장 높은 클래스를 선정해주는 것.
Semantic Segmentation tutorial 코드
https://hoya012.github.io/blog/segmentation_tutorial_pytorch/
Semantic Segmentation PyTorch Tutorial & ECCV 2020 VIPriors Challenge 참가 후기 정리
PyTorch를 이용하여 Semantic Segmentation Tutorial 코드를 만들고 ECCV 2020 VIPriors Workshop의 챌린지에 참가한 후기를 정리하였습니다.
hoya012.github.io
U-Net
https://blog.naver.com/johnny9696/222442405717
[PaperReview] U-Net Image Segmentation
연구실에서 진행하는 프로젝트에 사용하려고 하는 알고리즘이여서 리뷰를 하게 되었습니다. 이해한 부분들 ...
blog.naver.com
upsampling 관련 설명 참고 가능
transposed covolution
Mask R-CNN
https://ropiens.tistory.com/76
Mask R-CNN 리뷰
작성자 1 : 한양대학원 융합로봇시스템학과 유승환 석사과정 (CAI LAB) 작성자 2 : 한양대학교 로봇공학과 정석훈 학부생 오늘은 Pixel 단위로 물체를 localize하는 Segmentation 모델인 Mask R-CNN 논문 리
ropiens.tistory.com
https://ganghee-lee.tistory.com/40
(논문리뷰&재구현) Mask R-CNN 설명 및 정리
이전글 : (논문리뷰) Faster R-CNN 설명 및 정리 Faster R-CNN 설명 및 정리 이전글 : Fast R-CNN 설명 및 정리 Fast R-CNN 설명 및 정리 이전글 : Object Detection, R-CNN 설명 및 정리 Object Detection, R-CNN..
ganghee-lee.tistory.com
- 이미지 내에서 각 instance에 대한 segmentation mask 생성 (Classification + Localizing(pixel))
- Faster R-CNN + mask branch
- Mask branch : object의 mask를 예측하는 branch
Partial Convolutions
https://labcontext.github.io/restoration/partialconv/
[고문서복원] Partial Convolutions 논문 & 코드 리뷰
Partial Convolution
labcontext.github.io
기타
https://honeycomb-makers.tistory.com/14
무이메이커스_딥러닝을 활용한 Image Segmentation 프로젝트
프로젝트 진행 순서 1. Image Segmentation 개요 (Overview) 2. Custom Image Dataset 만들기 (Annotation) 3. Segmentation 딥러닝 모델 (Modeling) 4. Image 전처리 (Preprocessing) 5. 다양한 모델 별 성능 평..
honeycomb-makers.tistory.com
https://go-hard.tistory.com/118
[Part 1] Image Segmentation Using Deep Learning, A survey
Written by Shervin Minaee, Yuri Boykov, Fatih Porikli, Antonio Plaza, Nasser Kehtarnavaz, and Demetri Terzopoulos 논문에서 다루고자 하는 카테고리는 아래와 같으며, 3회에 걸쳐 리뷰해볼까 합니다. Fully..
go-hard.tistory.com
https://blog.naver.com/laonple/220873446440
[Part Ⅶ. Semantic Segmentation] 1. Image Segmentation 기본이론 [1] - 라온피플 머신러닝 아카데미 -
Part I. Machine Learning Part V. Best CNN Architecture Part VII. Semantic Segmentat...
blog.naver.com
'교육 > AI+X 융합 교육' 카테고리의 다른 글
NVIDIA Image Inpainting (0) | 2021.09.02 |
---|---|
[딥러닝] Activation function (0) | 2021.08.26 |
[Pytorch] 변형(Transform) (0) | 2021.08.20 |
[Pytorch] Dataset과 Dataloader (0) | 2021.08.20 |
[Pytorch] torchvision (0) | 2021.08.19 |