2017-11-04 2 views
0

SIFT와 SVM을 사용하여 이미지를 두 클래스로 나눕니다. 결함입니다. 이미지 유형에 따라 5 ~ 100 개의 SIFT 설명자를 추출 할 수 있습니다. 다음은 지금까지 다음 한 단계는 다음과 같습니다SIFT는 차원 감소를 특징으로합니다

  • 추출 (의 변수 번호) 이미지에서 기능을 SIFT는;
  • 모든 이미지에서 일정한 수의 벡터 (K-Means center)를 갖기 위해 K-Means 클러스터링을 수행합니다.
  • 이전 단계에서 찾은 중심을 연결하여 행 벡터를 형성하십시오.이 벡터는 학습 세트의 단일 요소가됩니다.
  • 반복 이전 단계와
  • 기차 SVM (크기에게 NUM_IMAGES X 128이있을 것이다)와

교차 유효성 검사 정확도 성능 평가 훈련 매트릭스를 형성은 약 85 %이며, 아주 많이 변경하지 비선형 (폴리곤 또는 rbf) 커널이 사용되는 경우, 개선 사항은 더 나은 기능을 설계함으로써 만 달성 될 수 있다고 생각합니다. 내가 고민하고있어 문제가 있습니다 : 내가 사용할 수있는 클러스터의

  • 수는 (그렇지 않으면 내가 SIFT 기술자의 낮은 숫자로 이미지를 분석 할 수 없습니다) 조금 그러므로, 나는 제외 단어 접근 방식의 가방을 따라.
  • 입력 벡터의 차원은 또한 내가 PCA를 사용하여이 차원을 줄이기 위해 노력하고있어 K.
  • 의 선택을 제한

하는 높은 (분산의 90 %는 10 개 구성 요소에 의해 설명 될 수 있습니다) 그러나 나는 그것을 적용 할 위치에 대해 잘 모르겠습니다. 내가 그 이론을 이해한다면, 모든 이미지에 대해 개별적으로 PCA를 수행하는 것은 의미가 없습니다. 이전과 동일한 접근법을 사용해야하고, 훈련 행렬을 구성한 다음 수행해야합니다. PCA? 그리고 평가 과정에서 주 구성 요소를 선택해야합니까 (한 번에 하나의 이미지를 테스트해야합니까)?

내 제약 사항을 감안할 때 다른 방법 (예 : K-Means 사용을 피하고 일정한 수의 SIFT 기능을 얻는 것과 같은 방법)이 있습니까?

답변

0

Bag of Words method을 다소 발명하지 않았습니까?

+0

예, 일종의입니다. 그러나 Bag of Words 방법을 올바르게 이해한다면 절차의 마지막 단계에서 각 이미지는 코드 워드의 히스토그램으로 표시됩니다. 즉, 각 구성 요소가 특정 클러스터에 할당 된 SIFT 설명자의 수를 나타내는 K 차원 벡터 . 필자의 경우에는 K가 작아야하므로 (5-7) 분류 자에 대한 입력은 저 차원이며, (비선형 커널을 사용하는 경우에도) 정확도는 낮습니다. – user1046

관련 문제