POLITECHNIKA POZNANSKA

INSTYTUT ELEKTRONIKI I TELEKOMUNIKACJI

Telepatologia z wykorzystaniem Internetu

1. Wprowadzenie

Projekt innowacyjny Telepatologia z wykorzystaniem Internetu zrealizowano w roku 1998 zgodnie z harmonogramem. Przeprowadzono prace ujete w planie jako pierwszy etap. W szczegolnosci:

  1. Skompletowano i uruchomiono 2 graficzne stacje robocze z urzadzeniami dodatkowymi i wykonano tor swiatlowodowy miedzy nimi.
  2. Zaprojektowano i przygotowano dedykowane oprogramowanie obslugi systemu (I etap).
  3. Opracowano koncepcje systemu bezstratnej kompresji przesylanych obrazow.

2. Sprzet

Zrealizowany system posiada nastepujaca konfiguracje:

Rys. Ogolna struktura systemu

3. Dedykowane oprogramowanie systemu.

Przygotowano dedykowane oprogramowanie integrujace zdalna obsluge mikroskopu, wizualizacje obrazow mikroskopowych na ekranie monitora oraz komunikacje miedzy uzytkownikami. W szczegolnosci oprogramowanie realizuje nastepujace funkcje:

Szczegolowy opis oprogramowania zamieszczono w zalaczniku 1.

Ocena jakosci przesylanego obrazu:

Obraz przesylany przez lacze swiatlowodowe jest wolny od zaklocen i znieksztalcen. Jakosc obrazu w systemie zdalnym jest taka sama jak w systemie lokalnym.

4. Koncepcja systemu bezstratnej kompresji obrazu.

Przebadano bezstratna kompresje obrazow histologicznych o roznych powiekszeniach i roznych rozdzielczosciach. Przy zastosowaniu najbardziej zaawansowanych metod kompresji bezstratnej objetosc pliku waha sie w granicach 40 - 60% poczatkowej objetosci.

Rys. Srednie wielkosci pliku po kompresji wyrazone jako procent wielkosci pliku przed kompresja.

W zwiazku z tym dla zwiekszenia wspolczynnika kompresji zaproponowano stosowanie transformacji skladowych i stosowanie:

W trakcie przygotowywania koncepcji uruchomiono szereg programow. Szczegolowe dane eksperymentalne, programy komputerowe i opracowane algorytmy znajduja sie w Instytucie Elektroniki i Telekomunikacji. Wyniki te zostana wykorzystane do realizacji drugiego etapu prac.

Zalacznik 1

Szczegolowy opis dedykowanego oprogramowania

Projekt zaklada wykorzystanie zdalnie sterowanego mikroskopu typu Axioplan2, podlaczonego do komputera pelniacego funkcje serwera internetowego. Uzytkownicy-klienci laczacy sie z serwerem poprzez przegladarke WWW beda mieli mozliwosc wyboru interesujacego fragmentu preparatu przez zmiane polozenia stolika mikroskopowego z probka, wybor odpowiedniego powiekszenia i ostrosci. Dostepna bedzie opcja konsultacji z innymi uzytkownikami poprzez strone WWW, a takze w sesji wideokonferencyjnej. Ulatwi to wymiane swoich spostrzezen podczas diagnozowania preparatu.

Proponowane rozwiazanie przewiduje stworzenie dwoch odrebnych aplikacji. Czesc glowna uruchamiana po stronie serwera internetowego WWW ma za zadanie odbierac rozkazy od uzytkownikow sterujace praca mikroskopu i przy ich pomocy dokonywac odpowiednich zmian ustawien mikroskopu oraz udostepniac w sieci Internet obraz pobrany z kamery. Druga, uruchamiana po stronie klienta-uzytkownika sieci Internet ma na celu zdalne sterowanie mikroskopem i kamera poprzez wysylanie odpowiednich komunikatow sterujacych oraz wizualizacje obrazu z mikroskopu udostepnianego przez serwer. Dodatkowa usluga zaimplementowana na komputerach uzytkownikow ma byc modul wideokonferencji umozliwiajacy konsultacje miedzy nimi.

Serwer

Pierwsza z aplikacji po stronie serwera, napisana w jezyku C++ ma za zadanie udostepnienie zasobow w postaci zdalnie sterowanego mikroskopu sprzezonego z kamera w sieci Internet. W tym celu na komputerze opartym o procesor Pentium II 450MHz z systemem operacyjnym Microsoft Windows NT, podlaczonym do sieci Internet uruchomiony jest serwer WWW. Do serwera podlaczony jest mikroskop Axioplan 2 poprzez dwa zlacza szeregowe RS-232 oraz kamera Polaroid poprzez interface UltraWide SCSI. Komputer ten wyposazony jest w dedykowana karte optyczna z wyjsciem swiatlowodowym sluzaca do zestawiania sztywnego lacza miedzy serwerem a klientem. W komputerze zamontowana jest karta Fly Video EZ98 sluzaca do realizacji sesji wideokonferencyjnych wraz z oprogramowaniem Microsoft NetMeeting 2.1 oraz serwer Microsoft Internet Locator. Do karty podlaczona jest kamera CCD CAM marki Philips. Sercem calego systemu jest oprogramowanie uruchamiane rownolegle z serwerem WWW. Realizuje ono nastepujace funkcje:

