ADVANCED SOFTWARE DEVELOPMENT SOLUTIONS
ASDS sp. z o.o. świadczy usługi z zakresu outsourcingu technologii, zarówno w zakresie informatyki, jak i zarządzania i organizacji. Każda oferta dostosowywana jest do możliwości i potrzeb klienta.
Analyses Processing Recognition
Ogólna charakterystyka:
Program APR jest aplikacją służącą analizie, przetwarzaniu i rozpoznawaniu obrazów. Główną ideą programu jest tworzenie skryptów przez osoby pragnące rozwiązać konkretny problem praktyczny. Nie wymaga się od użytkownika ani wiedzy z zakresu przetwarzania obrazów ani umiejętności programowania. Wszystko co powinien wiedzieć użytkownik znajduje się w dołączonych przykładach oraz interaktywnych podpowiedziach edytora skryptów. Program APR jest on przeznaczony do celów związanych z badaniami naukowymi, dydaktyką i praktycznymi zastosowaniami o charakterze komercyjnym, przy założeniu, że osoby korzystające z niego nie powinny być absorbowane pobocznymi zagadnieniami, a ich głównym zadaniem jest napisanie krótkiego skryptu wykonującego dokładnie to czego oczekują od programu.
Biorąc pod uwagę zupełnie inną grupę odbiorców należy wspomnieć, iż osobnym i ważnym obszarem zastosowań jest testowanie i wdrażaniem nowych metod i algorytmów, gdyż APR stanowi wydajną i łatwą w obsłudze platformę, do której można dołączać własne procedury za pomocą pluginów w postaci bibliotek DLL. Dzięki temu bogaty zestaw wbudowanych procedur może być łatwo rozszerzany o nowe, bez konieczności poświęcania czasu na budowanie własnej-specjalistycznej aplikacji, przeznaczonej do konkretnego zastosowania.
Najważniejsze cechy programu APR:
- Wygodny edytor skryptów zawierający listę wszystkich dostępnych instrukcji wraz z ich opisami.
- Mechanizmy: grupowania sekwencji instrukcji w procedury oraz bibliotek zawierających zestawy procedur.
- Obsługa wielowątkowości poprzez możliwość zaprogramowania, niezależnie dla każdego okna, timerów sterujących cyklicznym wywoływaniem zdefiniowanych sekwencji instrukcji (procedur).
- Obsługa kamery internetowej jako źródła obrazów zarówno z poziomu interfejsu aplikacji, jak i skryptów.
- Duży zbiór przykładowych skryptów obrazujący sposób działania poszczególnych instrukcji.
- Instrukcja obsługi (PDF oraz drukowana) zawierająca opis instrukcji wraz z przykładami.
- Otwarta architektura pozwalająca w łatwy sposób dołączać do programu własne zestawy procedur realizowana w oparciu o mechanizm pluginów w postaci bibliotek DLL.
- Bogaty zestaw ponad 100 instrukcji obejmujący:
- obsługę akwizycji obrazu ze źródła zewnętrznego np. kamery,
- łatwy w użyciu mechanizm uruchamiania niezależnych procesów przetwarzania obrazów dla każdego okna oparty na zdarzeniach timerów,
- tworzenie procedur skryptowych, bibliotek skryptów,
- zarządzanie oknami,
- automatyczne przetwarzanie sekwencji obrazów,
- operacji: zapisu, odczytu i kasowania obrazów,
- zaznaczania obszarów, które zapewnia możliwość wykonywania instrukcji dla wycinka obrazu,
- kopiowania fragmentów obrazów,
- filtrowanie,
- obliczanie wielu parametrów obrazów,
- szczegółową analizę morfologiczna obrazów binarnych,
- operacje na histogramie, wyświetlanie histogramów dla poziomów jasności oraz poszczególnych składowych RGB.
- odejmowanie, dodawanie obrazów,
- operacje na obrazach binarnych,
- procedury śledzenia obiektów,
- operacje na ciągach liczbowych, wyświetlanie wykresów.
- zestaw procedur pomocniczych ułatwiających sterowaniem programem.
Podsumowanie:
Program APR jest bardzo przydatną aplikacją dla osób, które z różnych powodów nie są wstanie lub nie chcą tracić czasu na budowanie własnej platformy do analizy i przetwarzania obrazów. Dzięki bogatym możliwościom, które są ciągle poszerzane oraz otwartej architekturze, potencjalne zastosowania programu są bardzo szerokie. Niezwykle ważne jest to, że niezależnie czy użytkownik jest wysokiej klasy specjalistą z obszaru analizy i przetwarzania obrazów, czy podchodzi do konkretnego zadania bez przygotowania merytorycznego, to używając programu APR zawsze zyskuje wiele czasu i energii. W celu rozwiązania konkretnego problemu można maksimum zaangażowania skupić tylko na meritum bez konieczności zajmowania się całymi grupami zagadnień pobocznych, które już rozwiązano w programie APR. Nie ma potrzeby poznawania skomplikowanych języków programowania oraz zdobywania wiedzy na temat algorytmów służących do realizacji konkretnych operacji graficznych.
Oprogramowanie będące do tej pory na rynku można podzielić na ta dwie grupy. Do pierwszej zaliczają się programy graficzne, które posiadają szereg często złożonych funkcjonalności, jednak nie sposób ich programować, tzn. nawet jeżeli uzyskamy pożądany efekt, to i tak należy zapamiętać cały ciąg operacji jakie wykonaliśmy żeby ją powtórzyć. Konieczne jest mozolne powtarzanie tej sekwencji dla każdego obrazu, który ma podlegać przekształceniom w sposób który opracowano. Jeżeli występuje potrzeba opisania sposobu przetwarzania, to nie pozostaje nic innego jak ubrać w słowa to co zostało wykonane przy pomocy interfejsu użytkownika. Nie jest to zbyt zachęcająca perspektywa szczególnie, że jeżeli jakaś operacja w danym programie jest niedostępna, to okazuje się że już się nie uda uzyskać efektu na który liczono. Ponadto, bardzo rzadko programy tego rodzaju posiadają możliwość analizy obrazu tzn. uzyskania pewnych informacji liczbowych opisujących je. Czy to oznacza, że są to złe programy? Oczywiście nie. Zostały one opracowane do innych celów i z założenia nie posiadają wielu funkcjonalności.
Drugim rodzajem oprogramowania są aplikacje posiadające bogate zestawy procedur i możliwości prawdziwego programowania. Ich niewątpliwą zaletą jest brak wad opisanych dla pierwszej grupy programów. APR jest jednym z takich programów, tzn. zapewnia możliwość programowania w obszarze grafiki. Co wyróżnia APR od innych produktów? Głównie jest to połączenie łatwości obsługi z bogactwem funkcjonalności. Dzięki temu APR jest bardzo wygodnym i silnym narzędziem dla osób, które analizę i przetwarzanie obrazów traktują jako narzędzie, a nie cel sam w sobie. Używając APR nie ma potrzeby nauki programowania oraz znajomości, często skomplikowanych, metod macierzowych lub innych złożonych zagadnień z matematyki. Pozostaje jedynie budowanie skryptów, czyli składanie gotowych komponentów elementów w całość wg własnego uznania – jak budowanie z klocków, co jest nie tylko łatwe i przyjemne ale i niezwykle wydajne.
