DİJİTAL GÖRÜNTÜ ve SES SIKIŞTIRMA YÖNTEMLERİ

DİJİTAL GÖRÜNTÜ ve SES SIKIŞTIRMA YÖNTEMLERİ

Analog bir sinyal,frekansı ve genliği söylenerek tanımlanır. 8 khz’lik bir ses minimum genlik ile maksimum genlik değerleri arasında pek çok farklı değer alabilir. Bu nedenle frekansı aynı olan pek çok ses, birbirinden farklı olup, rahatça ayırt edilebilir. Aynı tanımlama,analog görüntü bilgisi içinde geçerlidir. Analog görüntüde, eşit uzunlukta fakat, farklı parlaklık şiddetlerinde pek çok tarama noktası oluşabilir.

Analog bir sinyal,(ses,görüntü ya da kontrol sinyali) dijitale çevrilirken iki kıstas belirlenir,birincisi analog sinyalin frekansına bağlı olarak,belirli bir süre içinde, kaç örnekleme alınacağı ve ikincisi,analog sinyalin genliğine bağlı olarak, örneklerin minimum ile maksimum arasında hangi değerlerde tanımlanacağıdır. Birincisi örnekleme hızı,ikincisi Bit derinliği adı verilir( Bit Depth).

Dijitale çevrilmek istenen analog sinyalin,frekansından en az 4 kat frekanslı bir örnekleme hızı alınmalıdır. Analog sinyalin genlik değişiminin en küçük değeri, tüm değişim alanına bölünerek, minimum-maksimum değerler arası kademeler tespit edilmelidir.

HAREKETLİ GÖRÜNTÜ SIKIŞTIRMA TEKNİKLERİ

Dijital dünyada text,program,görüntü,ses ve diğer verilerin,daha az yer kaplaması ve daha çabuk iletilmesi için iki genel sıkıştırma mantığı vardır. Bunlar;

Kayıpsız Sıkıştırmalar: Sıkıştırma yapılıp açıldıktan sonra orijinal veriler aynen elde edilir.
Kayıplı Sıkıştırmalar: Sıkıştırma anında veya açma anında orijinal verilerin tümü elde edilemez.

Dijital teknolojinin ilk yıllarından bugüne,onlarca kayıplı ve kayıpsız veri sıkıştırma teknikleri geliştirilmiş olmasına karşın,görüntü ve ses için uyumlu olanları ancak birkaç tanedir. Bunlardan en önemlileri olan iki tanesini kısaca izah edelim.

Kuantalama Kodlama(Quantizing Coding)

Kuantalama kodlamada, resmi oluşturan noktacıkların değerlerini, karşılaştırarak, ardışık gelenlerin birbirleri arasındaki fark düşük ise, sıkıştırma oranına bağlı olarak bu farkı yokmuş gibi görme işlemidir. Kısaca ; ardışık noktaların değerlerini,14.18.21.22.20.22.15. olarak varsayarak, kuantalama tekniğindeki kodlamadan sonra, sıkıştırma değerini+2,-2 tutarsak, yani noktaların değerleri arasındaki fark +2,-2 arasında ise tek değerde(bir önceki noktanın değerinde) tutulur.

Yukarıdaki sıralamaya bu kodlamayı uygulayarak,14.18.21.21.21.21.15. olur ve bu bilgileri,RLE kodlamaya tabii tutarak,bilgiler sıkıştırılmış olur.

Kuantalama teknikli kodlama,JPEG,MPEG sıkıştırmada kullanılır ve sıkıştırma aranı arttırılırsa,noktacıkların birbirinden olan fark toleransı arttırılır.( Nokta değerleri arasındaki fark toleransı+1,-1 iken +5,-5 ya da +10,-10 gibi arttırılır. Böylece aralarında ton farkı, fazla olan noktacıklar bile ,tek bir ton değeri alır.) JPEG kodlamada sıkıştırma oranı 20’nin üzerinde seçilirse 8×8 noktacık bloklar,sadece tek bir renk olarak gözükür.

Normal verileri kuantalama kodlamasında,8 yada 10 bitlik dizinin en düşük bitleri,LSB yok sayılarak, kodlama yapılır. Bu yok sayılan bitler, kod çözücüde,tekrardan rasgele atanan bitler ile tamamlanır.

