Jestem biologiem z bardzo niewielkim doświadczeniem w przetwarzaniu obrazów, ale mam wystarczającą wiedzę na temat MATLAB i mam zestaw narzędzi do przetwarzania obrazów. Idealnie szukam rozwiązania opartego na MATLAB, ale pomocne byłoby również podejście opisujące, jak to zrobić.
Aktualizacja (28 listopada 2011 r.) Wydaje się, że istnieją pewne problemy (takie jak nakładanie się sygnału i definicji koloru) podczas korzystania z obrazów kompozytowych (co przedstawiłem w pytaniu wstępnym). Dołączam osobne obrazy z 2 kanałów: zielony i czerwony (turkusowe obszary na obrazie złożonym można zignorować) oraz obraz złożony . Czerwony kanał jest zły z 2 powodów: 1. Ma słaby kontrast z powodu wyższego tła, 2. Ponieważ czerwony wydaje się krwawić na zielono na poziomie tła.
Cechą jest zdefiniowany jako obszar o złożony obraz, który ma zielony-czerwony-turkusowo-czerwony-zielony lub równoważnie 2 sąsiadujące segmenty liniowe na zielonym i czerwonym, które są współliniowe i zakaźny.
Mam nadzieję, że oglądanie obrazów z dwóch oddzielnych kanałów ułatwi identyfikację funkcji.
Mam następujące sugestie dotyczące algorytmu:
Najpierw zidentyfikuj współliniowe zielone segmenty (i określ długości zielonych segmentów)
Ustal, czy w kanale czerwonym znajdują się sąsiednie segmenty zakaźne i kolinearne skierowane ku sobie (tj. Zielony-> czerwony-> <-czerwony <-zielony). Jeśli tak, określ długość czerwonego segmentu od punktu, w którym kończą się zielone segmenty (ponieważ będą się one nakładać z zielonymi segmentami), aż do punktu na czerwonym segmencie, który znajduje się najbliżej drugiego czerwonego segmentu obiektu. (tzn. jeden z końców czerwonego segmentu jest ustawiony na koniec nakładającego się zielonego segmentu).
Wielkie dzięki!
Tło :
Moje pytanie dotyczy wyodrębnienia funkcji z obrazu:
Oryginalny obraz (tif) znajduje się tutaj:
Przykład obrazu 1 (dropbox)
Ten obraz jest złożony z 3 kanałów (w formacie tif): czerwonego, zielonego i turkusowego. Turkusowe włókna po prostu zaznaczają całe DNA, które mamy na szkiełku nakrywkowym. Interesującą cechą jest zielono-czerwony - turkusowy - czerwono-zielony element na pojedynczej nici DNA, która jest środkiem obrazu.
Czerwień jest generalnie najgłośniejsza. Ten przykład jest dobry, ponieważ kontrast jest dobry. Czasami jednak obrazy nie są tak ładne i na obrazie jest odcień, więc twarde kodowanie określonej wartości RGB dla koloru zielonego i czerwonego może nie działać dla wszystkich obrazów. Należy również pamiętać, że włókna niekoniecznie są poziome, mogą być obracane (ale nigdy pionowe).
Zobacz to zdjęcie jako przykład:
Oryginalny obraz (tif) znajduje się tutaj:
Przykład obrazu 2 (dropbox)
Czasami pojedynczy obraz ma wiele takich cech, a czasem wiele cech tego samego łańcucha DNA. Wreszcie czasami mogą występować tylko częściowe cechy (tj. Izolowane zielone lub izolowane czerwone lub izolowane zielono-czerwone segmenty, ale niesparowane).
Pytanie:
Byłbym wdzięczny, gdyby ktoś mógł mi pomóc w uzyskaniu długości poszczególnych segmentów zielonych i czerwonych segmentów, tj. Ponieważ interesującą cechą jest zielono-czerwony - turkusowy - czerwono-zielony, każda cecha miałaby tablicę 5 wartości (długość pierwszego zielonego segmentu, długość pierwszego czerwonego segmentu, długość turkusowego segmentu, długość drugiego czerwonego segmentu i długość drugiego zielonego segmentu).
źródło
Odpowiedzi:
Przykład w Mathematica:
Edytować
Tutaj możesz zobaczyć czerwone i zielone skupiska. Jak możesz sobie wyobrazić, musisz zdecydować, kiedy porcja jest czerwona!
źródło