Tento príspevok uvádza komplexné riešenie hardvérových a softvérových prostriedkov systému na odstránenie šumu zo statického obrazu snímaného analógovou videokamerou. Cieľom bol návrh a realizácia aplikácie, ktorá umožní odstraňovať šum z takéhoto obrazu a úprava generátora bieleho šumu s implementáciou do obrazu o ďalší vnútorný generátor, ktorý bude umožňovať zmenu rozkmitu (resp. efektívnej hodnoty) generovaného šumu. Na získanie šumom degradovaného signálu je použitý signál z videokamery, ku ktorému je aditívne alebo multiplikatívne superponovaný signál bieleho šumu.

1. Úvod

Prenos a spracovanie video signálu má v dnešnej dobe dôležité miesto. Pri týchto procesoch sa mnoho krát stane, že sa prenášaný signál znehodnotí a to najmä šumom. Takéto znehodnotenie video signálu vzniká najčastejšie v analógových systémoch na prenosovom médiu. Ak takto znehodnotený signál transformujeme pri spracovaní do digitálnej formy, napríklad pomocou framegrabberu KAPA-LAB, môžeme ho ďalej digitálne upravovať. Takéto úpravy budeme nazývať číslicové spracovanie obrazu – ČSO.

Mojim cieľom bolo navrhnúť aplikáciu v prostredí Borland C++ builder 5.0, ktorá bude eliminovať rušivé šumové komponenty v obrazovej správe. Pre získanie digitálnych dát je využitá PCI karta KAPA-LAB, ktorá umožňuje maximálne rozlíšenie 640×480 bodov pri 24-bitovej farebnej hĺbke. Ďalším cieľom bolo navrhnúť a zrealizovať generátor bieleho šumu s nastaviteľným rozkmitom výstupného šumového napätia. Podľa mojich prieskumov existuje iba niekoľko možností získania bieleho šumu, kde sa najčastejšie využíva záverne polarizovaný PN priechod.

2. Generátor bieleho šumu

Na obr.1 je znázornená bloková schéma zariadenia na generovanie bieleho šumu s implementáciou do obrazu, [1]. V tejto časti sa budem zaoberať predovšetkým blokmi, ktoré sú zvýraznené, čo predstavuje úpravu pôvodného zariadenia. Tieto bloky som pri konečnom návrhu spojil a realizoval na jednej doske plošných spojov. Generovaný šumový signál s nastaviteľným rozkmitom je privedený na vstup číslicovo riadeného analógového multiplexora.

Na jeho ďalší vstup je privedený šum z vnútorného generátora, čím som zachoval pôvodnú funkčnosť zariadenia. Ďalším vstupom môžeme do systému zaviesť šumový signál z externého zdroja šumu. Vstupy multiplexora sú aktivované dvojbitovým číslicovým signálom rovnomenného generátora ovládaného jednoduchým prepínačom.


Obr. 1. Bloková schéma zariadenia na generovanie bieleho šumu s implementáciou do obrazu

2.1 Blok vnútorného generátora bieleho šumu s nastaviteľným rozkmitom šumového napätia

Blok vnútorného generátora bieleho šumu je zostavený na obojstrannej doske plošných spojov. Pre zlepšenie vlastností celého zariadenia, som jednu stranu dosky plošných spojov použil len na vedenie zeme. Pri návrhu boli použité súčiastky od spoločnosti MAXIM/Dallas Semiconductors. Schéma zapojenia je kvôli lepšej prehľadnosti rozdelená na tri základné časti:

  1. Obvod generátora bieleho šumu s reguláciou rozkmitu výstupného šumového napätia
  2. Obvod na ovládanie vstupov multiplexora
  3. Obvod multiplexora MAX4588

2.1.1 Obvod generátora bieleho šumu s reguláciou rozkmitu výstupného šumového napätia

Schému zapojenia obvodu uvádza obr.2, [4]. Jadro obvodu, ktoré sa využíva na generovanie šumového signálu je tvorené záverne polarizovaným priechodom báza-emitor NPN tranzistora. Báza tranzistora je pripojená na zem a emitor je pripojený cez 100 kΩ rezistorový trimer PR1 na napájacie napätie +12V.


Obr.2. Zapojenie generátora bieleho šumu s reguláciou rozkmitu výstupného šumového napätia

Šumový signál je odoberaný práve z emitora tranzistora, pričom kolektor je nezapojený. Pri takomto zapojení je obvod schopný generovať širokopásmový biely šum s rozkmitom šumového napätia približne 10mVšš. Namiesto tranzistora môžeme šum odoberať aj z katódy zenerovej diódy, so záverne polarizovaným PN priechodom. Zapojenie so zenerovou diódou BZV55C7.5 SMD malo totožný výsledný rozkmit šumového napätia. Nakoniec som sa rozhodol použiť tranzistor KC639, ktorý svojimi parametrami dostačujúco vyhovuje požiadavkám.