Diğer sıkıştırma amaçlı kodlamalar, daha az kayıp ve daha yüksek sıkıştırmayı, hedeflemektedirler. Fractal sıkıştırma, çok daha uzun işlemler gerektirmekte,pahalıya çıkmaktadır. TV sistemlerinde kullanımı,daha birkaç yıl gecikecektir.

DCT(Discrete Cosine Transform) Ayrık Kosinüs Dönüşümü

Elektronik görüntüde,ardışık karelerin olması nedeniyle,en yaygın sıkıştırma olarak DCT kullanılır. DCT sıkıştırma tekniği,ardışık karelerin sıkıştırılması olan,MPEG-1,MPEG-2 formatlarında, tek kare yada fotoğraf görüntülerinin sıkıştırılması olan,JPEG formatında ve video konferans için kullanılan görüntü sıkıştırması,H-320 formatında hep DCT sıkıştırması kullanılmaktadır.

DCT kodlaması, ayrıca JPEG sıkıştırmada da anlatılacaktır. DCT kodlamayı kısaca özetlemek gerekirse, dijital görüntüyü oluşturan noktacıklar pixel, (720 yatay 567 dikey noktacık) her kare görüntü için, 8 yatay 8 dikey noktacıktan oluşturulan bloklara ayrılır. Her blokta 64 noktacık(pixel) bulunur. Ardışık gelen, iki yatay iki dikey blok bir arada makro bloğu oluştururlar.(Renk bilgileri ile birlikte makro blok 4:2:2 sisteminde,8 adet bloktan oluşur.) her blok içindeki 64 pixel,DCT kodlamaya tutarak,noktacıkların renk ton değerlerinin farkları ve değerler mümkün olduğu kadar “0” değerine çekilir.

Blok içindeki nokta değerlerinin “0”a yaklaştırılması,oldukça karmaşık işlemlerden geçirilmesiyle sağlanır. 8×8 noktacık bloğunun,sol üst baştaki takip eden noktaları,ortalama DC değeri olarak atanır ve takip eden noktaların, bu değere ( ortalama DC değerine) göre, farkları yazılır. 64 noktacık, zig zag okuma sıralaması ile seri veriler olarak dizilir, bu seri verileri RLC yada diğer adayla RLE kodlaması uygulanarak,ardışık tekrarlar yok edilir. Yetersiz olan RLE kodlaması ayrı bir donanım tablosu sayesinde sembollenerek,VLC kodlamasına tutulur ve DCT kodlama işlemi tamamlanır.

Bu kodlamada, görüntü sinyali fazla detaylı değil ise sıkıştırma oranı artabilir. Sıkıştırma oranı normalin üstünde(detaya bağlı olan normal sıkıştırma oranıdır) tutulursa, görüntüde tonlama detayları kaybolur.

DCT KODLAMANIN PRENSİBİ

Analog Sıkıştırma: Analog görüntülerin sıkıştırılması,zamanda sıkıştırma,olarak kabul edilebilir. Analog görüntü sıkıştırmada, görüntü sinyalinin frekansı da aynı sıkıştırma oranı kadar arttığından,işlenmesi zor olmaktadır(2 kat analog sıkıştırma uygulanan bir TV sinyalinin frekansı 5.5 mhz’den 11 mhz’e çıkmaktadır.)

Dijital Sıkıştırma: TV sinyalleri dijital sıkıştırmasının temelinde, üç ana esas bulunmaktadır.

1-TV sinyalinde kullanılmayan satırların ve satırlarda kullanılmayan(resim olmayan) bölümlerin atılması,diğer bir deyişle 625 satırın kullanılmayan 49 satırı ile her satırda yatay senkron için ayrılan ve satır başlangıcından önceki,12 mikro saniyelik kısmın (H blanking),çok daha kısaltılması işlemi ile sıkıştırma yapılır.

2-TV görüntüsündeki her karede,satırlar boyunca aynı renk ve tonda,pek çok bölge bulunur. Bir TV karesi içindeki, benzer,aynı değerdeki noktaların tekrarlanmasını yok ederek,yapılan sıkıştırmaya, Kare içi Sıkıştırma(INTRA FRAME) adı verilir.