Klient

Druga aplikacja przeznaczona jest dla uzytkownikow. Z zalozenia musi byc ona niezalezna od platformy na ktorej jest ona uruchamiana. Do realizacji tego zadania zostal wybrany jezyk JAVA. W prototypowym rozwiazaniu terminalem jest komputer wyposazony w procesor Pentium II 450MHz i system operacyjny Microsoft Windows 98. Jako przegladarka WWW w ktorej uruchamiany jest applet JAVY wykorzystywana jest przegladarka Microsoft Internet Expolrer w wersji co najmniej 4.0. Dodatkowo w komputerze zamontowana jest karta optyczna do zestawienia dedykowanego lacza swiatlowodowego oraz karta video umozliwiajaca nawiazanie sesji wideokonferencyjnej wraz z kamera. Uruchomienie oprogramowania po stronie klienta dokonywane jest poprzez wejscie na strone serwera obslugujacego mikroskop i wywolanie odpowiedniej strony WWW. Zaladowanie tej strony powoduje uruchomienie apletu JAVY, ktory nawiazuje polaczenie z serwisem obslugujacym kamere i mikroskop. Od tej chwili uzytkownikowi ukazuje sie panel sterujacy praca zdalna mikroskopu poprzez siec internet z wykorzystaniem protokolu TCP/IP oraz okno wyswietlajace obraz pobierany z kamery. Zdalna koncowka jest rejestrowana po stronie serwera i otrzymuje ono zezwolenie na sterowanie mikroskopem. Kazda akcja wywolana zdalnie jest przetwarzana w serwerze i realizowana jest odpowiednia reakcja az do pobrania z kamery obrazu i przekazania go zwrotnie wszystkim uczestnikom sesji.

Uzytkownicy po stronie klienta maja do dyspozycji panel Chat umozliwiajacy przesylanie komentarzy tekstowych oraz mozliwosc nawiazania sesji wideokonferencyjnych miedzy innymi uczestnikami.

Aplet JAVA

Java to zorientowany obiektowo jezyk programowania dedykowany do pracy w bardzo dobrze znanym w Internecie systemie publikacyjnym Web. Niekiedy mowi sie, ze jest to jezyk programowania Internetu. Z punktu widzenia skladni jezyka jest on bardzo podobny do C++, nie jest to jednak w zadnym przypadku podzbior C++, czy jezyk typu C++ Lite. Nowy jezyk nabiera coraz bardziej istotnego znaczenia i zostal juz szeroko zaakceptowany jako efektywne i bardzo efektowne narzedzie, dzieki ktoremu wszelkie granice uzytkowania i projektowania stron WWW zostaly poszerzone w niewyobrazalny jeszcze sposob. Wlasnie od ograniczen stojacych przed standardem projektowania stron HTML wywodzi sie pomysl Javy. Mimo zdefiniowania i wdrozenia szeregu rozszerzen - wersje 2.0 i 3.0 opracowane glownie przez Netscape Communication - do bazowego standardu HTML, publikowane strony Web pozostawaly nadal statyczne. Istnialy tabele, kolorowe tla, ciekawa interpretacja tekstu i grafiki, ale brakowalo szeregu nawet bardzo prostych mechanizmow, ktore dostepne sa w kazdym jezyku programowania. Luke ta wypelnil jezyk Java zaprojektowany w SUN Microsystems.

Idea pracy systemu z Java jest bardzo prosta. W jezyku Java tworzone sa programy nazywane apletami (applets), ktore nastepnie przetwarzane sa przez specjalny kompilator do binarnej, skondensowanej, niezaleznej od platformy postaci okreslanej mianem kod-bajtowy (bytecode) lub klasa (class). Rozmiar wygenerowanych plikow jest w przewazajacej czesci przypadkow stosunkowo maly (kilka KB), co pozwala na realizacje szybkiej transmisji nawet w wolnych sieciach. Klasy moga byc interpretowane przez wirtualna maszyne wbudowana np. w przegladarke WWW lub przez niezalezny program (tzw. AppletViewer). Aplety (klasy) wlaczane sa do stron Web za pomoca prostego mechanizmu, stanowiacego kolejne rozszerzenie jezyka HTML. Oprocz wywolania okreslonego apletu na danej stronie mozemy takze przekazac dowolna ilosc parametrow (argumentow), definiujacych sposob pracy apletu. Oznacza to zatem, ze mamy mozliwosc tworzenia uniwersalnych apletow i parametryzowania ich wykonania. Niezwykle istotnym jest takze to, ze do wykorzystania Javy nie potrzebujemy specjalnego serwera WWW. Mozemy uzyc kazdego - nawet najprostszego, bowiem caly ciezar obslugi kodow bajtowych spoczywa na naszej, pracujacej lokalnie maszynie wirtualnej (przegladarce Web). Maszyna ta, czyli interpreter kodu Javy, pracuje w okreslonym srodowisku, zawierajacym szereg wykonywalnych apletow tworzacych w pewnym sensie biblioteke klas Javy typu run-time. Dzieki temu nawet skomplikowane operacje moga byc wykonywane za pomoca kilku-linijkowego apletu.