Procesory sygnałowe w cyfrowych aparatach fotograficznych

Post on 11-Jan-2017

224 views 5 download

Transcript of Procesory sygnałowe w cyfrowych aparatach fotograficznych

mgr inż. Adam Korzeniewski adamkorz@sound.eti.pg.gda.pl p. 732 - Katedra Systemów Multimedialnych

Rynek procesorów sygnałowych

Zestawy ewaluacyjne

Miary wydajności DSP

Współczesne rozwiązania

Próbkowanie sygnałów i filtry

DSP w fotografii cyfrowej

C5000 - 16 bitowe, stałoprzecinkowe

C55xx, C54xx (Ultra Low Power DSP)

C6000 - 32 bitowe, zmiennoprzecinkowe

C64xx, C67xx (Power Optimized DSP)

OMAPxxxx (DSP + ARM9/CortexA8)

KeyStone - 32 bitowe, zmiennoprzecinkowe

C66xx, (Multicore DSP 1-8 rdzeni)

C66AK2xx, (Multicore DSP + ARM CortexA15)

ADSP-21xx - 16 bitowe, zmiennoprzecinkowe SHARC - 32 bitowe, zmiennoprzecinkowe TigerSHARC - 32 bitowe,

zmiennoprzecinkowe

Zrównoleglenie na poziomie instrukcji

BLACKFIN - 16/32 bitowe , zmiennoprzecinkowe

Mieszany zestaw instrukcji 16/32

DSP56K – 24 bitowe stałoprzecinkowe

DSP563xx

DSP567xx (Dual-Core Symphony)

MSC7xxx - 16 bitowe – zmiennoprzecinkowe

StarCore Cost-Effective

MSC8xxx - 32 bitowe – zmiennoprzecinkowe

StarCore High-Performance Single-Core

StarCore High-Performance Multicore

Kompaktowe moduły zawierające DSP

Szeroka gama wyjść/wejść i interfejsów

Wbudowane peryferia (OLED, LCD, CODEC …)

Wbudowany debuger/emulator Programowanie i offload kodu przez USB

Możliwość szybkiego prototypowania

Stosunkowa wysoka cena

49$

The TMDX5505eZdsp is a small form factor, very low cost USB-powered DSP development tool which includes all the hardware and software needed to evaluate the industry's lowest power 16-bit DSPs, the TMS320VC5504 and TMS320VC5505.

49$

99$

Składające się na ten zestaw płytka i oprogramowanie stanowią kompletną platformę rozwojową dla aplikacji DSP (Digital Signal Processing) z dziedziny biometrii. Inne zastosowania zestawu obejmują projektowanie rozwiązań audio i komunikacyjnych.

195$

Sercem płytki jest procesor aplikacyjny TMS320C6748. W układzie tym zintegrowano trzy CPU (jeden rdzeń DSP C674x o częstotliwości pracy do 450 MHz oraz dodatkowe dwa rdzenie pracujące z częstotliwością do 150 MHz), interfejs 10/100 Etherent, kontroler pamięci (SDRAM/NAND Flash, DDR, SD/MMC), kontroler LCD, interfejs video, moduł uPP, pamięć RAM, moduł DMA, timery, zegar RTC i interfejsy komunikacyjne (w tym SPI, UART, I2C, USB). Wyprowadzenia peryferiów wewnętrznych procesora połączone zostały na płytce z dwoma gniazdami USB (host i OTG), portem SATA, gniazdem VGA, portem LCD, obwodami audio (mikrofon, złącza in i out), złączem ZIP na kamerę, czujnikiem rozpoznawania odcisku palca i innymi komponentami, które razem czynią płytkę niezwykle funkcjonalną.

195$

299$

The Analog Devices Blackfin BF609 Embedded Vision Starter Kit includes a single board featuring all the blocks necessary to prototype an embedded vision application, including the Analog Devices BF609 dual core processor, a high-definition CMOS color sensor with replaceable lens for video input, HDMI / DVI port for output, 10/100 Ethernet and LED target illumination. The kit also includes a USB-based In-Circuit Emulator providing an easy, portable, non-intrusive, debugging solution for the Kit.