3- Diğer bir sıkıştırma ise TV görüntüsünde,saniyede 25 kare geçmesine dayanır. Görüntüde,kamera, obje oyuncu hareketi yok ise kareler arası değişiklik ya yoktur yada çok az olur. Hele sabit kamera ile yapılmış çekimlerde,1,2 saniyelik görüntülerde,25-50 kare boyunca, hep aynı kare ekrandadır. O zaman “tümüyle aynı olan bu kareler neden gönderilsin?” sorusuyla, dijital sıkıştırmada en başarılı teknikler,MĞEG serisi üretilmiştir. Bu sistemde 1. görüntü karesi,kendi içinde sıkıştırılarak gönderilmekte ve takip eden kareler için sadece birinci kareye göre farklılıkları gönderilmektedir. Resim kalitesinde kayıp olmadan, çok yüksek oranda sıkıştırma yapabilen bu sisteme, Kareler Arası Sıkıştırma(Interframe compression) adı verilir.

Yukarıda sıraladığımız, üç temel sıkıştırma esasına dayanarak geliştirilen, sıkıştırmaların temelinde, DCT kodlaması yatar.

JPEG GÖRÜNTÜ SIKIŞTIRMA FORMATI

Sabit tek kare görüntülerin,baskı,elektronik yayın,kayıt amaçlı sıkıştırılma standardıdır. JPEG “Joint Photographic Experts Group” grubunun çalışmaları sonucu elde edilen formatta, sıkıştırma oranına göre, görüntüde oluşan kayıplar artmaktadır. JPEG sıkıştırılacak görüntü için kullanıcı, “kalite-kapasite” oranlamasını seçmek yada atamak zorundadır. Yüksek kaliteli resim, büyük veri kapasitesi isteyecektir, bu da sıkıştırmanın düşük oranda tutulması anlamına gelir. Eğer düşük veri kapasitesi isteniyorsa, görüntü kalitesi düşecek,sıkıştırma oranı artacak demektir. Bu oranlamaya bağlı olarak, JPEG sıkıştırmanın parametreleri, otomatik olarak değiştirilir.

JPEG sıkıştırmada, kayıpsız sıkıştırma oranı 2’ye 1’dir. Fakat görüntü detayına bağlı olarak, sıkıştırma 10 yada20 kez yapılsa da, görüntüde kolayca izlenecek bir kayıp olmamaktadır. Gerçekte, görüntüyü oluşturan bilgi- veri kapasitesi 1 milyon bitten, 10 kez sıkıştırılarak 100 bin bite düşürülse de görüntüde pek büyük fark olmadığı yada kolayca fark edilebilir bir bozulma olmadığı görülecektir. JPEG, 100’e 1 sıkıştırma oranına kadar çıkabilir. Bu oranda üretilecek görüntüler,arşivlemede kullanılacak, görsel tarama amaçlı kayıt edilebilir veya internetten çok hızlı gönderilebilir.

JPEG tabanlı olarak geliştirilen M-JPEG’te(Motion JPEG) ardışık görüntü kareleri, kesintisiz olarak, devamlı seri data formuna sokulur. MPEG türü sıkıştırmada,JPEG tabanlı olup,sadece ardışık gelen karelerin birbirinden olan farklarını göndererek, çok daha yüksek oranda sıkıştırma yapılması sağlanır.

Aşağıda JPEG sıkıştırma tekniğine ait bazı alt kolları bulunmaktadır.
• Progressive JPEG
• Hierarchical JPEG
• Sequential Lossless JPEG
• Standart DCT tabanlı JPEG

JPEG formatında şu belirgin özellikler bulunur:

-DCT kodlama, 8 ile 12 bit arasında(DC katsayı için ) değişebilir.
-Lineer olarak,DPCM(Differential PULSE Code Modulation),farksal darbe kod modülasyonu, kodlaması kullanılır.
-Y için ayrı, U,V için ayrı kuantalama tablosu kullanılır.
-Kuantalama anında, kullanılan tablolama değerleri, sıkıştırma oranına bağlı olarak,her makro blokta,ayrı değerlerde uygulanabilir, böylece sıkıştırma oranı, makro bloktan, makro bloğa göre değişir.
-DCT kodlamada 8×8’lik bloğun DC katsayısı,12 bit ile tanımlanırken en yüksek frekanslı noktacık bölümleri, 4 bit ile tanımlanır.