Obr.3. Závislosť zosilnenia od prúdu ID obvodu MAX2611

Ďalej je šum cez kapacitnú väzbu privedený na vstup nízkošumového, širokopásmového zosilňovača MAX2611. Takéto zosilňovače sú použité dva zapojené v kaskáde. Každý z nich má výkonové zosilnenie približne 18dB, čo predstavuje na výstupe druhého OZ rozkmit šumového napätia pozorovaného na osciloskope približne 0.8Všš. Väzbové kapacity medzi jednotlivými stupňami boli zvolené čo najväčšie (220 μF), aby sa vo výstupnom šume prejavili aj nízkofrekvenčné zložky.

Obidva OZ majú totožné zapojenie, napájacie napätie je pripojené cez filtračnú cievku L1 (L2) 100 μH a 100 Ω trimer TR1 (TR2) na výstup operačného zosilňovača. Trimrom sa nastavuje prúd pretekajúci cez OZ a tým aj jeho zosilnenie, (obr.3). Vo výstupnom OZ je ešte zaradený 220 Ω potenciometer, ktorým môžeme regulovať výstupný rozkmit šumového napätia v rozsahu približne od 30 mVšš do 800 mVšš.

2.1.2 Schéma zapojenia obvodu pre ovládanie vstupov multiplexora

Uvedená je na obr.4. Na ovládanie adresovacích vstupov multiplexora bol zvolený obvod pozostávajúci z dvoch hradiel NAND a asynchrónneho binárneho počítadla 7493. Počítadlo je nastavené na mód 3, čo znamená, že počíta impulzy od 0 do 2 a na výstupoch Qa a Qb je ich binárna kombinácia. Činnosť obvodu riadi jednoduchý prepínač S1.


Obr.4. Ovládanie vstupov multiplexora

2.1.3 Schéma zapojenia obvodu multiplexora MAX4588

Uvedená je na obr.5. Šumový signál z generátora šumu s nastaviteľným rozkmitom šumového napätia je privedený na prvý vstup IN0 multiplexora MAX4588. Na ďalší vstup IN1 je privedený šumový signál z pôvodného generátora, a tretí vstup IN2 je pripravený pre možnosť zapojenia šumu z externého zdroja. Výstup multiplexora OUT je privedený na vstup zlučovacieho obvodu AD835. Jednotlivé vstupy multiplexora sú vyberané pomocou adresovacích vstupov ADR0 a ADR1. Napäťové úrovne pre adresovacie vstupy zodpovedajú úrovniam TTL logických obvodov.


Obr.5. Zapojenie multiplexora MAX4588

3. Filtrácia šumu aplikáciou metódy štatistického priemerovania

Princíp metódy filtrovania šumom degradovaného obrazu je založený na predpoklade, že jednotlivé vzorky šumu v obraze sú nekorelované. Keďže obrazové vzorky sú navzájom korelované (statický obraz), môžeme použiť metódu štatistického priemerovania. Táto metóda je najjednoduchšou metódou filtrovania zašumeného obrazu. Takúto metódu môžeme realizovať podľa blokovej schémy zobrazenej na obr. 6, [5]. Ak ako vstupnú informáciu máme zašumené obrazové vzorky

[ \{ pnori_{add/mlt}(w)_i \}_{w=0}^{K.L-1}]_{i=1}^M

sekvencie M – statického pôvodne nezašumeného obrazu

[ \{ pin_{ori}(w) \}_{w=0}^{K.L-1}]_{i=1}^M

, kde: pnoriadd – aditívne zašumené vzorky, pnorimlt – multiplikatívne zašumené vzorky, potom výstupnú informáciu reprezentuje obraz

\{ redpnori(w) \}_{w=0}^{K.L-1} = \{ pout_{rec}(w) \}_{w=0}^{K.L-1}

s redukovanou šumovou zložkou. Účinok potlačenia šumu je úmerný počtu M vstupných obrazov.


Obr.6. Bloková schéma algoritmu štatistického filtrovania pomocou priemerovania

Ak predpokladáme, že sa šum vo všetkých vstupných obrazoch dá kvantitatívne vyjadriť rovnakou hodnotou pomeru signál/šum pre všetky i = 1,2,…,M:

\{(S/N_o)_{dB} \}_i^{in} \cong 20 log \frac{S_{pp}}{\sqrt{\bar{n^2}}} = (S/N_o)_{dB}^{in} (1)

potom šum vo výstupnom obraze po filtrácii môžeme interpretovať hodnotou, [6]

