2017-02-27 3 views
0

matlab 컴퓨터 비전 시스템 도구 상자에 구현 된 bagoffeatures 기능에 문제가 있습니다.bagoffeatures 다른 유형의 기능을 추출합니다.

나는 diffenrets 커스텀 추출기로 bagoffeatures를 사용하려고하는데, 우선 2 가지 브랜치로 작업을 나누고 싶다. SURFpoint를 추출하고 3을 추출한다. 내가 내 사용자 지정 추출기에 다음 줄을 사용하는 경우 예를 들어 SURF BRISK 및 FREAK에 대한 설명의 다른 유형은 :

features = extractFeatures(grayImage,multiscaleGridPoints,'Upright',true, 'method', 'SURF'); 

을이에 allways SURF 방법은 작동하도록해야하지만 난 differents의 유형을 얻을 수 있어야합니다 기술 어의.

컴퓨터 비전 시스템 도구 상자의 기능 백 기능을 사용할 수 있습니까? 또는 surffeature 추출 만 지원합니까?

+0

설명서를 읽었습니까? 거기에 분명하지 않은 것이 있습니까? –

+0

네, 설명서를 읽고 기능을 테스트하고 해결책을 찾았습니다. 다른 유형의 설명자를 추출 할 수 있는지 알고 싶습니다. –

+0

당신은 그것을 읽지 않았습니다. 문서의 두 번째 줄 : * bag = bagOfFeatures (imds, 'CustomExtractor', extractorFcn)는 사용자 지정 기능 추출기 함수를 사용하여 시각적 어휘를 배우기 위해 출력 가방에서 기능을 추출하는 기능 모음을 반환합니다. extractorFcn은 커스텀 피쳐 추출 함수에 대한 함수 핸들입니다. * –

답변

0

불행하게도, 기능 모음 알고리즘은 K- 평균 클러스터링을 사용하여 "시각적 단어"를 만들기 때문에 MATLAB의 기능 봉지 구현과 함께 BRISK 또는 FREAK를 사용할 수 없습니다. 문제는 BRISK 및 FREAK 디스크립터가 2 진수 비트 문자열이므로 실수 값 벡터에서만 작동하는 K- 평균을 사용하여 클러스터링 할 수 없다는 것입니다.

확실히 MATLAB의 프레임 워크에서 다양한 종류의 관심 지점 감지기를 사용할 수 있습니다. 그러나 실제 값 벡터 인 설명자로만 제한됩니다. 따라서 SURF와 SIFT는 작동하지만 BRISK와 FREAK는 작동하지 않습니다. BRISK와 FREAK를 꼭 사용해야하는 경우, 자신 만의 기능을 구현해야합니다. 바이너리 디스크립터를 클러스터링하는 데는 여러 가지 방법이 있지만 기능 중 bag-of-features과 관련하여 이들 중 어느 것이 잘 작동하는지 모른다.

+0

내 문제를 해결하기 위해 내 가방을 구현해야합니까? 서로 다른 유형의 탐지기와 추출기를 결합하여 내 이미지를 다른 방법으로 분류해야합니다. –

+0

답변을 편집했습니다. – Dima

+0

해답을 주셔서 감사합니다. 특별히이 2 개의 디스크립터를 사용하지 않아도됩니다. 그러나 컴퓨터 비전 툴박스를 사용하고 싶었 기 때문에 2 가지 유형의 테스트를 시도했습니다. 빠른 keyPoints를 가져 와서 SURF, BRISK 및 FREAK 디스크립터를 사용하십시오. , 두 번째는 SURF Keypoints를 얻고 SURF BRISK 및 FREAK 설명자를 사용합니다. 나는 내 가방을 구현하려고합니다, 당신의 대답에 감사드립니다, 그것을 감사드립니다. –