프로그래밍 공부
카테고리
작성일
2022. 11. 2. 17:18
작성자
WDmil
728x90

MICCAI 에서 2015년도에 만들어진 논문. 이미지 학습 알고리즘의 기본적인 논문임.

 

의료 영상쪽 이미지 세그먼테이션을 위해 만들어짐

 

세그먼테이션

배경 내의 이미지 인식법에 대해서는 다양한 유형이 있음.

Singl object

하나의 이미지 안에 하나의 객체만 존재 할 때

 

Classification = 고양이가 있다면 고양이가 있는 이미지 라고. 하나의 이미지로 분류 하는것

Classification + Localization = 고양이가 있는 이미지라고 분류하고, 이미지 내부의 고양이 위치까지 표현하는것

  • Localization = 지역화 라는 의미가 있음. 무언가 있는 지역 이라고 해석하면 된다.

Multible objects

하나의 이미지 안에 여러개의 객체가 존재 할 때

 

Object Detection = 하나의 이미지 안에 여러개의 객체가 존재하는 것에서 객체의 위치에 Localization을 수행하고, 각각의 객체마다 어떤 클레스에 해당하는지 의 분류를 동시에 수행하는 것.

 

Instance Segmentation = 그냥 세그먼테이션 이라고 하기도 함, 하나의 이미지 안에 여러 오브젝트가 존재하는 상황에서 각 객체를 사각형으로 표시하는것 외에도 객체의 픽셀마다 어떤 클래스인지 예측하는 방향으로 모델이 동작하게 된다.

 

 

즉, Segmentation 은 각 픽셀마다 클레스를 할당하는 작업을 의미합니다.

일반적인 분류(Classification)은 단일이미지를 하나의 클래스로 분류하나,

분할(segmentation)에서는 각 픽셀마다 하나의 클래스로 분류한다.

 

각 이미지의 픽셀마다 클레스 레이블을 예측하는게 Semantic Segmentation의 목표

이미지가 주어졌을 때 (높이, 너비, 1) 크기를 가지는 한장의 분할 맵을 생성한다.

각 픽셀마다 N개의 클래스에 대한 확률(probability)를 뱉어야 함으로, 정답값은 (높이X너비XN)형태를 갖는다.

각 픽셀마다 원-핫 인코딩 (one-hot encoding)방식을 따른다.

 

그러나, 분할 작업을 위한 데이터 세트 생성 비용은 매우 비싸다.

각 픽셀마다 어떤 클래스로 분류되는지 일일이 지정해야 하기 때문,

하지만, 일반적인 CNN분류 모델의 형식을 크게 바꾸지 않고 학습 가능,

일반적인 딥러닝 네트워크의 구조가 크게 어렵지 않은 편이라는 장점이 있다.

 

CNN의 동작과정

CNN에서는 필터, 혹은 커널이라 불리는것을 사용한다.

각 필터는 입력에서 특정한 특징을 잡아내어 특징 맵을 생성한다.

하나의 필터는 슬라이딩 하면서, 컨볼루션 연상르 통해 특징 맵을 연산.

인풋 이미지가 필터(커널)을 통과하면서 해당되는 픽셀에 1을 곱해주고, 나온 값을 다 더해주면 오른쪽 Feature map이 생성된다.

 

728x90

'알고리즘' 카테고리의 다른 글

머신러닝 프로세스 ( 선형회귀 )  (0) 2024.06.13
Q & Optimal Policy  (1) 2024.06.09
MDP ( Markov Decision Process )  (1) 2024.06.09
Greedy Action으로 알아보는 Q-Learning  (0) 2024.06.07
Quick Sort 알고리즘  (0) 2024.05.15