550$

1000$

495$ 750$

MIPS (Milion Instructions per Second) Liczba milionów instrukcji stałoprzecinkowych

MOPS (Milion Operations per Second)

Liczba milionów operacji

Niejednoznaczne (rzadko stosowane)

xFLOPS (Floating-Point Operations per Second)

Liczba operacji zmiennoprzecinkowych na s

x rząd wielkości M, G, T, P, E

MMACS (Milions of Multiply-Accumulates per Second)

Liczba milionów operacji C × B + A → A

Operacja wykonywana w jednym cyklu zegara

Jednoznaczna dla stało/zmiennoprzecinkowych

BDTImark2000 (Berkley Design Technology IC mark 2000)

Efektywność cenowa

(MFLOSP,MMACS,BDTImark2000 per dollar)

Efektywność przestrzenna

(MFLOSP,MMACS,BDTImark2000 per mm2)

Efektywność energetyczna

(MFLOSP,MMACS,BDTImark2000 per mW)

Wielordzeniowe procesory sygnałowe Wielordzeniowe procesory sygnałowe + ARM

TMS320C66xx

TMS320C66xx

66AK2Hxx

I²C – dwukierunkowa, szeregowa magistrala służąca do przesyłania danych w urządzeniach elektronicznych.

I²C stosuje się w przypadkach, gdy prostota i niski koszt są ważniejsze od wysokich prędkości transmisji. Znalazło ono zastosowanie m.in. w: Odczytywaniu zegarów czasu rzeczywistego (RTC) w komputerach i urządzeniach

wbudowanych Komunikacji z prostymi i wolnymi przetwornikami cyfrowo-

analogowymi i analogowo-cyfrowymi Odczycie czujników diagnostycznych w komputerze (prędkość obrotu

wentylatorów, temperatury procesora i ważniejszych układów na płycie głównej) Robotyce (czujniki przyspieszenia i odległości) Komunikacja z czujnikami i elementami wykonawczymi w małych systemach

wbudowanych Dostępie do pamięci NVRAM komputera Sterowanie diodami LED w urządzeniach przenośnych (np. komórkach) Komunikacji pomiędzy układami w telewizorach i innym sprzęcie RTV (jest to

pierwotne miejsce zastosowania magistrali I²C)

GPIO (General Purpose Input/Output) jest interfejsem służącym do komunikacji pomiędzy elementami systemu komputerowego, takimi jak mikroprocesor czy różne urządzenie peryferyjne. Wyprowadzenia takiego urządzenia (piny) mogą pełnić zarówno rolę wejść, jak i wyjść i jest to zazwyczaj właściwość konfigurowalna. Piny GPIO są często grupowane w porty.

UART (ang. Universal Asynchronous Receiver and Transmitter)

układ scalony używany do asynchronicznego przekazywania i odbierania informacji poprzez port szeregowy. Zawiera on konwerter równoległo-szeregowy (ang. parallel-to-serial) służący do konwersji danych przesyłanych z komputera i szeregowo-równoległy (ang. serial-to-parallel) do konwersji danych przychodzących do komputera poprzez port szeregowy. UART zawiera także bufor do tymczasowego gromadzenia danych w przypadku szybkiej transmisji.

SPI (ang. Serial Peripheral Interface) – szeregowy interfejs urządzeń peryferyjnych. Jeden z najczęściej używanych interfejsów komunikacyjnych pomiędzy systemami mikroprocesorowymi a układami peryferyjnymi takimi jak: przetworniki ADC/DAC, układy RTC, pamięci EEPROM, pamięci flash, karty MMC/SD/ itp.

Próbkowanie równomierne Częstotliwość Nyquista

2fm ≤ fs

EKG ?

częstotliwość próbkowania sygnału mowy ?

