Rozwój mózgu
Transkrypt
Rozwój mózgu
Zbigniew Sołtys - Komputerowa Analiza Obrazu Mikroskopowego 2015 część 13 13 MAKRA I PLUGINY Największą zaletą ImageJ jest wielka i stale rosnąca liczba programów i makr. Na stronie. Niewielka część z nich jest instalowana razem z programem, resztę można ściągnąć ze strony: http://rsb.info.nih.gov/ij/plugins/index.html Makra można łatwo tworzyć samemu, w najprostszy sposób przez rejestrację wykonywanych czynności, pisanie pluginów jest bardziej skomplikowane, wymaga znajomości podstaw języka JAVA. Pluginy są napisane w Javie, większość występuje w postaci gotowych plików *.class lub *.jar, które wystarczy wgrać do folderu Plugins w folderze ImageJ lub do dowolnych podfolderów w tym folderze. Po wgraniu plugin powinien pojawić się w odpowiednim miejscu w menu Plugins. Niektóre pluginy dostępne są tylko jako pliki *.java - należy je wówczas przekształcić do plików wykonywalnych korzystając z polecenia: Plugins → Compile and Run. Uwaga: Większość pluginów pojawia się w submenu odpowiadającym subfolderowi, do którego plugin został wgrany. Niektóre pluginy jednak same zakładają swoje subfoldery, inne jeszcze włączają się do podstawowego menu programu. Makra to pliki tekstowe, można je pisać w dowolnym edytorze. Powinny mieć rozszerzenie *.txt albo *.ijm Podstawowa różnica funkcjonalna między pluginami i makrami polega na tym, że pluginy są cały czas dostępne do użycia, natomiast makra (poza makrami startowymi) należy każdorazowo instalować. Zainstalowanie nowego makra powoduje usunięcie poprzednio instalowanego. 13.1 MAKRA STARTOWE Rys. 13.1 Przy starcie programu automatycznie instaluje się zestaw makr do rysowania. Ostatnia ikona w narzędziowniku pozwala na przełączenie do innego zestawu makr, na przykład do zestawu dodatkowych narzędzi do rysowania (Drawing Tools) Rys. 13.2 Zbigniew Sołtys - Komputerowa Analiza Obrazu Mikroskopowego 2015 część 13 albo do makr wywołujących funkcje do obsługi stosów (Stack Tools) Rys. 13.3 Poszczególne klawisze to uruchomienie lub zatrzymanie animacji, przejscie do pierwszego obrazu w stosie (<<), do poprzedniego lub następnego obrazu (<lub >), do ostatniego obrazu w stosie (>>) oraz przyciski dodawania i usuwania obrazów do lub z stosu. Opcja Toolset Creator pozwala na stworzenie własnego zestawu ikon - można takim ikonom przypisać najczęściej przy określonych zadaniach używane pluginy Rys. 13.4 Zbigniew Sołtys - Komputerowa Analiza Obrazu Mikroskopowego 2015 część 13 13.2 REJESTROWANIE MAKR Najprostszym sposobem stworzenia makra jest wykorzystanie rekordera. Do tego celu służy opcja: Plugins → Macros → Record Wszystkie wywoływane funkcje będą kolejno wpisywane do okna recordera, np: Rys. 13.5 Po zarejestrowaniu odpowiednich czynności należy kliknąć przycisk Create i wówczas pojawi się okno z zarejestrowanym makrem: Rys. 13.6 Jest to edytor tekstowy, pozwalający na modyfikację makra, a także na jego uruchomienie (menu: Macros, Run) i znalezienie ewentualnych błędów (Debug) Recorder pozwala też na przygotowanie pluginu - w tym celu przy opcji Record: zamiast Macro należy wybrać Plugin. Program wygeneruje plik *.java, który następnie należy przetworzyć na wykonywalny plugin korzystając z polecenia Plugins → Compile and Run. Jednak nie wszystkie tworzone w ten sposób pluginy działają prawidłowo, dlatego jeśli nie jest to konieczne to nie należy korzystać z tej opcji. Uwaga 1 Recorder nie rejestruje ustawień wykonywanych przy pomocy suwaków. Dlatego jeśli chcemy wprowadzić do programu na przykład określony zakres dla funkcji Threshold to należy skorzystać z polecenia Set. Podobnie, jeśli chcemy aby aby makro zarejestrowało przechodzenia między obrazami w stosie, należy posłużyć się poleceniami Next Slice, Previous Slice z menu Image → Stacks. Uwaga 2 Jeśli makro ma wykonywać pomiary, należy do makra wprowadzić polecenia Set Measurements i ewentualnie Set Scale. Zagwarantuje to, że makro za każym razem Zbigniew Sołtys - Komputerowa Analiza Obrazu Mikroskopowego 2015 część 13 wykona pomiary przy takich samych ustawieniach - w przeciwnym przypadku makro pobierze takie ustawienia, jakie będą w danym momencie ustawione w programie. Uwaga 3. Nie wszystkie pluginy dają się wywołać przy pomocy makra 13.3 Pętle w makrach. Jeśli makro ma wielokrotnie wykonać tą samą czynność lub sekwencję czynności to można posłużyć się poleceniem języka Java deklarującym pętlę. Na przykład, zamiast powtarzać kilkadziesiąt razy sekwencję poleceń potrzebnych przy pomiarze wymiaru fraktalnego metodą dylatacji: run("Dilate"); run("Measure"); run("Dilate"); run("Measure"); run("Dilate"); run("Measure") ............................. można skorzystać z polecenia: for (i=1; i<64; i++) { run("Dilate"); run("Measure") } Takie makro 63 razy wykona kolejno dylatację i pomiar obrazu. Makro z zagnieżdżoną pętlą (pętla w pętli) do wyszukiwania nalepszych wartości parametrów algorytmu Bernstena zostało przedstawione w części 7. 13.4 INSTALOWANIE MAKR Makra instalujemy korzystając z Plugins→ Macros → Install Rys. 13.7 Zbigniew Sołtys - Komputerowa Analiza Obrazu Mikroskopowego 2015 część 13 Nazwa zainstalowanego makra (w powyższym przypadku RGB_Histogram) pojawi się na dole rozwijanej listy. Jednorazowo może być zainstalowany tylko jeden plik makrowy. Ale taki plik może zawierać wiele makr jednocześnie, i co więcej - można te makra wywoływać przy pomocy na przykład klawiszy funkcyjnych (lub normalnych klawiszy - choć tu może pojawić się konflikt z wpisanymi do programu klawiszami skrótów) . Takie makro musi być jednak odpowiednio przygotowane, np: macro "blue [F1]" { run("Delete Slice"); run("Delete Slice"); } macro "stack [F2]" { run("Images to Stack", "name=Stack title=[] use"); run("Size...", "width=512 height=512 constrain interpolation=Bilinear"); run("Image Sequence... "); } Mamy dwa makra w jednym pliku. Wciśnięcie F1 powoduje usunięcie dwóch pierwszych obrazów ze stosu (np. RGB) Wciśnięcie F2 powoduje że wszystkie obrazy zostaną połączone w jeden stos, następnie ich rozmiary zostaną zmienione na 512 x 512 pikseli, i na koniec zostanie wywołane okno, dzięki któremy obrazy ze stosu zostaną zapamiętane jako odrębne obrazy. Przygotowanie makr niekiedy wymaga dość dużej liczby prób. Dlatego dobrze jest do takiego opracowywanego złożonego makra wprowadzić polecenia, które uproszczą proces instalacji, np. macro"makro [F2]" { run("Install...", "install=C:\\ImageJ\\macros\\Bernsen.txt"); } To jest makro z pliku Bernsen.txt. Instalując plik z takim makrem możemy go potem dowolnie modyfikować i wówczas każdorazowe wciśnięcie F2 spowoduje załadowanie zmodyfikowanej wersji makra, bez konieczności uruchamiania całej procedury istalacyjnej. Oczywiście, zmodyfikowane makro musi zostać wcześniej zapamiętane.