|
Oprogramowanie Matrox Imaging Library (MIL)
UWAGA: PRODUKT ARCHIWALNY.
Dany produkt przestał być produkowany. Informacje o tym produkcie zostały przedstawione dla celów wsparcia
technicznego.
Jeżeli posiadają Państwo taki uszkodzony produkt, to jego producent nie zapewnia jego naprawy. Jednak,
ze względu na to, że czasem producenci posiadają jakieś zapasy części zamiennych do produktów wycofanych
z produkcji, przez pewien okres czasu może istnieć możliwość ich naprawy. Więc warto skontaktować się
z naszym biurem aby zapytać o taką możliwość.
Opis
Obszerna i wysoce zoptymalizowana biblioteka funkcji dla przetwarzania obrazów
Matrox Imaging Library (MIL) to biblioteka wysokiego poziomu dla programistów z obszernym zbiorem
zaawansowanych funkcji dla pozyskiwania, przetwarzania (operacje punktowe, statystyki, filtrowanie, morfologia, transformacje
geometryczne, FFT i segmentacja), rozpoznawania wzorców, analizy obiektów, pomiarów, OCR, rozpoznawania kodów
kreskowych 1D i macierzowych 2D, kalibracji, grafiki, kompresji obrazów, wyświetlania i archiwizacji obrazów.
Zwiększona produktywność
MIL, zaprojektowane tak, aby ułatwić rozwój i zwiększyć produktywność, oferuje wspólny interfejs
C API, który obsługuje całą linię frame grabberów i procesorów wideo Matrox oraz oferuje zbiór intuicyjnych i łatwych w użyciu
funkcji. MIL zawiera także gotowe interaktywne okna dialogowe (w wersji dla Windows® 2000/XP (32-bit)) dla obsługi
wejścia/wyjścia plików, manipulowania danymi obrazu (np. definiowanie wzorca dla rozpoznawania modelu lub czcionki dla
rozpoznawania znaków), dopasowywania parametrów funkcji i zarządzania wynikami. Wszystko to dla uproszczenia rozwoju
aplikacji.
Szybki rozwój
Dla umożliwienia bardzo szybkiego tworzenia aplikacji w środowisku Windows, MIL dostarczane jest
z ActiveMIL (w wersji dla Windows® 2000/XP (32-bit)) - zestaw kontrolek OCX środowiska ActiveX dla zarządzania
pozyskiwaniem, przetwarzaniem, analizą, wyświetlaniem i archiwizacją obrazów. ActiveMIL umożliwia w bardzo prosty i szybki
sposób zintegrować aplikację przetwarzającą obrazy z profesjonalnie wyglądającym, przyjaznym interfejsem użytkownika
środowiska Windows. Tworzenie aplikacji odbywa się poprzez łapanie i przenoszenie narzędzi, które są w prosty sposób
konfigurowane poprzez technologię wskaż i kliknij. Wynikiem tego jest bardzo mała potrzeba pisania bezpośredniego kodu
programowego aplikacji. Debuggowanie jest także uproszczone poprzez stałe sprawdzanie poprawności i raportowanie błędów
z bardzo szczegółowym ich opisem. Dzięki ActiveMIL, twórcy OEM i integratorzy systemów oszczędzają czas - mogą się oni skupić
na problemie przetwarzania obrazów bez konieczności czasochłonnego tworzenia interfejsu użytkownika.
Wspólny interfejs API dla sprzętu
Jednolity interfejs API dostarcza obsługi wszystkich frame grabberów i procesorów wideo firmy
Matrox, umożliwiając w ten sposób swobodny wybór frame grabbera dla pozyskiwania obrazów. MIL obsługuje także pozyskiwanie
obrazów z kamer z interfejsem GigE Vision© (w wersji dla Windows® XP (32-bit)) oraz IEEE 1394a/b (w wersji dla Windows® XP
(32-bit)). Obrazy są przetwarzane przy użyciu procesora komputera PC lub procesora wideo Matrox. Wyświetlanie obrazów jest
zoptymalizowane dla procesorów graficznych firmy Matrox, ale może być realizowane za pomocą dowolnych kart grafiki.
Kod aplikacji przygotowany do ponownego użytku
Raz utworzona aplikacja może być przenoszona z jednego sprzętu na inny bez konieczności zmiany kodu lub wymagająca tylko
niewielkich poprawek. Przeniesienie aplikacji z jednego frame grabbera na inny jest więc tak proste, jak zmiana jednej
linijki kodu aplikacji.
...
/* Allocate a system */
MilSystem = MsysAlloc(M_SYSTEM_METEOR_II_CL,...);
...
...
/* Allocate a system */
MilSystem = MsysAlloc(M_SYSTEM_SOLIOS,...);
...
Przez zmianę pojedynczej linii kodu aplikacja wykorzystująca frame grabber Matrox Meteor-II/CameraLink może pracować z frame
grabberem Matrox Solios XCL.
Optymalne wykorzystanie zasobów sprzętowych
Funkcje MIL zostały zoptymalizowane dla wykorzystania technologii Intel® MMX© oraz Streaming SIMD
Extensions (SSE/SSE2). Dzięki temu w pełni można wykorzystać wydajność współczesnych procesorów takich jak Intel® Xeon©
i AMD Opteron©. Pewne funkcje przetwarzania obrazów mogą odciążać jednostkę centralną komputera PC lub nawet mogą być
przyspieszone przy wykorzystaniu sprzętu do przetwarzania obrazów z technologią Matrox Oasis ASIC i/lub technologią FPGA.
Dodatkowo istnieje możliwość uruchomienia aplikacji w sposób natywny i zoptymalizowany na procesorach wideo Matrox
wyposażonych w skalowalne procesory Motorola® G4 PowerPC© z technologią AltiVec© (procesory wideo serii Matrox
Odyssey z wykorzystaniem Matrox Odyssey SDK).
Uproszczone zarządzanie systemem
Dzięki MIL twórca aplikacji nie ma potrzeby dogłębnego poznania systemu dla którego tworzy aplikację.
MIL zostało zaprojektowane dla zapewnienia pełnej zgodności z obsługiwanym sprzętem i dostarcza uproszczonego zarządzania
tym sprzętem (np. rozpoznanie sprzętu, inicjalizacja, kopiowanie bufora itp.). Dla przykładu, jeżeli chcemy pozyskiwać obraz do
pamięci operacyjnej, to MIL w dyskretny sposób alokuje bufor pamięci określonego typu (np. niestronicowana pamięć). Dodatkowo
MIL daje twórcom dostęp do pewnych zasobów sprzętowych. Na przykład, MIL dostarcza adres fizyczny bufora. MIL zawiera
także usługi debugowania (np. funkcje sprawdzania parametrów, śledzenie i raportowanie błędów) dla dla dalszego wspomagania
rozwoju aplikacji.
Formaty danych
MIL-Lite może operować na takich danych jak: obrazy monochromatyczne zachowywane w
formacie całkowitym 1-, 8-, 16- i 32-bitowym lub w formacie zmiennoprzecinkowym 32-bitowym. MIL-Lite obsługuje także
obrazy kolorowe zachowane w formacie spakowanym lub planarnym RGB/YUV. Zawarte są funkcje dla konwersji pomiędzy
formatami danych.
Subpikselowa dokładność
Przemysłowe przetwarzanie obrazów wymaga dużej dokładności. Dla spełnienia tych wymagań,
analiza obiektów, kalibracja, poszukiwanie krawędzi, poszukiwanie modelu geometrycznego, pomiary oraz operacje rozpoznawania
wzorców są wykonywane z dokładnością subpiksela.
Multiprzetwarzanie i wielowątkowość
MIL obsługuje modele programowania z multiprzetwarzaniem i wielozadaniowe. W środowisku
Windows® 2000/XP lub Linux może być uruchamianych jednocześnie wiele aplikacji nie współdzielących danych lub też
pojedyncze wielowątkowe aplikacje współdzielące dane MIL.
MIL dostarcza mechanizmu synchronizacji dla dostępu do współdzielonych danych i zapewnia, że wątki aplikacji używające te
same dane nie wpływają na siebie. Ta możliwość połączona z Windows® 2000, Windows® XP lub Linux'em umożliwia tworzenie
aplikacji, które rozdzielają przestrzeń roboczą pomiędzy poszczególne procesory w wieloprocesorowych systemach PC lub
w systemach z wieloma węzłami przetwarzania na bazie procesorów wideo Matrox.
MIL oferuje także zarządzanie wątkami niezależnie od platformy sprzętowej, dzięki czemu jest zapewniona łatwa przenośność
aplikacji. Dodatkowo, te wątki są automatycznie odbijane i synchronizowane pomiędzy platformami podczas kontrolowania
procesorów wideo Matrox (serii Matrox Odyssey) z poziomu komputera PC.
Elastyczne pozyskiwanie danych
Dla większej określoności i zwiększenia szybkości odpowiedzi, MIL dostarcza multibuforowane
pozyskiwanie obrazów realizowane na poziomie jądra systemu operacyjnego. Dzięki temu pozyskiwanie obrazów jest
zabezpieczone nawet w przypadku, kiedy procesor komputera jest bardzo obciążony takimi zadaniami, jak zarządzanie HMI, obsługa
sieci lub archiwizowanie danych na dysku.
MIL w połączeniu ze sprzętem firmy Matrox umożliwia wysokiej jakości pozyskiwanie obrazów z dowolnych źródeł kolorowego lub
monochromatycznego sygnału wideo: kamer standardowych, wysokorozdzielczych, linijkowych i powolnie skanujących,
magnetowidów, a także źródeł zdefiniowanych przez użytkownika. Możliwy typ obsługiwanej kamery jest zależny od użytego frame
grabbera lub procesora wideo.
Zachowywanie i ładowanie
MIL obsługuje zachowywanie i ładowanie obrazów z dysku komputera. Obsługiwane są standardy formatów TIF (TIFF), BMP,
JPG (JPEG), JP2 (JPEG2000), AVI oraz format binarny bez nagłówka (RAW).
Uproszczone wyświetlanie obrazu (niedostępne w wersji dla Windows® CE, częściowo
dostępne w wersji dla Linux)
MIL dostarcza transparentnego zarządzania wyświetlaniem obrazu z automatycznym śledzeniem
i uaktualnianiem okna z wyświetlanym żywym obrazem wideo. MIL umożliwia także wyświetlanie obrazu w oknie zdefiniowanym
przez użytkownika. Dodatkowo MIL obsługuje wyświetlanie na żywo wielu strumieni wideo wykorzystując wiele niezależnych okien
lub jedno mozaikowe okno. W zależności od użytego sprzętu, MIL umożliwia także niedestrukcyjne nakładkowanie żywego obrazu
wideo na grafikę bez interwencji procesora komputera i może wyeliminować zniekształcenia występujące podczas wyświetlania
żywego obrazu wideo.
MIL obsługuje także konfiguracje wielomonitorowe z trybem rozszerzonego pulpitu (pulpit Windows®
wyświetlany jest na wielu monitorach) z trybem pracy zewnętrznej (monitor nie pokazuje pulpitu Windows®, ale jest dedykowany do
wyświetlania obrazu przez MIL) lub kombinacją tych dwóch trybów. Konfiguracje wielomonitorowe są osiągane poprzez użycie
odpowiednich kart frame grabberów lub procesorów wideo Matrox i/lub kart grafiki Matrox lub innych producentów.
Interaktywne narzędzia(tylko w wersji dla Windows® 2000/XP (32-bit))
MIL zawiera oprogramowanie Matrox Intellicam przeznaczone do konfiguracji kamery. Jest to
oprogramowanie pracujące w środowisku Windows®, które umożliwia dopasowanie dowolnej kamery lub innego źródła sygnału
wideo do pracy z dowolnym frame grabberem lub procesorem wideo firmy Matrox. MIL zawiera także zestaw interaktywnych
narzędzi bazujących na Windows® dla każdej kluczowej funkcji przetwarzania i analizy obrazów. Przenaczone są one dla
konfigurowania i eksperymentowania. Każde z narzędzi obsługuje pozyskiwanie i przetwarzanie żywego obrazu wideo oraz
odczyt i zapis pojedynczych obrazów i sekwencji obrazów. Podpowiedzi dla kontrolek okna dialogowego dostarczają wygodnego
odniesienia do aktualnych wywołań funkcji MIL.
Obszerna i łatwo dostępna dokumentacja
Pomocnik dostarcza użytkownikom obszernej, ale łatwej do przeszukania dokumentacji obejmującej
wszystkie aspekty MIL. Pomocnik ten integruje się z Microsoft® Visual Studio .NET i jest czuły kontekstowo, umieszczając go dla
łatwego dostępu do niego, kiedy jest on stale potrzebny. Pomocnik ten może być także dostosowany do wykorzystywanego
środowiska.
Program wsparcia
MIL zapewnia zarejestrowanym użytkownikom automatyczny wpis do programu wsparcia na okres
jednego roku. Ten program wsparcia upoważnia zarejestrowanych użytkowników do darmowych uaktualnień oprogramowania i do
wsparcia technicznego od Matrox Imaging. Dodatkowo, zarejestrowani użytkownicy mają pełny dostęp do forum Matrox Imaging
Developer's Forum - moderowane żywa społeczność dla dyskusji na temat wszystkich produktów Matrox Imaging. Przed
zakończeniem programu wsparcia, zarejestrowani użytkownicy mają możliwość rozszerzenia tego programu na kolejny rok.
Dla większej ilości informacji prosimy o kontakt z naszym biurem.
Dane techniczne
Pełny zakres funkcji dla wizji maszynowej, obrazowania medycznego i analizy obrazów
MIL posiada budowę modularną zarówno dla kontrolowania systemu i karty frame grabbera lub procesora wideo, jak i dla
przetwarzania i analizy obrazów.
Przetwarzanie obrazów Rozszerzone!:
Bogaty zbiór podstawowych funkcji dla przetwarzania obrazów obejmujący operacje punktowe, statystyczne, filtrowanie,
operacje morfologiczne, transformacje geometryczne, transformatę FFT oraz segmentację.
Operacje punktowe:
- ręczne lub automatyczne progowanie (binaryzacja lub obcinanie)
- operacje arytmetyczne: dodawanie, odejmowanie, mnożenie, dzielenie całkowitoliczbowe, dzielenie stałoprzecinkowe (dwa
obrazy lub obraz i stała), negacja, wartość absolutna, kopiowanie obrazu (warunkowe, według maski, itp.), wzmocnienie i ofset,
czyszczenie bufora zadaną wartością całkowitą, wypełnianie określoną wartością
- operacje logiczne: NOT, AND, NAND, OR, XOR, NOR i XNOR (dwa obrazy lub obraz i stała wartość)
- operacje porównawcze: minimum, maksimum
- przesunięcie
- mapowanie barw za pomocą tablicy LUT
- uśrednianie ramek obrazu
Operacje statystyczne:
- warunkowe minimum/maksimum (włączając wartość absolutną), wartość średnia i wartość odchylenia standardowego
piksela
- warunkowa suma (włączając wartość absolutną i kwadratową) wartości pikseli
- lokalizowanie określonych wartości piksela
- obliczanie różnicy pomiędzy dwoma obrazami
- histogram intensywności
- projekcja 2D do 1D
- wyrównywanie histogramu
Filtrowanie:
- predefiniowane filtry Skończonej Odpowiedzi Impulsowej (Finite Impulse Response) - FIR dla detekcji krawędzi (Laplacian,
Prewitt, Sobel itp.), wyostrzania (Laplacian) i wygładzania
- predefiniowane filtry Nieskończonej Odpowiedzi Impulsowej (Infinite Impulse Response) - IIR dla rózniczek 1 i drugiego stopnia,
detekcji krawędzi, wyostrzania i wygładzania
- usuwanie zakłóceń i wygładzanie obrazu: filtr dolnoprzepustowy Gaussa i filtr medianowy
- kontrolowanie predefiniowanych lub tworzenie własnych filtrów FIR i IIR
Operacje morfologiczne:
- erozja, dylatacja, otwieranie, zamykanie, szkieletowanie, pogrubianie, trafianie i chybianie, rozpoznawanie wzorca binarnego,
strefa wpływu, dystans i etykietowanie
- operatory morfologiczne definiowane przez użytkownika - dowolnego kształu i wielkości
Transformacje geometryczne:
- zmiana wymiarów obrazu: metodą najbliższego sąsiedztwa lub poprzez interpolację
- obracanie obrazu: metodą najbliższego sąsiedztwa lub poprzez interpolację
- odbicie obrazu w poziomie i pionie
- przesunięcie z dokładnością subpiksela
- konwersja współrzędnych biegunowych do kartezjanskich i odwrotnie
- deformowanie przy użyciu wielomianu 1 rzędu (przesunięcie, obrót, skalowanie i efekt obcinania) lub za pomocą tablicy
odwzorowań barw LUT (mapowanie perspektywiczne, przesunięcie, obrót, skalowanie, efekt obcinania i czterech
narożników, transformacje drugiego i trzeciego rzędu i transformacje zdefiniowane przez użytkownika)
FFT:
Transformuje obrazy z domeny przestrzennej do częstotliwościowej i odwrotnie dla analizy częstotliwościowej obrazu:
- dostarcza wyników w postaci części rzeczywistej i urojonej lub też w postaci widma mocy (skalowanego do wielkości
obrazu) i fazy
Segmentacja:
Dla skomplikowanych segmentacji obiektów dostarczany jest operator morfologiczny "działów wodnych" dla poziomów szarości.
Funkcja używana w poziązaniu z innymi funkcjami MIL dla etykietowania i/lub dla obiektów połączonych segmentowo.
- regularne i bezpośrednie "działy wodne" (dla separacji cząsteczek)
- wydzielanie "zlewisk" z ekstremów (minumum lub maksimum) lub z obrazu markera
- dopasowywanie minimalnej zmienności i wypełnienia "zlewisk"
Niwelacja przeplotu:
Eliminuje czasowe zakłócenia obrazów ze źródeł wideo z przeplotem.
Profilowanie 3D:
Szybko wyodrębnia strukturalne światło promienia laserowego lub linii laserowej z obrazu dla wygenerowania profilu 3D
obiektu:
- wyodrębnia piki wzdłuż kolumn lub wierszy
- oblicza uśrednioną intensywność piku
- pozycja piku jest określana z dokładnością 1/128 piksela (zależy od ustawień)
- ustalanie minimalnego progu intensywności piku dla ignorowania fałszywych pików spowodowanych
zakłóceniami
Kompresja/dekompresja
Kompresuje i dekompresuje monochromatyczne i kolorowe obrazy przy wykorzystaniu standardu JPEG lub JPEG2000.
- obsługa trybów kompresji ze stratami i bez strat
- przetwarza 8/16-bitowe piksele na planie (8-bitowe tylko dla kompresji JPEG ze stratami)
- przekształcanie planarnych/spakowanych formatów RGB/YUV do:
- planarnego RGB/YUV i spakowanego YUV dla kompresji JPEG ze stratami
- planarnego RGB dla kompresji JPEG bez strat
- planarnego RGB/YUV dla kompresji JPEG2000
- obsługa sekwencji obrazów (zachowywanych w formacie AVI)
- zmienny współczynnik kwantyzacji (Q-factor)
- definiowalny kodek JPEG:
- wybierany predyktor #0, #1 lub #2 dla trybu kompresji bez strat
- definiowane tablice Huffmana i kwantyzacji
- definiowane markery restartu
- definiowalny kodek JPEG2000:
- definiowany rozmiar obrazu docelowego dla kompresji ze stratami
- definiowana tablica kwantyzacji
- definiowana liczba iteracji transformacji fali dyskretnej (discrete wavelet transform - DWT)
Pomiary
Określa lub automatycznie lokalizuje znaczniki punktów odniesienia. Automatycznie znajduje wiele znaczników punktów odniesienia
przy jednokrotnym wywołaniu funkcji. Wykonuje dokładne pomiary między znacznikami.
- dostosowywany współczynnik zniekształcenia (aspect ratio) piksela
- określa markery (punkty, krawędzie, paski)
- automatycznie lokalizuje markery (krawędzie i paski)
- oblicza: kąt, kontrast, ilość, długość, współczynniki równania liniowego, liczbę wewnętrznych krawędzi, biegunowość,
pozycję, wariancję pozycji, szerokość i wariancję szerokości
- określa kąt, odległość i współczynniki równania liniowego pomiędzy markerami
- rysuje różne charakterystyki markerów
- zachowuje, ładuje i przywraca wcześniej zachowane markery z/do pliku lub pamięci
Metrologia
Kompletne narzędzie aplikacji dwuwymiarowego (2D) wymiarowania z tolerancjami. Mierzy i konstruuje cechy geometryczne
i sprawdza ich tolerancje na bazie wzorca.
- mierzy skończone cechy (kąty, koła, segmenty, punkty i dane raw) w określonych obszarach
- konstruuje cechy (kąty, koła, segmenty, punkty i dane raw) z innych elementarnych parametrów lub innych cech
- uzyskuje elementarne parametry cech (kąt początkowy i końcowy, pozycja początkowa i końcowa, kąt i promień koła,
współczynniki równania linii, itp.) oraz właściwości (długość, obwód, itp.)
- sprawdza tolerancje bazując na wymiarach (minimalny i maksymalny dystans i długość), pozycjach i kształcie (kołowość,
koncentryczność, równoległość, prostopadłość, okrągłość, prostoliniowość)
- uzyskuje status tolerancji (przeszło, przeszło z ostrzeżeniem, nie przeszło)
- przemieszczenie wzorca (przesunięcie, obrót, przeskalowanie)
- kalibracja dla uzyskania wyników w rzeczywistym układzie współrzędnych (np. w milimetrach lub w calach)
- rysuje cechy i tolerancje
- zachowuje obraz referencyjny z wzorcem (np. kontekst)
- interaktywne narzędzie Windows® dla eksperymentowania (tylko w wersji dla Windows® 2000/XP (32-bit))
Nowe!
Analiza obiektów (blobów): Rozszerzone!
Analizuje połączone komponenty na obrazie (obiekty). Umożliwia zliczanie, etykietowanie i mierzenie cech obiektów. Mierzy ponad
50 róznych cech obiektów binarnych i z poziomami szarości. Wybiera i porządkuje obiekty na podstawie ich cech. Podaje liczbę
obiektów spełniających określone kryteria. Obsługiwane jest także rekonstruowanie i rysowanie obiektów i odpowiednich
wyliczonych cech tych obiektów.
- ustawianie metody etykietowania (indywidualnie lub grupowo), tła, kratownicy (4 lub 8 połączonych), współczynnika
kształtu piksela oraz czasu oczekiwania (timeout)
- identyfikowanie (etykietowanie) obiektów
- obliczanie cech:
- z obrazów binarnych: pole powierzchni, współrzędne ograniczającego prostokąta, szerokość, więzy, kompaktowość, ilość,
obwód (włączając wypukłość), wydłużenie, liczba Euler'a, średnica fereta (minimalna, maksymalna, średnia, pod specyficznym
kątem), pierwsze punkty, pierwsze punkty styku, przerwy (ilość przejść pomiędzy tłem a planem), długość, ilość otworów
w obiekcie, ilość przebiegów, kołowość
- z obrazów z poziomami szarości: minimalna, maksymalna i średnia wartość poziomu szarości piksela, suma (także kwadratowa
oraz standardowe odchylenie wartości poziomów szarości pikseli
- z obrazów binarnych/z poziomami szarości: kąt głównej i wtórnej osi, środek ciężkości, momenty (zwykły i centralny)
- sortowanie i wybór obiektów na podstawie cech
- rekonstruowanie obiektów (usuwanie granic obiektów, wyodrębnianie i wypełnianie otworów oraz odziarnianie)
- łączenie obiektów (np. przywracanie obiektów, które rozciągają się na przyległe obrazy)
- rysowanie obiektów i odpowiednich obliczonych cech
Edge Finder - poszukiwacz konturów
Potężne narzędzie wyodrębniania i analizy krawędzi używane do detekcji uszkodzeń, znajdowania obiektów ze znaczną
deformacją oraz do bardzo szybkiego znajdowania prostych obiektów.
- definiowanie maski obrazu
- modyfikowanie parametrów wyodrębniania: typ filtru (Chen-casten, Canny-Deriche, Frei-Chen, Prewitt, Sobel), tryb
(rekursywny lub jądro filtru), wielkość jądra filtru (automatycznie lub ręcznie), głębokość jądra, tryb nadskanowania jądra,
wygładzanie, wartość tła (czerń i/lub biel), dokładność, typ amplitudy (gradient i kwadrat gradientu), progowanie (predefiniowane
lub ręczne) i czas timeout
- dopasowywanie parametrów konstrukcyjnych: odległości otworów, kąty otworów, biegunowość, ciągłość (najbliższe
sąsiedztwo lub minimalna krzywizna), typ aproksymacji (brak lub wielomianowa) i tolerancja aproksymacji (od dokładnej do
zgrubnej)
- szybko wyodrębnia i tworzy kontury obiektów lub cienkie linie grzbietów
- odporny na zmienne oświetlenie i zakłócenia
- działa z obrazami monochromatycznymi i kolorowymi (granice kolorów)
- rejestrowanie wyników pośrednich: surowe kąty, surowe amplitudy, kąty łańcucha, amplitudy i pochodne łańcuchców
- obliczanie cech: współrzędne prostokąta otaczającego, środek ciężkości, obwód zamknięty i wypukły, dopasowanie kołowe
(środek, pokrycie, błąd i promień), dopasowanie eliptyczne (środek, kąt, pokrycie, oś duża i mała), Ferrety (wydłużenie,
maksymalny/ minimalny kąt, maksymalna/ średnia/ minimalna średnica, ogólny), punkt startowy, etykieta, długość (surowa i
wygładzona), dopasowanie liniowe (współczynniki i błąd), moment wydłużenia (włącznie z kątem), pozycja, moc (także średnia)
rozmiar, krętość oraz punkty styku
- obliczenia wykonywane stało- i zmiennoprzecinkowo
- dokładność do 1/40 piksela
- weryfikacja statusu przekroczenia czasu (timeout)
- wybór i porządkowanie według cech, cechy obciętego łańcucha, wzajemnych powiązań (wewnątrz lub na zewnątrz
łańcucha lub prostokąta ograniczającego) i kryterium najbliższego sąsiedztwa (do określonego punktu)
- wydobywanie statystyk cech (minimum, maksimum, wartość średnia i odchylenie standardowe)
- określanie elementów krawędzi najbliższych do listy punktów z uwzględnieniem różnych wymuszeń
- rysowanie wydobytych cech i różnych obliczonych cech
- zachowywanie, ładowanie lub przywracanie wcześniej zachowanego kontekstu do/z pliku lub pamięci
- zachowywanie łańcuchów i/lub aproksymacji krawędzi w plikach DXF AutoCAD'a®
- wysyłanie wyodrębnionych wyników do modułu Geometric Model Finder (poszukiwacz modelu geometrycznego) dla
rozpoznawania wzorców
- interaktywne narzędzie Windows'owe dla eksperymentowania (tylko w wersji dla Windows® 2000/XP (32-bit))
Geometric Model Finder - poszukiwacz modelu geometrycznego (chronione patentem U.S.
7,027,651 B2)
Używa cech geometrycznych (np. konturów) dla kierowania robotem przemysłowym, umiejscowienia wafla CMP i dla innych
wymagających aplikacji. Unikatowy algorytm dostarcza wyjątkowej elastyczności z nieporównywalnymi stopniami dokładności
i stabilności.
- określanie poszukiwanego modelu ręcznie z obrazu źródłowego używając predefiniowanych obiektów (koło, krzyż, elipsa,
linia, prostokąt, trójkąt, romb, pierścień i kwadrat) lub z pliku DXF AutoCAD'a®
- definiowanie modelu włącznie z maską dla obszarów nieistotnych, niespójnych, bez cech lub dodatnio/ ujemnie ważonych
- tworzenie modeli z wcześniejszych modeli
- wybór typu filtra konturującego (rekurencyjnego lub opartego na jądrze), dopasowywanie wygładzenia dla filtra konturującego
i minimalnego progu dla konturów
- szybkie znajdowanie i lokalizowanie predefiniowanych modeli, które zostały przesunięte, obrócone (od 0° do 360°) i/lub
skalowane (od 50% do 200%)
- dokładność przesunięciowa do 1/40 piksela, dokładność obrotowa do 1/20 stopnia i dokładność skalowania do 0.1%
- akceptowanie braku lub nakładania się znaczących konturów
- tolerowanie niejednorodnych zmian kontrastu (np. odbić światła) włącznie z pełnym lub częściowym odwróceniem
kontrastu
- szybkie wyszukiwanie wielu modeli i/lub ich jednoczesnego występowania
- szybkość poszukiwań jest niezależna od obrotu i tylko w niewielkim stopniu zależy od rozmiaru modelu i liczby modelów i/lub
liczby ich wystąpień
- bardzo szybko przeszukuje złożone sceny z ograniczonym zakresem kąta i skali
- przeszukiwanie z odsianej pozycji
- modyfikowanie parametrów poszukiwania: model i docelowy obszar pokrycia, błąd i waga dopasowania, poziom akceptacji
i pewności, liczba wystąpień, kąt i osie odniesienia, współczynniki skrzywienia, zakresy kąta i skali, polaryzacja konturu,
minimalne kryterium separacji, wspólne kontury, obszar poszukiwań, prędkość, dokładność i czas oczekiwania
- wyniki poszukiwań: indeks modelu, ocena celu, pokrycie modelu, błąd dopasowania, współczynniki skrzywienia, polaryzacja,
liczba wystąpień, ocena, pozycja włącznie z kątem i skalą, status przekroczenia czasu (timeout)
- zachowywanie, ładowanie lub przywracanie wcześniej zachowanego kontekstu do/z pliku lub pamięci
- rysowanie różnych charakterystyk modeli i ich wystąpienia
- interaktywne narzędzie Windows'owe dla definiowania modeli i eksperymentowania (tylko w wersji dla Windows® 2000/XP
(32-bit))
Rozpoznawanie wzorców
Używa znormalizowanej korelacji dla poziomów szarości dla rozwiązywania problemów położenia, pomiarów i inspekcji. Powyższy
algorytm obsługuje obrazy uszkodzone, zaszumione oraz nieostre i używa inteligentnej strategii poszukującej dla zwiększenia
szybkości działania.
- można zdefiniować model (automatycznie lub ręcznie): poprzez określenie parametrów modelu i powiązań
- definiowanie modelu z ustawianiem maski modelu "pikseli nie branych pod uwagę"
- szybkie poszukiwanie i lokalizowanie na zadanym obrazie zdefiniowanego modelu przesuniętego i/lub obróconego o losowy kąt
(w pełnym zakresie 360 stopni)
- dokładność przesunięcia do 1/40 piksela, dokładność obrotu do 1/10"
- modyfikowanie domyślnych parametrów poszukiwań: środek modelu, liczba rozpoznań, próg akceptacji i pewności, obszar
poszukiwań, prędkość i dokładność
- wyniki poszukiwań: ocena, liczba rozpoznań modelu i pozycja modelu (z dokładnością subpiksela) włącznie z kątem
- rysowanie różnych charakterystyk modeli i ich wystąpienia
- znajdowanie orientacji całego obrazu lub modelu na prostym tle
Rejestracja Rozszerzone!
Optymalnie przekształca obrazy z sąsiadujących scen pobranych z różnych punktów odniesienia do pojedynczego obrazu sceny
z pojedynczego punktu odniesienia. Szybko przekształca nowe obrazy tych samych sąsiadujących scen pobranych z tych samych
punktów odniesienia wykorzystując wcześniej określone transformacje.
- obsługuje obrazy przesunięte lub z różnych perspektyw włącznie z przeskalowaniem
- znajduje najlepsze wyrównanie nakładajacych się wspólnych obszarów dla sąsiadującego lub referencyjnego obrazu
używając podanej zgrubnej pozycji
- części (w przeciwieństwie do całości) nakładających się obszarów są porównywane dla lepszej odporności na lokalne
zmiany kontrastu i intensywności
- wyrównywanie jest realizowane z dokładnością subpikselową
- obsługuje konwersję współrzędnych pomiędzy różnymi układami współrzędnych
- łączy razem serie obrazów sąsiadujących scen pobranych z różnych punktów odniesienia w pojedynczy obraz mozaikowy
- tworzy ostrzejszy obraz z serii obrazów tej samej sceny pobranych w przybliżeniu z tego samego punktu
odniesienia
Kody paskowe 1D i macierzowe 2D Rozszerzone!
Odczytuje/zapisuje większość popularnych kodów paskowych i macierzowych.
- obsługa kodów kreskowych 1D w standardzie BC412, Codabar, Code39, Code93, Code128, EAN-8, EAN-13, Interleaved 2 of 5,
Pharmacode, Planet, Postnet, RSS, UPC-A, UPC-E
- obsługa kodów macierzowych 2D w standardzie DataMatrix (włącznie z ECC200), Maxicode, MicroPDF417, PDF417 i QR
- obsługa kodów zespolonych (1D z 2D)
- odczyt kodów obróconych, skalowanych i uszkodzonych
- automatycznie znajduje kody w złożonych scenach
- adaptacyjne progowanie umożłiwia odczyt kodów 1D (za wyjątkiem Planet, Posnet i RSS) oraz 2D (DataMatrix, Maxicode i QR)
w środowisku z niejednorodnym oświetleniem
- klasyfikuje (weryfikuje) kody 1D, 2D i zespolone przy użyciu Międzynarodowej Specyfikacji Symboliki (International Symbology
Specification - ISS)
- zachowywanie, ładowanie lub przywracanie wcześniej zachowanego obiektu do/z pliku lub pamięci
- interaktywne narzędzie Windows'owe dla eksperymentowania (tylko w wersji dla Windows® 2000/XP (32-bit))
Kalibracja Rozszerzone!
Kompensuje obrazy, pozycje i/lub pomiary dla nieidealnych reprezentacji przestrzennych pola widzenia kamery. Kompensacja
odbywa się metodą interpolacji liniowej.
- kompensowanie zniekształcenia obiektywu (np. zniekształcenie poduszkowe i beczkowe), zniekształcenia współczynnika
wyglądu (inna skala w pionie i poziomie), zniekształcenia obrotu i perspektywy
- konwertowanie danych ze współrzędnych pikselowych do rzeczywistych współrzędnych otoczenia i odwrotnie (np.
zamienia piksele na milimetry)
- kalibracja za pomocą obrazu z siatką wzorcową lub za pomocą listy punktów
- obsługa współrzędnych kartezjanskich zdefiniowanych przez użytkownika względem obiektów na obrazie lub ich
pozycji
- umożliwia wykonywanie obliczeń w modułach Znajdowania Konturów (Edge Finder) i Znajdowania Modelu Geometrycznego
(Geometric Model Finder) bezpośrednio w jednostkach rzeczywistych
Odczyt łańcuchów tekstowych Rozszerzone!
Wyrafinowane rozpoznawanie znaków bazujące na cechach dla sprostania wymaganiom takich aplikacji, jak automatyczne rozpoznawanie numerów rejestracyjnych (automatic number plate recognition - ANPR). Innowacyjny algorytm łatwy w użyciu i
potężny.
- definicja bazująca na kontekscie obsługuje modele wielu łańcuchów (czytanie parametrów i powiązań) i/lub wiele czcionek
- alokowanie czcionek półautomatycznie (brak potrzeby identyfikowania pojedynczych znaków) lub użycie predefiniowanych
czcionek (TrueType i Postscript)
- wsparcie dla znaków łacińskich (Latin) włączając w to akcenty i przecinki
- zarządzanie czcionkami: normalizowanie rozmiaru czcionki, dopasowanie linii bazowej znaku oraz sortowanie zbiorów
znaków
- kontrolowanie modeli łańcuchów tekstowych: tło, reguły gramatyczne, maksymalne odchylenie od linii bazowej, minimalna/
maksymalna/ nominalna wartość kątów/ współczynnika zniekształcenia łańcucha/ skali. Minimalne/ maksymalne kąty/
współczynnik zniekształcenia/ skala, liczba łańcuchów, odstępy łańcuchów oraz kąt skrętu.
- ustalenie reguł gramatycznych: minimalna/ maksymalna ilość znaków w łańcuchu, typ znaków łącznie z cyframi, duże/ małe
litery, list lub lista użytkownika w każdej pozycji
- dopasowanie wszystkich ustawień kontekstu: minimalny kontrast, prędkość, okres przekroczenia czasu (timeout),
formatowanie wyświetlania, stopień akceptacji znaku/ łańcucha
- automatycznie lokalizuje (bez potrzeby ustawiania obszaru zainteresowań - ROI) i odczyt łańcucha lub wielu łańcuchów
jednocześnie (na tej samej lub innej linii)
- obsługuje skrajną zmianę kontrastu (włącznie z odwróceniem kontrastu)
- automatycznie dopasowuje zmiany w skali (od 50 do 200 %), współczynnik zniekształcenia (od 0.5 do 2.0 względem punktu
odniesienia), obrót (±10°), pochyłe znaki i kąt znaków różne od kąta łańcucha
- referencyjny współczynnik zniekształcenia łańcucha i dopasowująca się skala od 0.25 do 4.0 i odpowiednio od 25% do
400%)
- czytanie wyników włączając łańcuch pod kątem/ ze zmienionym współczynnikiem zniekształcenia/ pozycją/ pochyleniem, skalą,
rozmiarem i punktacją
- rysowanie znaków (włączając prostokat ograniczający, konturu i środka) i łańcucha tekstowego (prostokąt ograniczający)
- Interaktywne narzędzia dla definiowania kontekstu i eksperymentowania (tylko w wersji dla Windows® 2000/XP
(32-bit))
OCR Rozszerzone!
Odczytywanie i weryfikacja mechanicznie generowanych znaków posiadających jednorodne wymiary i odstępy (np. numery
seryjne płytek półprzewodników). Moduł umożliwia odczyt czcionek ze stałą szerokością i proporcjonalnych. Funkcja ta jest
zoptymalizowana dla odczytu częściowo zdegradowanych czcionek SEMI oraz dla wyuczonych czcionek użytkownika.
- alokowanie predefiniowanych czcionek (MICR, OCR A i B, SEMI M12-92 i M13-88) lub czcionek użytkownika
- kalibrowanie czcionki dla zgodności z obrazem wzorcowym
- lokalizowanie łańcuchów tekstowych przesuniętych, obróconych (0° to 360°) i przeskalowanych
- odczytywanie nieznanych łańcuchów znaków, wielu łańcuchów (w tej samej lub różnych liniach) jednocześnie oraz odstępów
pomiędzy znakami
- weryfikowanie znanych łańcuchów znaków
- odczytywanie wyników (wartości łańcuchów, pozycje i wynik odczytu).
- określanie odpowiednich znaków dla każdej pozycji
- zachowuje lub ładuje istniejącą czcionkę
- kopiowanie znaków czcionki z/do obrazu docelowego
- określanie sprawdzania sumy kontrolnej użytkownika
- interaktywne narzędzie Windows'owe dla definiowania czcionki i eksperymentowania (tylko w wersji dla Windows® 2000/XP
(32-bit))
Kontrola aplikacji
Dostarcza funkcji kontrolnych takich jak sprawdzanie błędów, funkcje śledzące oraz domyślne alokacje dla uproszczenia
programowania i debuggowania.
Kontrola danych
Funkcje dla manipulacji buforami danych (także obrazami).
- alokacja/dealokacja bufora obrazu
- definiowanie obszaru zainteresowań (ROI)
- odczyt/zapis i bezpośredni dostęp do bufora danych
- obsługa buforów obrazów monochromatycznych i kolorowych (RGB i YUV)
- filtr Bayer'a używający bilinearnych interpolacji lub algorytm adaptacyjny ze wsparciem dla balansu bieli, korekcji gamma,
korekcji zakłóceń w kolorze
- zachowywanie obrazów na dysku w standardowych formatach, takich jak TIF, BMP, JPG, JP2 i AVI oraz w formacie binarnym
bez nagłówka (RAW)
Kontrola wyświetlania obrazów (zależne od sprzętu)
Zawiera takie funkcje jak wyświetlanie obrazu (w oknie domyślnym lub zdefiniowanym przez użytkownika), powiększanie,
rozszerzanie, przewijanie, manipulowanie tablicą odwzorowań barw LUT oraz funkcje kontroli nakładki grafiki.
- wyświetlanie obrazu w oknie MIL lub w oknie zdefiniowanym przez użytkownika
- niedestrukcyjne nakładkowanie żywego obrazu wideo na grafikę bez interwencji procesora komputera
- tryb wyświetlania żywego obrazu wideo bez zniekształceń
- obsługa konfiguracji wielomonitorowych (tryb rozszerzonego pulpitu i/lub tryb zewnętrzny)
- formaty wyświetlania do VGA do UXGA, NTSC/PAL oraz format użytkownika
Kontrola digitizera (zależne od sprzętu)
Pełna obsługa digitizera (karty frame grabbera lub procesora wideo).
- pozyskiwanie obrazu pojedyncze, ciągłe, asynchroniczne i z podwójnym buforowaniem
- ustawianie napięć referencyjnych, wzmocnienia i ofsetu, barwy, jasności i kontrastu
- wejściowa tablica LUT
- wybór kanału wejściowego
- skalowanie w górę i w dół
- kontrola wyzwalania i naświetlania
- bity użytkownika dla wejścia/wyjścia
- komunikacja poprzez port szeregowy
Grafika
Zawiera zbiór podstawowych narzędzi dla tworzenia rysunków i przypisów tekstowych.
- rysowanie linii, prostokątów, łuków, kół, elips i punktów w wybranym kolorze
- pisanie tekstów wybraną czcionką w wybranym rozmiarze i kolorze
- specjalne funkcje rysujące dla analizy obiektów, poszukiwania krawędzi, poszukiwania modelu geometrycznego, pomiarów,
i rozpoznawania wzorców (np. ograniczający prostokąt, obrys, środek)
Auto-focus kamery
Umożliwia integrację z systemem automatycznego ustawiania ostrości kamery. Używane w powiązaniu z funkcją zwrotną
użytkownika dla sterowania obiektywem wyposażonym w napędzany pierścień ogniskujący lub dla sterowania mechanizmem
pozycjonowania kamery. Punkt optymalnej ostrości określany jest różnymi strategiami.
Wymagania systemowe
- komputer PC z procesorem IA32 (klasy Pentium lub lepszym)
- system operacyjny Microsoft® Windows® 2000, Windows® XP, Windows® CE .NET (dla Matrox Iris P-Series) i Linux
- minimum 128 MB pamięci operacyjnej RAM
- opcjonalny frame grabber firmy Matrox ze sterownikiem MIL dla Microsoft® Windows® 2000/XP
- karta grafiki (może być na karcie frame grabbera Matrox)
- Microsoft® Visual C++®.NET/Visual C++® 6.0 i Visual C++ .NET 2003 lub Microsoft® Visual Basic® .NET 2003 lub Linux GNU
Compiler Collection (GCC)
Dokumenty
mil.pdf - Ulotka - w języku angielskim mil-maintenance.pdf - Program wsparcia dla MIL - w języku angielskim mil-licensing.pdf - Zasady licencjonowania oprogramowania MIL - w języku angielskim milguide.pdf - Przewodnik MIL - w języku angielskim milguide-benchmarks.pdf - Benchmarki MIL/ActiveMIL - w języku angielskim milguide-command.pdf - Wykaz i opis funkcji MIL - w języku angielskim milguide-activemil.pdf - Wykaz i opis funkcji ActiveMIL - w języku angielskim milguide-proexamples.pdf - Przykłady programowania MIL - w języku angielskim
Oprogramowanie
|
|