częstotliwość próbkowania muzyki ?

częstotliwość próbkowania obrazu ?

Filtr antyalaiasingowy przed próbkowaniem

Sygnał świergotowy (ang. Chirp) 0.5 – 22 kHz

Próbkowanie 8 kHz

Próbkowanie 16 kHz

Próbkowanie 24 kHz

Próbkowanie 48 kHz

camera obscura to pierwowzór aparatu fotograficznego

Aparaty cyfrowe to urządzenia optoelektroniczne, które służą do rejestrowania obrazów statycznych i ich magazynowania w cyfrowej pamięci

Typowe elementy aparatu cyfrowego Obiektyw – wbudowany lub wymienny Matryca światłoczuła – w większości przypadków

niewymienna Wyświetlacz LCD – nieruchomy lub ruchomy Gniazdo kart pamięci – konieczne minimum do zapisu Procesor Sygnałowy – przetwarzanie rejestrowanego obrazu

Budowa typowego aparatu kompaktowego – przykład

źró

dło

: P

C W

OR

LD

KO

MP

UT

ER

Matryce CCD (Charge Coupled Devices) – budowa

filtr kolorów – matryca filtrów kolorowych. Nad każdym pikselem znajduje się pojedynczy filtr czerwony (R) zielony (G) lub niebieski (B). Informacje z pikseli są przetwarzane do złożenia ostatecznych barw.

Najpopularniejszy układ filtrów nosi nazwę filtru Bayera

Matryce CCD – cechy układy ze sprzężeniem ładunkowym wysokie koszty produkcji w stosunku do CMOS układy wzmacniające i konwertery są poza powierzchnią piksela współczynniki wypełnienia bliskie 100% (powierzchnia piksela rejestrująca światło

do całkowitej powierzchni piksela) odczyt danych następuje rzędami (rejestr wyjściowy) obliczenie koloru wynikowego piksela odbywa się przy wykorzystaniu wartości

jasności pikseli sąsiadujących firma DALSA wyprodukowała matrycę o rozmiarze 100 x 100 mm liczącą ponad

111Mpix – tak duży fizyczny rozmiar umożliwia wykonywanie zdjęć w bardzo słabych warunkach oświetleniowych (zdjęcia kosmiczne)

Matryce CMOS (Complementary Metal-Oxide Semiconductors) – budowa

Matryce CMOS – cechy niższe koszty produkcji w stosunku do CCD każdy piksel posiada własny kwantyzator, wzmacniacz i konwerter współczynnik wypełnienia piksela mniejszy niż w CCD każdy piksel jest odczytywany indywidualnie (rejestr pionowy i poziomy) możliwość odczytu wybranej partii obrazu z matrycy skuteczność w ogólności gorsza niż w CCD Canon wytworzył matrycę o wymiarach 28,7 x 19 mm licząca 120 Mpix Canon wytworzył największą na świecie matrycę o wymiarach 205 x 205 mm

Fotodiody obecne na matrycach światłoczułych nie rozróżniają kolorów, rejestrują natężenie światła, zatem jedynie odcienie szarości. Każda fotodioda znajduje się pod filtrem o konkretnym kolorze, dlatego wynikowy obraz powstaje jako matematyczne wyliczenie wartości sąsiadujących ze sobą pikseli o różnych kolorach, przy użyciu interpolacji. Procesor sygnałowy przelicza zatem dane wejściowe by uzyskać plik graficzny.

Procesor sygnałowy oblicza kolor i jasność każdego z pikseli. Dane wyjściowe porównywane są z wartościami pikseli sąsiadujących i wykorzystując algorytm demozaikowania ostateczna wartość jasności i koloru jest obliczana. Procesor sygnałowy oblicza także dystrybucję wartości kontrastu dla całego obrazu, wykorzystując korekcję gamma (zwiększenie bądź zmniejszenie jasności średnich tonów w obrazie), tak by uzyskać naturalne kolory skóry, nieba i innych części obrazu.