MPEG GÖRÜNTÜ SIKIŞTIRMA FORMATLARI

JPEG formatının başarısını,1993 yılında, ardışık görüntülerin daha farklı tekniklerle ve yüksek oranda sıkıştırmasını sağlayan,MPEG serisi izlemiştir. MPEG(Motion Picture Experts Group), görüntü,ses ve kontrol verilerini sıkıştırarak,tek bir veri grubu-paketi içinde,senkronlu biçimde göndermektedir. Çoklu ortam,video konferans ve amatör,yarı profesyonel görüntü kullanımına yönelik geliştirilen format,MPEG-1 adını almış ve hemen ardından, daha yüksek detaylı görüntüler için MPEG-2 ve 3 geliştirilmiştir. MPEG-3, MPEG-2 ile birleştirilmiş ve MPEG-4 ise dorudan video konferans ve video telefonda kullanım amaçlı, geliştirilmeye başlanmıştır.

MPEG-1 ve 2 arasında,genel sistem tekniği açısından fark olmayıp,sadece görüntü kalitesi,çözümlemesi ve hareket takibi tekniklerdeki farklar,MPEG-2 lehine bulunmaktadır.

MPEG formatında sıkıştırma şu üç genel yöntemi içerir;
1- Bir karenin kendi içinde yapılan,standart sıkıştırma,
2- Ardışık karelerin tümüyle değil,sadece referans karelere göre olan farkların gönderilmesi,
3- Kareler içinde hareket eden objelerin,parçaların,hareket yönü tespit edilerek,alıcı kısımda bu objeler hareket yönlerine göre,yeni pozisyonlarında tekrar oluşturma kısaca “kısaca hareket tahmini” yöntemi ile yapılan sıkıştırma.

MPEG formatında görüntü sıkıştırması,önce kare içi olarak yapılır. Bu DCT kodlama ile sağlanır. Standart DCT kodlama,kuantalama,RLC ve VLC kodlamaları kullanılarak,MPEG görüntülerini oluşturan her kare, bağımsız kare içi sıkıştırma ile “intra frame” sıkıştırılarak MPEG formatı oluşturulabilir. Fakat M-JPEG gibi,daha az sıkıştırma oranı nedeniyle yüksek veri hızı elde edildiğinden,yayın amaçlı kabul görmez.

İkinci teknik ise ardışık kareler arası,farkların gönderilmesidir. Saniyede 25 kare görüntü geçen PAL sisteminde, aynı film karelerindeki gibi, ardışık gelen görüntülerde,değişim çok azdır. Kareler arası yoğun değişim,sadece kameranın hareketlerinde ve kurguda,farklı sahnelerin eklenmesi ile görülür.

Bu temele dayanarak,MPEG formatı tasarlayıcıları, belirli kareleri referans kare olarak alıp,referans kareyi kendi içinde sıkıştırarak( genelde DCT yada DPCM tekniği ile), hedefe gönderip,takip eden belirli sayıdaki karenin ise sadece referans kareden olan farklarını, sıra ile hedefe göndererek, hedefte bu karelerin tekrar,referans kare bilgileri yardımıyla, oluşmasını geliştirmişlerdir. Bu teknikte,referans kareyi takip eden, diğer karelere ait gönderilecek bilgi,çok az olmaktadır. Kareler arası farklılığın tespiti, makro bloklar düzeyinde yapılmaktadır. MPEG kodlamada,referans kareye I(intra frame) karesi adı verilip,bu karede kare içi sıkıştırma yapılmaktadır. I kareyi oluşturan, makro blok sayısı(4:2:2 örneklemede 720×576 noktacıkta), 1620 olup,her bir makro bloktaki noktacık değerleri,takip eden karenin,aynı bölgesindeki makro blok değerler ile karşılaştırılarak,aralarındaki benzerliğe bakılması işlemi,her karenin kendi süresi içinde,(1/25 saniye içinde) yapılması gerektiğinden, çok hızlı ve güçlü mikroişlemcilere gerek vardır. İşte basit olarak anlatılan bu nedenlerle,MPEG kodlama ve kod çözme anında, her iki uçta bulunan cihazlarda,yüksek hızlı işlem yapabilen chipler ile en az 2 karelik görüntü hafızasına ihtiyaç duyulur. MPEG formatı, referans kare ile ardışık birkaç karenin, bu kareye göre olan farklarını göndererek, sıkıştırma uygulayabilir. Bu tür sıkıştırma yapılmış görüntülerin,yayında en az iki kare gecikme olmasına karşılık yayıncılıkta tercih edilir.

