2015-04-21 22 views
7

Chcę wykrywać obiekty wewnątrz komórek obrazów mikroskopowych. Mam wiele obrazów z adnotacjami (około 50 000 zdjęć z obiektem i 500 000 bez obiektu).Wykrywanie obiektów na obrazach (HOG)

Do tej pory próbowałem wyodrębnić funkcje za pomocą HOG i klasyfikować za pomocą regresji logistycznej i LinearSVC. Próbowałem kilku parametrów dla HOG lub przestrzeni kolorów (RGB, HSV, LAB), ale nie widzę dużej różnicy, wskaźnik predykacji wynosi około 70%.

Mam kilka pytań. Ile obrazów należy użyć do szkolenia deskryptora? Ile zdjęć mogę użyć do przetestowania prognozy?

Próbowałem z około 1000 zdjęć do treningu, co daje mi 55% pozytywnych i 5000, co daje mi około 72% pozytywne. Jednak zależy to również bardzo od zestawu testowego, czasami zestaw testowy może osiągnąć 80-90% pozytywnie wykrytych obrazów.

Oto dwa przykłady zawierające obiekt i dwa obrazy bez obiektu:

object 01

object 02

cell 01

cell 02

Innym problemem jest to, czasem obrazy zawierają kilka obiektów:

objects

powinienem próbować zwiększyć przykłady zestawu uczenia się? Jak powinienem wybrać obrazy do zestawu treningowego, po prostu losowe? Co jeszcze mogę spróbować?

Każda pomoc będzie bardzo cenna, dopiero zacząłem odkrywać uczenie maszynowe. Używam Pythona (scikit-image & scikit-learn).

Odpowiedz

2

myślę, że jesteś w dobrej drodze, ale pozwól mi podnieść kilka uwag:

1 - numer zestawu treningowego będzie zawsze ważny w klasyfikacji problemów (zazwyczaj więcej, tym lepiej). Musisz jednak mieć dobre adnotacje, a twoja metoda powinna być odporna na wartości odstające.

2 - Ze zdjęć, które umieściłeś, wydaje się, że histogram kolorów byłby bardziej dyskryminujący niż HOG. Podczas korzystania z histogramów kolorów zwykle odwiedzam dla przestrzeni barw Lab z skorelowanymi histogramami a-b. L jest luminancją, a jest bardzo zależne od pozyskiwania obrazu (np. Jasności). Jedną z metod, która jest używana do ponownego zidentyfikowania pieszego, jest dzielenie obrazów na bloki i obliczanie histogramów wewnątrz tych bloków. Może to być pomocne .

3 - Najlepszym sposobem, aby przetestować metodę klasyfikacji jest cross-validation: http://en.wikipedia.org/wiki/Cross-validation_%28statistics%29#k-fold_cross-validation

4 - Czy spróbować innych klasyfikatorów?Weka może być bardzo interesująca łatwo testuje różne metody/parametry: http://www.cs.waikato.ac.nz/ml/weka/

5 - W końcu, jeśli nadal mają złe wyniki i nie mam pojęcia z czego rodzaj funkcji należy używać, można zastosować głęboką neuronowe sieci do tego!

Mam nadzieję, że to pomaga.

+0

Dziękuję bardzo za sugestie, są one bardzo pomocne! Szybko wypróbowałem histogramy LAB (również zasugerowane z listy mailingowej scikit-image) i wygląda na to, że dzięki kanałowi jasności uzyskuję bardzo dobre wyniki w prawidłowym wykrywaniu komórek z obiektem. Przewiduje jednak bardzo złe dla komórek bez obiektu. Z drugiej strony, aby wykryć komórki bez obiektu, HOG działał bardzo dobrze. Myślę, że połączenie obu modeli może działać (nie jestem pewien, czy to byłoby w porządku). Nadal nie sprawdzałem poprawności, więc wszystko to jest wstępne. Dziękuję za tę wskazówkę! – snowflake

+0

Często w komórce znajdują się inne przedmioty, które są ciemno poplamione, ale nie powinny być wykrywane. Myślę, że dlatego otrzymuję wiele fałszywych alarmów, gdy używam histogramu LAB, ale nie z HOG. – snowflake

+0

Mam jeszcze jedno pytanie, wygląda na to, że rozmiar bin odgrywa dużą rolę. Jak wybrać właściwy rozmiar pojemnika? Czy są jakieś zasady, czy raczej "spróbuj i błąd"? – snowflake

Powiązane problemy