Szum to zjawisko występujące w każdym obwodzie elektronicznym. W przypadku fotografii cyfrowej objawia się jako plamy pikseli na obrazie o kolorze odbiegającym od jednorodnego otoczenia. Szum wzrasta ze wzrostem temperatury, wydłużaniem czasu ekspozycji oraz wzrostem wzmocnienia matrycy (wzrost wartości ISO). Procesor sygnałowy stara się odróżnić szum od informacji użytecznej, co bywa szczególnie trudne gdy obraz jest szczegółowy o dużej dynamice.

Ponieważ wartość koloru i jasności każdego piksela jest wyliczana w oparciu o sąsiadujące wartości i nie ma tu zależności 1 do 1 (interpolacja), wówczas pojawią się pewne zmiękczenie obrazu. Aby obraz był bogaty w szczegóły procesor sygnałowy wykonuje operację wyostrzania krawędzi kontrastów, konturów. By efekt był jak najlepszy algorytm wykrywania krawędzi musi działać prawidłowo, nie można również „przeostrzyć” obrazu wynikowego.

Ustawianie ostrości – detekcja kontrastu Automatyczny dobór parametrów ekspozycji Automatyczny dobór punktu bieli Cyfrowy zoom Podgląd obrazów na wyświetlaczu LCD Zapis obrazów na kartę pamięci Stosowanie efektów specjalnych „na żywo” i w trybie podglądu Przetwarzanie obrazu podczas rejestracji wideo wiele innych…

Canon – DIGIC (bazujący na Texas Instruments OMAP) Casio – EXILIM Epson – EDiART Fujifilm – Real Photo Engine Leica – MAESTRO (bazujący na Fujitsu Milbeaut) Nikon – EXPEED (bazujący na Fujitsu Milbeaut) Olympus – TruePic (bazujący na Panasonic MN103/MN103S) Panasonic – Venus engine (bazujący na Panasonic MN103/MN103S) Pentax – PRIME (bazujący na Fujitsu Milbeaut) Samsung – DRIMe (bazujący na Samsung Exynos) Sigma – True (bazujący na Fujitsu Milbeaut) Sony – BIONZ

Rodzina procesorów sygnałowych rozwijana przez firmę Canon DIGIC: W aparacie PowerShot G3, pierwszy procesor w roku 2002 DIGIC II: procesor w postaci pojedynczego układu, wzrost prędkości, pamięć DDR-SDRAM DIGIC III: szybszy, poprawiona jakość obrazu, wsparcie większych rozdzielczości LCD,

wsparcie kart typu SD, zastosowanie konwertera A/D 14 bitowego, wbudowana detekcja twarzy z ustawianiem AF, rozpoznawanie sceny (iSAPS), zastosowanie 2 procesorów w wiodącym aparacie pozwoliło uzyskać zapis 10 kl/s o rozdzielczości 10MP każda w serii 110 zdjęć JPEG.

DIGIC 4: zaprezentowany w 2008 roku, m.in. 5D MkII, szybsze przetwarzanie obrazu, lepsza redukcja szumów na wysokich ISO, szybsze przetwarzanie 14 bitowych plików RAW, AF oparty o detekcję twarzy w LV, H.264 w 1080p.

DIGIC 5: 6x szybszy od DIGIC 4, zmniejszenie szumu o 75%, analizuje 4x więcej informacji o obrazie, współtworzony przez Texas Instruments

DIGIC 5+: 17x szybszy od D4, zapis obrazów z większym kl/s DIGIC 6: PowerShot G16, lepsze ISO 6400, szybszy AF, mniejsze

opóźnienia, szybkość zdjęć 14 kl/s, 60 kl/s w 1080p… Dual DIGIC 6+: 1D X Mark II, 170 RAW w serii przy 14 kl/s, wideo 4K przy 60 kl/s DIGIC 7 w roku 2016, Powershot G7 X Mark II, EOS M5

KONIEC