MPEG-1,2 KODLAYICI VE KOD ÇÖZÜCÜ

MPEG formatlarının yaygın kullanımlı olanları 1 ve 2 için kodlama ve kod çözme işlemi,teknik prensip olarak tamamen aynı olup,MPEG-2’nin ek özellikleri bulunur. MPEG kodlayıcının çalışma sistemini ve aşamaları ilgili blok şema (Şekil-23) yardımıyla görebiliriz.

Y,U,V sinyalleri,MPEG-1 için ayrı,MPEG-2 için ayrı çözümlemede, girişteki toplama katına gelir. Buradan ikiye ayrılan giriş sinyali,bir koldan hareket tahmini devresine giderken,diğer kolu normal kare içi sıkıştırmanın yapılması için DCT kodlayıcı devreye girer. Burada blok ve makro blok düzeyinde işlenen görüntü bilgileri,her bloğun kendi DC ve AC katsayıları elde edilir.

Bu blok katsayıları,MPEG için özel hazırlanmış kuantalama tablosu değerlerine bölünerek,kuantalama işlemi yapılır. Kuantalama tablosuna bağlı yapılan işlem sonucu,elde edilen veriler, yuvarlama işlemi ile sıkıştırılır. Kuantalama tablosu Y,U ve V için tektir.

Kuantalama çıkışındaki veriler, şu ana kadar,kare içi sıkıştırmanın uygulandığı (I frame) I kareye aittir. I karenin verileri, blok,blok ikinci bir sıkıştırma olan VLC(Variable Lenght Coding) kodlayıcına giderken, bir diğer çıkışı da hareket tahmini ile diğer karelerin oluşmasını sağlamak amacıyla,ters kuantalama devresine gider. I karesi birinci koldan,VLC üzerinden,sıralayıcı(multiplexer) katına giderek, burada resim grubu oluşumunu sağlayacak sıralama sonucunda,çıkış tampon hafızasına giderek ,uygun veri akış hızında kontrollü olarak çıkışa,yayına gönderilir. I karesi eğer ,P ve B kareleri ile ilintilendirilmesiyle doğrudan çıkışa gidebilir. I karesi çıkışa giderken,VLC sonrasında sıralayıcı katta, normal görüntü verilerinin üzerine hareket vektör bilgileri,sıkıştırma oranı,resim çözümlemesi, kare tipi(I,P,B gibi) tüm bilgiler, görüntü verilerinin gruplama aşamalarında,veri dizilerinin üzerine bindirilir.

I karesi çıkış tampon hafızada beklerken,kuantalama çıkışından alınan verilerin,2. kolu ters kuantalama devresinden ve DCT kod çözücüden(IDCT) geçerek,normal blok verileri halinde,hareket tahmini yapılması için kullanılan hafıza bölümüne “bir önceki kare hafızasına” kayıt edilir. Aynı kol üzerindeki (IDCT çıkışından sonraki) toplama devresine, bir sonraki karenin görüntüsü gelerek,bu verilerde aynı hattan, “bir sonraki kare hafızasına”kayıt edilir. Böylece DCT kodlamada işlenen görüntünün bir önceki ve bir sonraki kareleri,ilgili hafızada karşılaştırma, yani benzer blokların bulunarak, hareket tahmini yapılması için bekletilmektedir.
MPEG standartlı Kuantalama tablosu
Y parlaklık blokları için