(S/N_o)_{dB}^{out} = 20 log \frac{S_{pp}}{\sqrt{\bar {n^2}}} \cong 20 log \frac{\frac{1}{M} M S_{pp}}{\frac{1}{M} \sqrt{M \bar{n^2}}}
= (S/N_o)_{dB}^{in} +10 log M (2)

4. Realizácia aplikácie na filtráciu zašumeného statického obrazu

Aplikácia umožňuje filtráciu šumom degradovaných obrazových signálov (obrazov). Skladá sa z niekoľkých častí. Zdroj zašumeného obrazu môžeme získať dvomi spôsobmi:

  1. Ako zdroj použijeme signál z kamery, do ktorého je pomocou generátora šumu implementovaný signál bieleho šumu. Ďalej je tento signál privedený na video vstup framegrabberu KAPA-LAB, ktorý transformuje analógový signál do digitálnej formy.
  2. Ako zdroj použijeme statický obraz načítaný z pamäte, ku ktorému je digitálnou formou pridaný šum. V konečnom dôsledku nám vznikne sekvencia zašumených obrazov.

Na takto zašumený obraz je ďalej aplikovaná funkcia štatistického priemerovania, ktorá je pre obidva typy zdrojových dát identická. Aplikácia umožňuje zvoliť počet priemerovaní a z výstupného vyfiltrovaného obrazu vypočíta nasledovné štatistické funkcie, [6]:

MSE – stredná kvadratická chyba

MSE = \frac{1}{K.L} \sum_{k=0}^{K-1} \sum_{l=0}^{L-1}[pin_{ori}(k,l) - pout_{rec}(k,l)]^2 (3)

RMSE – odmocnina zo strednej kvadratickej chyby

RMSE = \sqrt {\frac{1}{K.L} \sum_{k=0}^{K-1} \sum_{l=0}^{L-1}[pin_{ori}(k,l) - pout_{rec}(k,l)]^2} (4)

\mu_{ori} – stredná hodnota originálnej obrazovej správy

\mu_{ori} = \frac{1}{K.L} \sum_{k=0}^{K-1} \sum_{l=0}^{L-1} pin_{ori}(k,l) (5)

\sigma^2 – disperzia originálnej obrazovej správy

\sigma^2 = \frac{1}{K.L} \sum_{k=0}^{K-1} \sum_{l=0}^{L-1} [pin_{ori}(k,l) - \mu_{ori}]^2 (6)

SNR – pomer signál/šum

SRN_{dB} = 10 log \frac{\sigma_{ori}^2}{MSE} (7)

PSNR – špičkový pomer signál/šum

PSRN_{dB} = 20 log \frac{255}{RMSE} (7)

Medzi ďalšie funkcie aplikácie patrí možnosť vykreslenia grafu z vypočítaných hodnôt a práca s čiernobielym obrazom (pri takejto voľbe je algoritmus 3 krát rýchlejší, keďže sa počíta len s jasovou zložkou). Projekt je realizovaný v programovacom jazyku Borland C++ 5.0 Builder.

5. Výsledky experimentov

Pokusy boli realizované nasledovným postupom: Kamera bola umiestnená tak, aby snímala statický obraz (blok textu). Signál z kamery som priviedol na vstup generátora bieleho šumu. Úroveň rozkmitu bieleho šumu som menil medzi jednotlivými pokusmi v rozsahu od 200mVef do 800mVef s krokom 200mVef. Z výstupu generátora som zašumený obrazový signál privádzal na vstup framegrabberu KAPA-LAB.

Na obr.7 máme originálny obraz bez pridaného šumu. Obr.8 predstavuje snímku ku ktorej bol aditívnym spôsobom pridaný šum s hodnotou 200 mVef. Takto zašumené snímky som následne pomocou aplikácie vyfiltroval. Na obr.9, obr.10 je zobrazený výstup z filtrácie pre 10, resp. 100 priemerovaní. Ako je vidieť už pri počte 10 priemerovaní je z obrazu takmer odstránený šum. Pri počte 100 priemerovaní sa vyfiltrovaný obraz kvalitou približoval k originálu.


Obr.7. Obraz snímaný kamerou – bez šumu


Obr.8. Obraz snímaný kamerou s pridaným aditívnym šumom 200mVef


Obr.9. Obraz po filtrácii M=10 snímok (šum = 200mVef)


Obr.10. Obraz po filtrácii M=100 snímok (šum = 200mVef)

Na obr.11 je zobrazená snímka s pridaným aditívnym šumom s hodnotou 800mVef. Ako je vidieť z obrázku, šum sa prejavuje takou mierou, že nie je možné rozpoznať pôvodný obraz. Ako je vidieť z obr.13, výstup z filtrácie s počtom 100 priemerovaní je voči originálu tmavší, čo je spôsobené veľkým rozkmitom pridaného bieleho šumu, avšak text na obrázku sa dá rozpoznať.


