ZESZYTY NAUKOWE POLITECHNIKI ŚLĄS KI EJ
Seria: IN FO RM AT YK A z. 5 Nr kol. 759
________ 1983
Andrzej KWIECIEŃ Krzysztof TANNEN BE RG
GENERACJE O B RA ZÓ W D Y NA MI CZ NY CH W SY ST E M A C H KOMPUT ER OW YC H
S t r e s z c z e n i e . W artykule om ówiono możliw oś ci otrzymywania o b r a zów dyna mi cz ny ch w różnych typach grafoskopów. Przedstawiono roz
wiąz an ia zrea li zo wa ne w czasie rzeczywistym i "off-line" w oparciu o pamięć masową.
O m ów io no nie rozwiązane dotychczas (w sposób zadowalający) p r o
blemy og ra ni cz eń czasowych, szybkości transmisji i p o j e m n o ś c i pa
mięci.
1. Wp ro wa dz en ie
G r af ic zn e urządzenia w e / w y maszyn cyfrowych są coraz powszechniej sto
sowane w informatyce. Przewiduje się [ l ], że w' na jb li żs zy ch trzech latach ich ilość podwoi się, a roczna wa rt oś ć sprzedawanych graf os ko pó w wyniesie 600 min do la ró w (rys. l). Popularność gr af os ko pó w wynika z bardzo dużej ilości informacji, którą zawiera rysunek (obraz). W [ljocenia się, że ry
sunek za st ęp uj e około 1000 sł ów opisu.
20 A. Kwiecień, K. Tannenberg
2 różnych typów gr af os ko pó w trzy rodzaje ag obecnie dominujęce:
- grafos ko py ż lampę kineskopowy G L K (ang. raster displays, scan dis- p l a y s ) *
- grafoskopy 2 lampę oscyloakopowę G L O (ang. line d rawing, d i s p l a y s , calli- graphic displsys, randon acces displays),
- grafoskopy z lampę oscyloskopowy z pamiyciy G L O P (ang. storage tube d i s plays) .
C h arakterystyki po sz czególnych typów znaleźć można w [4], [>].
2. Kl as yf ik ac ja obrazów
Ob ra zy otrzymywane w gr af os ko pa ch podzielić można na o b ra zy statyczne i obrazy dynamiczne. Przez obrazy statyczne rozumieć będziemy ob ra zy n i e ruchome. Obrazy statyczne mogę ulegać mo dy fikacjom (zmianom), lecz zmiany te nie stwarzajy złudzenia płynnego ruchu. Cechy charakte ry st yc zn y ob ra
zów dyna mi cz ny ch jest uzyskanie złudzenia płynnego ruchu. Proces obli
czeń, w wy ni ku którego otrzymuje się obrazy dynamiczne, nazywać będziemy symulację graficzny.
Ob ra zy statyczne nie narzucajy systemowi gr af ic zn em u wy ra źn yc h i os
trych wy magań czasowych. Raz obliczone parametry defi ni uj yc e obraz w p r o wa dzone sę jednorazowo do pamięci obrazu, a następnie poprzez czytanie za
wart oś ci pamięci następuje od św ie ża ni e obrazu z cz ęs to tl lw oś ci ę 30 Hz, 40 Hz lub 60 Hz. Mo dy fi ka cj e obrazu (np. dodanie lub usunięcie elementu obra
zu, zmniejszenie obrazu), zainicjowane poprzez operatora lub przez pro
gram, maję miejsce nie częściej niż co kilka - kilkanaście sekund. Czas obliczeń parametrów obrazu st at yc zn eg o wpływa jednak na jakość i ef ek ty w
ność konwersacji człowieka z maszynę cyfrowy.
A s p e k t y psychologiczne dialogu wymagaję, by oc ze ki wa ni e na wynik (czas reakcji) nie było zbyt długie.
Za sa dn ic zo inaeżej przedstawia się ten problem przy obrazach d y n a m i c z nych. Podstawowy warunek uzyskania złudzenia ruchu wymaga wy św ie t l a n i a ko
lejnych faz ruchu z cz ęs to tl iw oś ci ę (25-40) Hz. Osięga się wt e d y efekt po
dobny do projekcji filmowej z szybkościę (25-40) klatek na sekundę. W a r u nek ten oznacza, że co (25-40) ms musi być przesłany do grafoskopu pełny opis kolejnej fazy ruchu. Re al iz ac ję tego warunku można osięgnęć dwiema d r o g a m i :
A - prowadzić obliczenia p a ra me tr ów dla kolejnych faz ruchu "na bieżęco w czasie rzeczywistym,
B - najp ie rw wykonać obliczenia parame tr ów dla całej symulacji, zapisać je w pamięci, a następnie przesyłać opis kolejnych faz ruchu do grafo
skopu.
Generacje ob razów dynamicznych. 21
Rozwiązanie A Jest lepsze, bardziej uniwersalne i umożliwia pełną konwersację użyt ko wn ik a z maszynę cyfrowę. Oak się Jednak pr ze ko na my roz- więzanie to może znaleźć zastosowanie jedynie w przypadku bardzo prostych obrazów i praktycznie może mieć miejsce wyłą cz ni e w gr af oskopach z lampę oscyloskopową.
Rozwiązanie B, mimo że uniemożliwia konwersację. Jest powszechniej sto
sowane, po nieważ uzyskanie bardziej złożonego obrazu dy na mi cz ne go Jest możliwe tylko w ten sposób.
3. Typy g r a f os ko pó w a ob ra zy dynamiczne
Z istoty obrazu dyna mi cz ne go wynika, że można go otrzymać tylko w g r a
foskopach z odśw ie że ni em obrazu, tj. w grafoskopach GLK i GLO. Gr af os ko py GLOP umożliwiają jedynie dodawanie nowych faz ruchu bez wygasz an ia po
przednich, co pr ak tycznie uniemożliwia pr zedstawienie na ich ekranach o- brazów dynamicznych.
Grafoskopy G L O i G L K są szczegółowo om ówione w [4] i [6], Dla naszych rozważań istotne są następujące cechy charakterystyczne:
- Grafoskopy GLO przy kreśleniu obrazu korzystają z opisu naturalnego, tzn. np. ze w s p ó ł r zę dn yc h początku i końca wektora, ws półrzędnych środ
ka okręgu i Jego promienia. Pozwala to na 500-krotne zmniejszenie po je
mności pamięci obrazu w porównaniu z grafoskopami G L K [4],
- W grafoskopach GL K przed z a pi sa ni em parame tr ów obrazu do pamięci obrazu musi mieć miejsce proces konwersji opi6u na tu ralnego na opis rastrowy.
Znane do ty ch cz as algorytmy konwersji są st os un ko wo wolne.
- W grafoskopach GL K nie w y st ęp uj e problem migotania o b r a z u , ponieważ c z ę
stotliwość powielania jest stała i nie zależy od stopnia złożon oś ci o- brazu.
4. Symulacja graf ic zn a w graf os ko pa ch GLK
W najpowszechniej st os ow an yc h ro związaniach gr af o s k o p y G L K posiadają pełną pamięć obrazu. Oznacza to, że każdemu punktowi na ekranie odpowiada co najmniej 1 bit w pamięci obrazu. Liczba bitów przypisana każdemu z pun
któw na ekranie określa liczbę p o z i o m ó w szarości (lub k o l o r ó w ) , Jaką m o ż na w danym grafoskopie otrzymać. Dla średniej klasy g r a f os ko pó w o roz
dzielczości 512 x 512 pu nk tó w i 16 poziomach szarości (4 bity) pojemność pamięci obrazu wy no si 512 x 51? x 4 = 1.048.576 bitów.
4.1. Symulacja w czasie rzeczywistym
Pojawienie się obrazu na ekranie grafoskopu j8ko wyniku obliczeń p o
przedzone jest trzema procesami (rys. 2): ,
22 A. K w i e c i e ń . K. Tannen be rg
DANE PROGRAM UŻYTKOWY
OPIS MATUR AL]
5
KONWERSJI'PROCESOPIS RASTROJYY
fOWIELAMEi PAMIĘĆ
OBRAZU
OBRAZU .j/ SRAFI
EKRAN OSKOPU
Rys. 2. Sy mu la cj a w czasie rzeczywistym w gr af os ko pa ch GLK
- obliczeniem przez program użytkowy parametrów obrazu dla kolejnej fazy r u c h u ,
- konwersję opisu naturalnego na opis rastrowy, - wpisaniem wy ni ku konwersji do pamięci obrazu.
Przyjmijmy brak jakichkolwiek założeń og ra ni cz aJ ęc yc h klasę obrazów, tzn. przyjmijmy, że przy przejściu z jednej fazy ruchu do kolejnej może następie zmiana w każdym punkcie obrazu. Przy cz ęs to tl iw oś ci powielania obrazu 40 Hz całkowite przygotowanie nowej fazy ruchu nie może być d ł u ż sze niż 25 es. Ola ekranu o pamięci obrazu 512 x 512 x 4 bitów ot r z y m u jemy graniczną wartość czasu aktualizacji Jednego bitu pamięci obrazu
c gran 25 m s / 1 .048.576 bitów » 25 ns/bit.
Wymagania czasowe można zapisać następująco:
t l ♦ t 2 ♦ t 3 * ‘c g r a n ’ (1)
gdzie :
t. - czas obliczeń programu użytkowego sprowadzony do 1 bitu pa
mięci obrazu,
- czas konwersji opisu naturalnego na opis ra strowy s p r o w a d z o ny do 1 bitu pamięci obrazu,
- czas zapisu 1 bitu w pamięci obrazu, - czaa całkowity,
- graniczna wartość czasu aktu al iz ac ji 1 bitu.
jeat to całkowity czas obliczeń pr ogramu u- c gran
Inaczej mówięc, czas t^
żytkowego potrzebny do określenia kolejnej fazy ruchu podzielony przez liczbę bitów pamięci obrazu, a czas t2 Jest to całkowity czaa konwersji opisu naturalnego kolejnej fazy ruchu na opis rastrowy podzielony przez liczbę bitów pamięci obrazu.
Na obecnym etapie rozwoju technologii maszyn cy fr ow yc h spełnienie w a runku (l) dla t = 25 ns nie jest możliwe. Konieczne Jest przyję-
c gran J
cie ograniczeń, k ’tóre uczynię problem b l i ż s z y m rozwiązania.
Sposoby zwiększenia t _2I
- Zmniejszenie pojemności pamięci obrazu
Zmniejszenie pamięci do 256 x 256 x 1 bitó w zw iększa graniczną wartość lc gran do 400
Generacje o b ra zó w dynamicznych. 23
- Zm ni ejszenie cz ęs to tl iw oś ci powielania obrazu
Zmniejszenie cz ęs to tl iw oś ci powielenia z 40 Hz do 20 Hz zwiększa dwu- krotnie tc gran (do 50 ne).
- Zmniejszenie aktywnej powierzchni ekranu
Deżeli na ekranie o powierzchni S da się przewidzieć obszar o po
wierzchni , w którym i tylko w którym odbywać się będę zm ia ny d y n a miczne obrazu, to graniczna wartość tc gran zwię ks zy S / S 1 razy.
- Ro zw arstwienie pamięci obrazu
Pamięć obrazu o pojemności Nj * Nj x G d z i e l i m y na dwie warstwy. Pier
wsza wa rstwa o pojemności Nj x x G g służy do pamiętania obrazu sta
tycznego. Druga wa rstwa o pojemności N x x Ng x (G-Gg) służy do pa m i ę tania obrazu dynamicznego. Obraz na ek ranie Jest w y n i ki em vi de o- mi es za - nia zawart oś ci obu warstw. Graniczna wa rt oś ć t ran ulega zw ię kszeniu G/ G- Gs razy.
Skrócenie tj, t2 i tg
Poz8 dość ogólnymi i oczywistymi wskazówkami, trudno podać bliższe z a lecenia prowadzęce do skrócenia czasu ob liczeń programem u ż y t k o w y m t . . Dy
skusja taka Jest możliwa do pi er o nad konkretnym programem. Nawet jednak przy idealnych rozwięzanisch pr og ra mo wy ch problem będzie istniał w d a l szym clęgu. Wy nika to z ograniczonej szybkości działania me sz yn c y f r o wych, która (przykładowo) w m.c^ ODRA 1305 wynosi:
- dodawanie etałop rz ec in ko we 2.1 j s s, - mnożenie stał op rz ec in ko we 10.0 ^us, - dodawanie zmie nn op rz ec in ko we 18.0 ^is, - mnożenie zmie nn op rz ec in ko we 29.0 yjs.
Skrócenie procesu konwersji tg jest n a jt ru dn ie js zy m i na jw aż ni ej sz ym zagadnieniem. Prace nad szybkimi, pr ac uj ęc ym i w czasie rzeczywistym, a l gorytmami konwersji prowadzone sę od dawna. Gest to zaga dn ie ni e ważne tak
że dla ob ra zó w statycznych. Chodzi o to, by ograniczyć pojemność pamięci obrazu do dwóc h linii (dwóch rastrów).
Obraz pozostałby zapi sa ny w postaci naturalnej (a więc bardzo zwartej), a przed Jego pr ze słaniem do grafoskopu następ ow ał ab y konwersja opisu li
nia po linii. W czasie kreślenia na ekranie jednej linii przygotowywana byłaby pamięć dla następnej. I tak na przemian. Dek dotychczas nie uzys
kano za do wa la ję cy ch wy ni kó w w tym względzie.
Dla zo br azowania skali trudności p r ze ds ta wi my za [2] na st ęp uj ęc y pr zy
kład. Konwersja obrazu prze ds ta wi on eg o w sposób natu ra ln y na ekranie g r a foskopu GLO o 1382 x 1056 punktach adresowych z 4 poziomami szarości (2 bity) na opis rastrowy trwa w mi kroprocesorze Tl 9900 28.05 sek.
Czas zapisu tg je dn eg o bitu pamięci obrazu stanowi znikomy ułamek o- póżnień tj i tg i nie ma de cy du j ą c e g o wp ływu na w i e l ko ść tc# Znane sę pamięci pó łp rz ew od ni ko we o czasie za pi su 45 ns.
24 A. Kwiecień, K. Tannenberg
Równoległe (równoczesne) prowadzenie ob li cz eń programem u ż y t k o w y , konwer
sji 1 z»pl»u
Należy przedyskutować, czy proces przeds ta wi on y na rys. 2 musi pr ze
biegać sekwencyjnie.
Wydaje się, że procesy k o nw er
sji i zapisu mogę przebiegeć w d u żym stopniu równolegle. Zapis pa
mięci obrazu może rozpoczęć się już po w y p r ac ow an iu pierwszych bi
tów w procesie konwersji.
W świetle poprzednich uwag (o _t małym wp ły wi e czasu tj na czas
tc ) nie pr owadzi to do z a u w a ż a l n e go skrócenia czasu tc>
Rys. 3. Równoległe prowadzenie obli- inaczej przedstawia się problem CZ * ń równoległości procesu ob liczeń u- żytkowych i procesu konwersji opisu naturalnego na opis rastrowy. Pr zyję
cie założenia, że po określeniu każdego elementu obrazu (np. każdego w e k tora) następuje jego konwersjo, prowadzi do w i e l o k ro tn eg o wy ko ny wa ni a ta
kich samych ob liczeń i dodatkowego dużego obciężenia komputera. Nie można także w y kl uc zy ć przypadków, dla których równoległość pr oc es ów nie skróci a w y d ł u ż y czas t . Będzie to miało miejsce, gdy straty wynika ję ce z w y dłużenia t2 będę większe niż korzyści uzyskane z "zachodzenia na sie
bie" tj i t2 (rys. 3).
4.2. S y mu la cj e "off line"
Symulacja graficzna "off line" polega na w y ko na ni u ob liczeń dla całej symulacji, a następnie przesłaniu i zapisaniu całej sekwencji ruchu w pa
mięci masowej (na dysk u lub bębnie). Do piero tak p r zy go to wa ny opis jest cz yt an y i p r ze sy ła ny do grafoskopu. Rysunek 4 przedstawia schemat współ- pracy grafoskopu G L K z pamięcię masowę.
Rys. 4. Symulacja uoff line" w gr af oskopach GLK
W symulacji "off line" prowadzonej w grafoskopach G L K istnieję dwie' przeszkody:
tl
Generacja ob ra zó w dynamicznych. 25
- Bardzo dużs pojemność pamięci masowej.
Dla obrazu 512 x 512 x 4 bitów, przy cz ęs to tl iw oś ci powiel an ia 40 Hz, dla 1 min symulacji potrzeba około 300 M byte pamięci.
- Bardzo szybka transmisja danych.
Dla pa ra me tr ów grefoskopu jak poprzednio, szybkość transmisji pomiędzy pamięcię masowę a grafoskopem musi wynosić około 40 M bit/s.
Tak wi elkość pamięci. Jak i szybkość transmisji mogę ulec zmniejszeniu przez przyjęcie og ra ni cz eń wy mi en i o n y c h w punkcie 4.1.
5. Symulacja graficzna w graf os ko pa ch GLO
Podobnie jak w gr af oskopach GL K takie w graf os ko pa ch G L O znane sę sys
temy symulacji pracujęce w czasie rzeczywistym oraz pracujęce "off l i n e “ .
5.1. Symulacja w czasie rzeczywistym
Schemat przebiegu symulacji w czasie rzeczywistym w graf os ko pa ch G L O przedstawiony jest na rys. 5.
DANE
O l
PROGRAM UŻTTKOWr
OPIS MATUR Alfff
— y
PAMIĘĆ OBRAZU
POWIELAMĘ.
OBRAZU EKRAN
^GRAfOSIKOPU
Rys. 5. Symulacja w czasie rz ec zywistym w gr af os ko pa ch G L O
Ze wz ględu na sp osób otrzymywania obrazu, wy ma ga ń czasowych nie można sprowadzić do 1 bitu pamięci obrazu, lecz trzeba je zapisać następujęco:
T i + T 2 ^ Tc g r a n ' (2) g d z i e :
T^ - całkowity czas obli cz eń kolejnej fazy przez program u ż y t k o wy ,
T2 - czas zapisu całej fazy ruchu w pamięci obrazu,
Tc g ran = l/fp * 25 ms (dla cz ęs to tl iw oś ci powielania obrazu fp =40 Hz).
N i e w y s tę po wa ni e procesu konwersji oraz og ra niczenie kreślenia na ek ra
nie do aktywnych cz ęści powierzchni ekranu sprawia, że w gr af os ko pa ch G L O symulacja w czasie rzeczywistym Jest możliwa. Ak tywna część ekranu to ta część powierzchni e renu, na którę skiero wa ny Jest kolejno promień lampy w czasie jednej fazy ruchu (w gr af os ko pa ch G L K pr omień "omiata" zawsze ca
ły ekran). Wa rtość T c g ron wynoszęce kllkadziesięt milisekund wyst ar cz a do zapewnienia dynamiki prostym obrazom.
26 A. Kwiecień, K. Tannenberg
W [5] podano, i« w systemie grafic zn ym IBM 2250 można otrzymać obraz dynamiczny składający się z ki lkudziesięciu elementów.
5.2, Symulacja “off line"
W spółpraca graf os ko pó w G L O z pamięcię masową Dokazana jest na rys. 6.
Podstawowa przewaga tego typu gr af o s k o p ó w polege na około 500-krotnym
zmniejszeniu pojemności pamięci. Trzeba Jednak zaznaczyć, że grafoskopy GLO nie maję nieograniczonej "pojemności" ekranu, tzn. istnieje pewna gór
ne graniczna liczba e l em en tó w obrazu, którą grefoskop G L O zdąży w y ś w i e tlić bez migotania. W graf os ko pe ch G L O bardzo dobrej klasy osiągana Jest możliwość w y k r eś le ni a 8000 w e k t or ów lub 15000 we kt or ów krótkich, lub 4 km całkowitej dł ugości linii.
Wy daje się, że symulacjB "off lina" w grafoskopach G L O Jest na jbar
dziej przystępną metodą symulacji graficznej.
6. Podsumowanie
Problemy o t r z ym yw an ia o b ra zó w dy na mi c z n y c h w graf os ko pa ch nie są w pełni rozwiązane. Nie istnieją, Jak dotychczas, wy st a r c z a j ą c o szybkie al
go rytmy obliczania kolejnych faz ruchu (np. usuwania ni ewidocznych płas z
czyzn i krawędzi przy obrotach b r y ł ) , które u m oż li wi ły by ich obliczenie w czasie rzeczywistym. Takżs znane d o ty ch cz as algorytmy konwersji opisu na
turalnego na opis ra strowy są s t os un ko wo wo ln e i generalnie nie u m oż li
wiają konwersji w czasie rzeczywistym. Znane p r zy kł ad y sy stemów gr af ic z
nych w graf os ko pa ch GLK pr ac ujących w czasie rzeczywisty^ są bardzo nie
liczne i trudne do rozpowszechnienia. Sy mu la cj a lądowania samolotu i sy
mulacja sterowania st atkiem w porcie [3], zrea li zo wa ne na grafoskopach GLK były możliwe dzięki zb ud ow an iu s p e c j a l i s t y c z n e g o , dużego komputera (wy
łącznie do tych celów) przyjęcie up ro sz cz on eg o obrazu i zm ni ej sz en ia czę
stotliwości powielenia do 20 Hz.
Przy stosowaniu g r a f os ko pó w G L O można w czasie rzec zy wi st ym otrzymać ob ra zy dy na mi cz ne o og ra ni cz on ym stopniu skomplikowania (złożoności) obra
zu.
Rys. 6. Symu la cj a "off l i n e “ w gr af os ko pa ch GLO
Generacje ob razów dynamicznych. 27
Gromadzenie op is ów kolejnych faz ruchu w pamięci masowej w y ma ga w n i e
których pr zy pa dk ac h bardzo dużej p o je mn oś ci pamięci (kilkaset M byte na 1 min symulacji). W y m a ga na wiel ko ść pamięci masowej Jest w gr af oskopach GLO o 2-3 rzędy mn iejsza niż w g r af os ko pa ch GLK.
LITERATURA
1 Gray R.O. : Bit map a r c h it ec tu re realizes raster d i s p l a y potential.
Co mputer Design, July 1980.
2 Me ll o D.A. , G r ea ve s 1 . 0 . s Mu lt ip ro ce ss in g improves throughput and re
sponse in a ve ct or to raster converter. Computer Design, march 1980.
3 Myers W . : Interactive Computer Graphics: Poised for Takeoff? Computer, vol. 11, Nr 1, Jannuary 1978.
4 Newman W . M . , Sp roull R . F . : Principles of interactive comp ut er gra
phics. Me G r e w Hill, New York 1979, second edition.
5 Praca zbiorowa; G r a f o s k o p y w systemach komputerowych. WNT, Wa rszawa 1980.
6 Sherr S . : Fu nd am en ta ls of D i sp la y System, Design. W i l e y - I n t e r . , New York 1970.
Recenzent: Prof. dr inż. Oan Stasierski
Wpłynęło do Re dakcji 20.10. 19 82 r.
IIOKOHEHHH JP1HAMHHECKHX KA.PTKH B BHHHCJIHTEJUiHiiX CMCTEMAX
P e
3
» x eB
c ia t t e npejtcTaBjieHo
b o s m o x h o c t hnoJty'ieHHH AHuauircecKHx jcapiHH a paajra-
i h h x
rpa4>ocKonax, npeAOTaaaeHO pemeiuse peajH30BaHHoe
baeftcTBaxejibBOM Bpe-
mshb k pemeHHe nojy<ienKoe
baBiououBou pexutte c ucno4b30BauHeu uaccoBoi: na- Pa 3 ofipaao
a o c h xnop He penoHHHe (yAOBJieiBopHTeAbHioi cnocodox ) npo-
6 x e w u
BpexeHHUx orpaHHHOHH#
c k o p o c t hnepefla'tH h
s m k o c x hnaMam.
GRAPHICAL S I MU LA TI ON ON COMPUTERS
S u m m a r y
The po ss ib il it y of d i sp la yi ng d y n a mi ca ll y moving pi ctures on different types of grap hi ca l di splays is discussed. The advant ag es and d i s a d v a n t a ges of reel time simula ti on and off line simulation are presented. There is also indicated how to bypass partly the two mein drawbacks: too slow speed of computation (including scan conversion) and very large capacity of mass storage.