8 16 19 22 26 27 29 34
16 16 22 24 27 29 34 37
19 22 26 27 29 34 34 38
22 22 26 27 29 34 37 40
22 26 27 29 32 35 40 48
26 27 29 32 35 40 48 58
26 27 29 34 38 46 56 69
27 29 35 38 46 56 69 83
DCT kodlama çıkışında elde edilen
Her bloktaki noktacık değerleri
Bu tablodaki eşleniklerine bölünerek kodlanır. Amaç mümkün olduğu kadar sıfır ve sıfıra yakın değer elde etmektir.

MPEG,DCT kodlamada Kuantalama ağırlık tabloları
Şekil-24; MPEG-2 Standartlı Kuantalama Tablosu1

Şekil-25;MPEG-2 Kodlayıcı Devresi
Girişe gelen mevcut görüntü,bir koldan DCT kodlamasına giderken,diğer koldan, bir önceki ve bir sonraki kareler ile karşılaştırılması için hareket tahmini katına girer. Bu kat, kare içindeki tüm blokları,sırasıyla bir önceki bir sonraki, karenin blokları ile(sadece parlaklık bilgilerinin , uyup uymadığını )karşılaştırarak,uyanlar var ise bunların bulunduğu koordinatları belirten,vektör değerini (motion vector), mevcut karenin ilgili bloğuna eklemektedir. Bir önceki karede,benzeri bulunan bloğun,bir sonraki karede gözükeceği pozisyonu bildiren veriler, sıralayıcı katta bulunan,bir önceki karenin, ilgili bloklarına,hareket vektör bilgileri olarak eklenir.

Hareket tahmini yapılan karenin,benzer bloğu bir önceki karede bulunduğu için bu blok DCT kodlamasından pas geçilir. Fakat aynı karenin,benzer blokları,bir önceki karede bulunmamışsa,benzeri olmayan her blok, normal DCT kodlamasından geçirilerek, kuantalamaya ve VLC kodlamasına ve oradan da çıkışa gider.

MPEG kodlayıcıda I,P ve B kareleri kullanılacak ise hareket tahmini hafızasının, bir önceki ve bir sonraki kare bölümleri,tam dolu olup,ayrıca veri çıkışı trafiğinin düzenlendiği,sıralayıcı ve tampon hafıza,2 kare kapasitede tam doludur.

MPEG-1,2 KODÇÖZÜCÜ DEVRE ÇALIŞMASI

Kod çözücülerin çalışması MPEG 1-2 için aynı tekniğe dayanır. Uydudan yada iletim hattından gelen veriler,ilk önce demux katında,görüntü,ses ve program sistem bilgileri olarak ayrılır. Ses verileri,MPEG ses kod çözücü devreye gider, burada formatına göre ses,iki yada 5+1 kanal olarak ayrılır.

Yukarıda çizilmiş blok şema MPEG kodlanmış görüntü, ses sinyallerinin kodlarını çözmede kullanılan devreleri genel blok şema şeklinde vermektedir. Görüntü kod çözücüsünde işlemlerin,ses kod çözme devresine göre daha uzun sürmesinden dolayı,ses ile görüntü bilgileri arasında,dudak senkronunu sağlayabilmek için referans saat darbeleri(90 khz) kullanılarak üretilen,senkronizasyon(time stamp) darbeleri kullanılır. Burada görüntü bilgileri referans alınarak ,ses gerektiği kadar geciktirilmektedir.

MPEG kod çözme işlemi,kodlamanın ayna görüntüsü gibi çalışan,sistemlerden oluşur. Kodlayıcıda, son kademede birleştirilen kontrol verileri,hareket vektör bilgileri ve blok katsayılarına ait veriler,her biri kendi bölümlerinde işlenmek üzere,VLC kod çözücü çıkışından ilgili bölümlere dağıtılır.

Görüntü çıkışı
MPEG kodlu MPEG-2 kodlu görüntü
TS veri girişi

referans ses-görüntü senkronlama
saat darbeleri sinyalleri
Uydu
Kablo TV
Ses çıkışları 2 ile 5
MPEG-2 ses

Program kanal servis EMM,ECC
Seçimi teletext,alt yazı kontrolü kullanıcı kontrol
bilgileri

Şekil-25; MPEG-2 Kod Çözücü Genel Blok Şeması1

Yorum yazın