Obr.11. Obraz snímaný kamerou s pridaným aditívnym šumom 800 mVef


Obr.12. Obraz po filtrácii M=10 snímok (šum = 800mVef)


Obr.13. Obraz po filtrácii M=100 snímok (šum = 800mVef)

V tab.1 a tab.2 , resp. na obr.14 a obr.15 sú výsledky získané z aplikácie pre PSNR[dB], resp. SNR[dB], pre počet priemerovaní M, s pridaným aditívnym bielym šumom od 200mVef do 800mVef.

Tab.1. PSNR[dB] pre rôzne efektívne hodnoty šumu

M 200mVef 400mVef 600mVef 800mVef
1 18,53 17,97 13,19 11,37
5 24,13 23,02 16,8 14,67
10 28,51 24,42 17,67 15,35
15 30,28 25,22 17,95 15,64
20 31,42 25,5 18,13 15,77
25 32,38 25,82 18,17 15,85
50 34,11 26,05 18,38 16,02
75 34,94 26,24 18,47 16,11
100 35,67 26,29 18,5 16,11
125 36,22 26,35 18,57 16,1
150 36,58 26,33 18,62 16,12
200 37,03 26,42 18,65 16,14
250 37,36 26,5 18,67 16,14


Obr.14. Závislosť PSNR[dB] od počtu priemerovaní M

Tab.2. SNR[dB] pre rôzne efektívne hodnoty šumu

M 200mVef 400mVef 600mVef 800mVef
1 6,5 4,49 -0,29 -2,11
5 11,41 9,54 3,32 1,19
10 13,48 10,94 4,19 1,87
15 15,24 11,74 4,47 2,16
20 16,38 12,02 4,65 2,29
25 17,34 12,34 4,69 2,37
50 20,24 12,57 4,9 2,54
75 21,3 12,76 4,99 2,63
100 22,1 12,81 5,02 2,64
125 22,7 12,87 5,09 2,62
150 22,9 12,85 5,14 2,64
200 23,6 12,94 5,17 2,66
250 24,3 13,02 5,19 2,66


Obr.15. Závislosť SNR[dB] od počtu priemerovaní M

Na obr.16 je znázornené spektrum zašumeného signálu celého video kanálu merané na výstupe generátora bieleho šumu s implementáciou do obrazu. Vysoká hodnota jednosmernej úrovne je spôsobená tým, že pri meraní spektra snímala kamera čiernu plochu.


Obr.16. Spektrum bieleho šumu

6. Záver

Na záver možno konštatovať, že navrhnutý generátor bieleho šumu s nastaviteľným rozkmitom šumového napätia, sa po odladení správa stabilne. Rozkmit výstupného šumového napätia je možné regulovať v rozmedzí 30mVšš až 800 mVšš. Taktiež aplikácia na filtrovanie šumom degradovaných obrazov poskytuje požadované funkcie. Ako bolo vidieť z pokusov, pri vysokej úrovni rozkmitu bieleho šumu, sa po filtrácii obraz už značne odlišoval od originálneho obrazu snímaného kamerou. Avšak z takto vyfiltrovaného obrazu môžeme rozpoznať text, zatiaľ čo v šumom degradovanej snímke bol nerozpoznateľný.

Poďakovanie

Tento projekt bol podporený Ministerstvom školstva Slovenskej republiky v rámci grantov VEGA č. G-1/ 3107/06, č.G-1/0704/08 a projektu AV-4/0012/07.

Použitá literatúra

  1. KAJAN, R. (Kulla, P.-konzultant): Číslicové spracovanie a rekonštrukcia šumom degradovaných obrazov. Diplomový projekt, Katedra rádioelektroniky, FEI STU, December 2004
  2. Katalóg firmy GM Electronic
  3. Katalóg firmy MAXIM (MAX2611, MAX4588)
  4. Application Note 3469, Building a Low-Cost White-Noise Generator, Maxim Integrated Products, 14. March 2005
  5. KULLA, P.: Filtering of Noisy Degraded Images in real Time. In.:Proceeding of 10th International Scientific Conference “Radioelektronika 2000″, Slovak University of Technology, Bratislava, Slovak Republic, September 12.-13.,2000, pp. P-71-73
  6. KULLA, P.: Digital Image Processing. Lectures and seminaries, Study text, Dept. of Radio & Electronics, Bratislava, 1997-2004, (in slovak)

Spoluautorom článku je Doc. Ing. Peter Kulla, PhD, Katedra Rádioelektroniky, FEI STU

Napísať príspevok