2015-01-12 3 views
1

opencv svm을 사용하여 알파벳 분류를 구현하고 있습니다. 특징 벡터를 정규화하는 데 의심의 여지가 있습니다. 특성 벡터를 정규화하는 두 가지 방법이 있습니다. 논리적으로 올바른 정규화 방법을 찾아야합니까 ??최소 최대 정규화를 수행하는 올바른 방법

[2, 3, 8, 5 ] -> image 1 
[3, 5, 2, 5 ] -> image 2 
[9, 3, 8, 5 ] -> image 3 

을 따르고 특징 벡터의 각 값은 커널 인으로 화소를 컨볼 루션하여 얻어지는로 가정하자 1

방법 I 3 특징 벡터를 갖는다.

현재 각 열의 최대 값과 최소값을 찾고이를 기반으로 정규화를 수행하고 있습니다. 상기의 경우 첫 번째 열에

[2, 3, 9]

min = 2 
max = 9 

및 제 칼럼이 정규화에 기초하여 수행된다. 커널 인 인 경우 다음과 같이 유사하게 다른 모든 칼럼 (8 비트 화상을 다음과 같이 최대 값과 최소값이 상기 커널을 콘볼 루션하여 얻어지는 수

[-1 0 1] 
[-1 0 1] 
[-1 0 1] 

방법 2

정규화 - 강도 범위 : 0-255)

max val = 765 
min val = -765 

그리고 위의 최대 분으로 모든 값을 정규화 하시겠습니까?

정규화 (방법 -1 또는 방법 -2)를 수행하는 논리적으로 올바른 방법은 무엇입니까?

답변

1

표준 방법은 방법 -1입니다 (this question에 대한 대답 참조). 나는 또한 svm 훈련에 관하여 좋은 참고를 위해 this paper를 읽는 추천한다.

그러나 동일한 커널로 계산 된 모든 피쳐의 범위는 비슷할 것이고 method-1은 (예를 들어 거의 일정한 피쳐의 노이즈를 증가시킴으로써) 도움이되는 것보다 많은 것을 아플 수 있습니다.

내 조언은 다음과 같을 것입니다. 두 가지 방법을 모두 테스트하고 실적을 평가하여 자신의 경우에 가장 적합한 결과를 확인하십시오.

+0

(각도, 무게, 밝기 등) 우리의 특징과 관련이 없다면 다른 최소 - 최대 값으로 각 열을 정규화하면 문제가 발생하지 않을 것입니다. 내 경우에는 각 영역에서 피쳐를 추출하고 있으므로 물건의 순서가 중요합니다 (이 경우에는 method2와 같이 min-max를 사용해야한다고 생각합니다) – Deepak