일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Community Day
- kakao
- Backend.AI
- API
- SageMaker
- 머신러닝
- OPENHACK
- aws
- 스터디 잼
- Ground Truth
- rl
- BOAZ
- gcp
- 오픈소스해커톤
- entity
- 뉴비톤
- CSIP
- seq2seq
- Qwik Start
- 해커톤
- 구글스타트업캠퍼스
- Conference
- Open Hack
- ainize
- SW중심대학
- 코딩테스트
- GDG Campus
- re:Invent
- Tensorflow 2.0
- Speech
- Today
- Total
pizzaplanet
Image에서의 Feature Extraction 본문
Feature Extraction
피쳐는 예측모델에 들어갈 데이터이다. 예측을 위해서 데이터를 입력할 때 Raw Data가 아닌 Feature를 입력해야 한다.
쉽게 예를 들면 게임 내에서 무언가를 예측한다고 하자.
Raw Data는 각 유저의 접속시간 종료시간이 있을때 이 두개를 이용(종료시간-접속시간)하여 플레이 시간 예측모델에 Feature로 입력하는 것.
이 외에도 각 유저의 총 log 갯수 등을 Feature로 이용할 수도 있다.
또 다른 예로 들자면 Raw Data로 각 생선의 이미지를 준다면 Feature는 이미지 속 생선의 색, 가로길이 등이 될 수 있다.
클래스 내 변동성: 같은 클래스에 속한 오브젝트간의 차이를 일컫는다.
클래스 간 변동성 - 서로 다른 클래스의 오브젝트 차이를 일컫는다.
Statistical Features
First-order Statistics (Histogram)
통계적으로 뽑을 수 있는 Feautre들이다.
- 평균( 또는 중앙값)
- 표준편차
- 최대, 최소간의 차이
- 왜도
- 첨도
Skewness(비대칭도, 왜도)
확률 분포에서 평균에 대한 비대칭 측정. 실수 값 확률 변수의 확률 분포 비대칭성을 나타내는 지표이다. 말이 참 어렵다.
쉽게 말하면 분포가 어디로 편향되어 있나 뜻이다. 그림을 통해 보자.
Cs=3*(Mean-Median)/Mode
Positive Skew(정적편포): Cs > 0 / 그림과 같이 왼쪽으로 치우치고 오른쪽으로 긴 꼬리를 가지는 분포를 이룬다. 자료가 좌측에 더 많이 분포.
Symmetrical Distribution(정규분포): Cs == 0 / Mean, Median, Mode 값이 일치하면 정규분포를 이룬다.
Negative Skew(부적편포): Cs < 0 / 오른쪽으로 치우치고 왼쪽으로 긴 꼬리를 가지는 분포를 이룬다. 자료가 우측에 더 많이 분포.
kurtosis(첨도)
확률분포의 뾰족한 정도를 나타내는 척도. 분포가 얼마나 퍼져있는지 알 수 있다.
Geometric Features
Compactness(Roundness)
우리가 판독해야 할 Area에 대해 얼마나 조밀하게 Perimeter을 그었는지를 뜻한다.
원의 경우 C=1(minimum)이 되며 모양이 복잡해질수록 C는 증가한다.
Curvature
기울기 변화율을 나타낸다.
연속적인 경우: 미분을 써서 구해주자.
이산인 경우:
- 한 포인트를 찍고 간격을 설정한다. (예, 3픽셀 간격)
- 한 포인트에서 다음 3픽셀이후 포인트 사이의 곡률을 구한다.
- 모든 곡률값의 합을 구한다.
- 더 복잡한 모양일수록 c(curvature)는 증가한다.
Diameter(Major-Minor axis)
- Major axis(Diameter): Perimeter을 연결하는 최장거리
- Minor axis: Major axis의 수직방향 중 최장거리
- Eccentricity(이심율): 타원의 찌그러진 정도를 뜻한다.
Bounding Box
- Extent
- Solidity
Texture Features
텍스쳐를 설명해보라 하면 설명하기가 쉽지 않은데 아래와 같이 정의를 해볼 수 있다.
- 텍스쳐공간을 나타내는 텍셀의 배열로 표현(텍셀은 텍스쳐의 기본단위)
Aspects of Texture
Edge
- 엣지란 변화가 일어나는 곳
- 변화는 미분으로 측정 가능하다.
- 1차 미분은 최대 크기를 가짐
- 2차 미분계수는 0
Image Gradient
- 이미지의 Gradient는 미분을 통해서 구한다.
- 기울기 방향은 다음 식에 의해 주어진다.
- Edge strength는 gradient magnitude로 나타낸다.
Edge Detection
엣지를 디텍션하는 방법이 여러가지(Sobel, Prewitt etc...)가 있겠지만 Canny Edge Detector가 성능이 좋아 CED를 쓰고 있다.
GLCM(Gray Level Co-occurrence Matrix)
왼쪽 매트릭스에 0~2의 수. 즉, 3(N)가지 수가 있다. 이를 이용하여 3 x 3(N x N) 매트릭스를 만들며 각 셀에 값을 매겨주는데 이 방법을 알아보자.
1. x픽셀의 값에서 바로 오른쪽 y픽셀의 값이 연결되는 상황을 카운트
0 -> 0= 4 (좌측매트릭스의 0,0=0, 0,1=0 이므로 1개가 카운트가 되고 이와 같은 상황을 모두 찾는다)
0 -> 1= 4
0 -> 2 = 1
1 -> 1 = 3
1 -> 2 = 1
2 -> 2 = 1
2. 각 카운트 된 값을 N x N 매트릭스의 픽셀에 대입
값은 (x,y), (y,x)에 대입하면 된다. 0 -> 2 = 1을 예로 들면 (0,2)와 (2,0)에 1을 대입하면 되는 것.
이렇게 N x N의 매트릭스를 완성하면 우측 매트릭스와 같이 결과가 나오며 앞에 1/20은 임의로 넣은 값이다.
만약 N이 255라면 NumLevel을 9로 설정하여 9 x 9 매트릭스가 도출되도록 한다.
Numlevel 1 = 0~28
Numlevel 2 = 29 ~ 57
.
.
.
Numlevel 9 = 227 ~ 255 인 셈.
GLCM의 Features
- Contrast(대비)
- Energy(엘리먼트 제곱의 합)
- Homogeneity(GLCM 대각선에 대한 GLCM 엘리먼트의 근접성)
- Entropy(Randomness of gray level intensities)
Gabor Filters
Local Binary Pattern(LBP)
픽셀의 그레이 레벨과 해당 지역의 이웃을 비교한다. 그림을 통해 빠른 이해를 해보자.
좌측 매트릭스의 센터이는 6이 있고 그 주변 픽셀들이 이웃 픽셀이 된다. 센터값보다 이웃픽셀의 값이 크면 1을 매겨주면 중앙 매트릭스를 구할 수 있다. 그리고 우측매트릭스처럼 Weights를 부여하여 LBP값을 도출할 수 있다.
- Multiscale LBP
LBP 스케일을 다양하게 할 수 있는데 이웃 픽셀을 늘리면 된다. 지금은 이웃픽셀이 8개 였지만 16개로 늘리면 스케일이 증가하게 된다.
- LBP: Uniform Patterns
White dot이 값이 채워진 것(1)이라 보면 되고 각 값에 대해 위와 같은 패턴을 같는다.
- LBP: Rotation Invariance
위치만 다를 뿐 모두 같은 패턴이다. 그리고 이러한 성질을 이용하여 값일 shift하여 최소값을 취한다.
위와 같은 경우에는 000111000, 01110000 등이 올 수 있으며 이 중 00000111을 취하는 것.
'Univ. > Pattern Recognition lecture' 카테고리의 다른 글
조건부 확률밀도함수 Conditional Probability density function (0) | 2018.04.24 |
---|---|
결합 확률밀도함수 Joint Probability density function (continuous r.v.) (0) | 2018.04.24 |
결합 확률질량함수 Joint Probability mass function (discrete case) (0) | 2018.04.24 |
확률 분포 함수 Probability Distribution Function (0) | 2018.04.24 |
확률 밀도 함수 Probability density function(pdf) (0) | 2018.04.24 |