TARIFNAME VIDEO NICEMLEME PARAMETRELERININ KODUNUN ÇÖZÜLMESI IÇIN YÖNTEM VE APARAT Mevcut bulus baglam tabanli uyarlanir ikili aritmetik kodlamayi kullanan Video kodlama için bir video nicemleme parametresinin kodlanmasina ait bir teknik ile ilgilidir ve örnek olarak uygun bir sekilde bir video kodlama cihazi, bir video kod çözme cihazi ve benzerine uygulanabilir olan bir Video nicemleme parametresi kodlama yöntemi, bir Video nicemleme parametresi kod çözme yöntemi, bir video nicemleme parametresi kodlayici, bir video nicemleme parametresi kod çözücü, bir video nicemleme parametresi kodlama prograini ve bir video nicemleme parametresi kod çözme programi ile ilgilidir. Patent Disi Literatür (NPLler) 1 ve 2`nin her biri baglam tabanli uyarlanir ikili aritmetik kodlamayi (CABAC) kullanan bir Video kodlama tekniginden bahsetmektedir. Sekil 15, CABAC kullanan bir Video kodlama yönteminde bir video nicemleme parametresi kodlama cihazinin bir yapisini gösteren bir blok diyagramdir. Sekil 15"te gösterilen video nicemleme parametresi kodlayici (buradan itibaren tipik Video nicemleme parametresi kodlayici olarak ifade edilecektir) bir öngörücüyü (101), bir ara bellegi (102), bir ikilik sisteme çeviriciyi (1030), bir uyarlanir ikili aritmetik kodlayiciyi (104) ve bir anahtari (SW) (1 1 1) kapsamaktadir. Öngörücüden (101) temin edilen bir öngörülen nicemleme parametresi (öngörülen QP: PQP) tipik video niceleme parametresi kodlayiciya girilen bir nicemleme parametresinden (QP) çikarilmaktadir. PQP°nin çikarildigi QP ise delta nicemleme parametresi (delta QP: DQP) olarak ifade edilmektedir. NLP l°de, PQP en son yeniden yapilandirilmis bir görüntü bloguna ait olan yeniden yapilandirilmis bir nicemleme parametresidir (son yapilandirilmis QP: SonRQP). NPL 2°de, PQP bir soldaki bitisik görüntü bloguna ait bir yeniden yapilandirilmis nicemleme parametresi (sol yeniden yapilandirilmis QP: SolRQP) veya bir son yapilandirilmis görüntü bloguna ait olan bir yeniden yapilandirilmis nicemleme parametresidir (Son RQP). PQP DQP`ye eklenmekte ve toplam daha sonraki nicemleme parametre kodlamasi için yeniden yapilandirilmis bir nicemleme parametresi (yeniden yapilandirilmis QP: RQP) olarak ara bellekte ( 102) saklanmaktadir. Ikilik sisteme çevirici (1030) bir bin string (ikilik dizisi) elde etmek için DQP"yi ikililestirmektedir. Bin stringin bir biti bir bin olarak ifade edilmektedir. Bin stringde, ilk olarak ikili aritmetik olarak kodlanmis olan bir bin birinci bin (1. bin), ikinci olarak ikili aritmetik olarak kodlanmis olan bir bin ikinci bin (2. bin), n. olarak ikili aritmetik olarak kodlanmis olan bir bin n. bin (n. bin) olarak ifade edilmektedir. Bin ve bin string NPL 1`de 3.9 ve 3.12`de tanimlanmaktadir. Sekil 16 NPL 1 ve NPLZadeki DQP (en sagdaki sütun) ve bin string (orta sütun) arasindaki bir uyusma tablosunu gösteren açiklayici bir diyagramdir. Sekil 16°daki en sol sütundaki bir bin string dizini bir DQP degerine karsilik gelen bir bin stringin bir dizinini göstermektedir. DQP"nin 0 oldugu durumda bin string dizini 17dir, DQP°nin O`dan büyük oldugu durumda 2 * DQP - `1 "dir ve DQP"nin 0"dan büyük oldugu bir durumda ise -2 * DQP + 1,dir (burada "*" çarpma isleinini ifade etmektedir). Sekil 16"nin en alt sirasindaki bir baglam dizini ise karsilik gelen bir sütundaki bir binin ikili aritmetik kodlamasi için kullanilan bir baglamin bir dizinini göstermektedir. Örnek olarak, DQP = -1°e karsilik gelen bin stringi 1103dur, burada ilk binin degeri 1,dir, ikinci binin degeri lidir ve üçüncü binin degeri ise 0°dir. Ilk binin ikili aritmetik kodlamasi için kullanilan baglam dizini 0"dir, ikinci binin ikili aritmetik kodlamasi için kullanilan baglam dizini 2"dir ve üçüncü binin ikili aritmetik kodlamasi için kullanilan baglam dizini ise 3stür. Burada sözü edilen baglain binin en olasi sembolü (PS) ile olasiliginin bir kombinasyonudur. Uyarlanir ikili aritmetik kodlayici (104) ilk binden baslayarak ve karsilik gelen baglam dizini ile iliskili baglami kullanarak, anahtar (111) tarafindan temin edilen bin stringin her binini ikili aritmetik olarak kodlamaktadir. Uyarlanir ikili aritmetik kodlayici (104) ayrica daha sonraki ikili aritmetik kodlama için ikili aritmetik kodlanmis binin degerine göre baglam diziniyle iliskili baglami güncellemektedir. Uyarlanir ikili aritmetik kodlama islemlerinin detaylari NPL 1°deki 9.34"te açiklanmaktadir. Tipik nicemleme parametre kodlayici yukarida sözü edilen islemlere dayali girilen Video niceinleine parametresini kodlamaktadir. NPL 1: ISO/IEC [4496-10 Advanced Video Coding (Gelismis Video Kodlama) NPL 2: "WD3: Working Draft 3 of High-Efficiency Video Coding" (WD3: Yüksek Verimli Video Kodlamanin Çalisma Taslagi 3", Doküman: JCTVC-E603, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC 1/SC29/WG11 5th Meeting: Geneva, CH, 16-23 March, 2011 EP 2 536 145 A1 sayili Patent dokümaninda CABAC kodlamaya ait çerçevesinde ayri mutlak deger ve isaretin kullanildigi DQP'nin ikili sisteme çevrilmesinden bahsedilmektedir. Sekil 16Sdan da görülebilecegi üzere, tipik nicemleme parametresi kodlayici önemli DQP7nin pozitif mi veya negatif mi olduguyla ilgili bilgi ile önemli DQPlnin mutlak degeri ile ilgili bilgiyi ayirt etmeden ikili sisteme çevirmeyi gerçeklestirmektedir. Dolayisiyla tipik nicemleme parametre kodlayici asagidaki üç etken nedeniyle önemli DQP7yi uygun sekilde Ilk etken, ikinci bin ("2." sütundaki bin) ve sonraki binler ("3." Ve devamindaki sütunlardaki binler) bir bin ile ifade edilemeyecek olan iki ya da daha fazla durumla ilgili bilgiyi kapsadigi için, uygun baglamlar kullanilarak binlerin ikili aritmetik kodlanmasinin münikün olmamasidir. Bir bin ile ifade edilebilecek olan bilgi iki durumdan hangisinin dogru oldugunun bilgisidir. Ancak, ikinci bin ve takip eden binler bir bin ile ifade edilemeyecek olan üç veya daha fazla durumla ilgili bilgiyi kapsamaktadir. Detayli olarak, Sekil 16,da, ikinci bin DQP,nin pozitifmi yoksa negatifmi olduguyla ilgili bilgiyi ve önemli DQP,nin mutlak degerinin l"e esit veya liden büyük olup olmadigini gösteren bilgiyi kapsamaktadir. Üçüncü binden sonraki binler ("3." sütunun devamindaki sütunlar) DQPinin pozitif mi yoksa negatif mi olduguyla ilgili bilgiyi ve önemli DQP"nin mutlak degerinin büyüklügünü gösteren bilgiyi kapsamaktadir. Dolayisiyla, bir bin ile ifade edilemeyecek olan üç veya daha fazla durum ile ilgili bilgiyi kapsayan ikinci ve sonraki binlerin uygun baglamlarla ikili aritmetik kodlanmasi imkansizdir. Ikinci etken de artik binlerin, DQP mesafesinin pozitif ile negatif arasinda asimetrik oldugu durumda verimli bir sekilde azaltilamamasidir. DQP mesafesi pozitif ile negatif arasinda asimetrik oldugunda, iletilmeyen bir DQPlye ait bir bin stringin varligina bagli olarak artik binler azaltilmadan belirli bir DQPinin kodlanmasi gerekmektedir. Örnek olarak, NPL 1 ve NPL 2"de tanimlanan DQP mesafesi -26 ile 25 arasinda olup, pozitif ile negatif arasinda asimetriktir. Sekil 16°da, iletilmeyen DQP:26 bin stringinin varligina bagli olarak, DQP=-26`nin artik 52. ve 53. binler azaltilmadan kodlanmasi gerekmektedir. Üçüncü etken ise tipik nicemleme parametresi kodlayici tarafindan islenen bin stringde bulunan binlerin sayisinin önemli DQP"nin pozitif mi yoksa negatif mi olduguyla ilgili bilgiyi ve önemli DQP,nin mutlak deger bilgisinin ayri olarak ikili sisteme çevrilmesi durumundaki binlerin sayisinin yaklasik olarak iki kati olmasidir. Çok sayidaki bin kodlanmis verinin miktarinda bir artisa neden olmakta ve DQP kodlama ve kod çözme isleminin hizinda ise bir düsüse neden olmaktadir. Mevcut bulusun amaci yukarida sözü edilen etkenlerin her biri çözülerek, baglam tabanli uyarlanir ikili aritmetik kodlama kullanan Video kodlama için bir Video nicemleme parametresinin uygun bir sekilde kodlanmasini saglamaktir. Yukaridaki amaç ekli istemlerin özelliklerinin kombinasyonu ile gerçeklestirilmektedir. Mevcut bulusa göre, baglam tabanli uyarlanir ikili aritmetik kodlamayi kullanan video kodlama için bir video nicemleme parametresinin uygun bir sekilde kodlanmasi mümkündür. yapisini gösteren bir blok diyagramdir. operasyonlarini gösteren bir akis semasidir. gösteren bir açiklayici diyagramdir. bir yapisini gösteren bir blok diyagramdir. operasyonlarini gösteren bir akis semasidir. yapisini gösteren bir blok diyagramdir. bir yapisini gösteren bir blok diyagramdir. operasyonlarini gösteren bir akis semasidir. yapisini gösteren bir blok diyagramdir. çözücüsünün bir yapisini gösteren bir blok diyagramdir. gösteren bir açiklayici diyagramdir. video nicemleme parametresi kod çözücüsünün islevlerini gerçeklestirebilen bir bilgi isleme sisteminin bir yapisina ait bir örnegi gösteren bir blok diyagramdir. karakteristik bilesenleri gösteren bir blok diyagramdir. karakteristik bilesenleri gösteren bir blok diyagramdir. bir blok diyagramdir. gösteren bir açiklayici diyagramdir. Asagida çizimlere referans verilerek mevcut bulusun örnek uygulamalari açiklanmaktadir. Örnek Uygulama 1 Sekil 1, mevcut bulusa göre Örnek Uygulama 1°deki bir Video nicemleme parametre kodlayicisinin bir yapisini gösteren bir blok diyagramdir. Sekil 1'de gösterilen Video nicemleme parametre kodlayici bir öngörücüyü (101), bir ara bellegi (102), bir ikili sisteme çeviriciyi (1031), bir uyarlanir ikili aritmetik kodlayiciyi (104), bir ikili aritmetik kodlayiciyi (105), bir anahtari (SW) (111) ve bir diger anahtari (SW) (112) kapsamaktadir. Öngörücüden ( video nicemleme parametresi kodlayiciya girilen bir nicemleme parainetresinden (QP) çikarilmaktadir. PQP bir delta nicemleme parametresine (DQP) (DQP = QP - PQP) eklenmektedir, ve toplam sonraki nicemleme parametre kodlamasi için yeniden yapilandirilan bir nicemleme parametresi (RQP) (RQP = DQP + PQP) olarak ara bellekte (102) depolanmaktadir. Mevcut bulusun bir özelligi olan ikili sisteme çevirici (1031), DQP7nin önemli olup olmadigini gösteren bilgi birinci bin (bin (1)) ile iliskilendirilecek, önemli DQP°nin pozitif mi yoksa negatif mi oldugunu gösteren bilgi ikinci bin (bin (2)) ile iliskilendirilecek ve DQPinin mutlak degerini gösteren bilgi ise üçüncü ve sonraki binler (bin (n) : n : 3, 4, ...) ile iliskilendirilecek sekilde girdi DQP°sini ikili sisteine çevirmektedir. Bu asagidaki sekilde formüle edilmektedir: bin (1) = funcl (DQP) - - - (1) Burada func1(a) a 0 ise O`a dönen ve eger a 0 degilse 1,e dönen bir fonksiyondur, fun02(a) eger a pozitifse Osa dönen ve eger a pozitif degilse lle dönen bir fonksiyondur ve func3(a, b) ise eger a b`den daha az ise 1°e dönen ve aksi durumda ise 0"a dönen bir fonksiyondur. bin(n)"in (11 = 2, 3, ...) yalnizca DQP bir önemli degere sahip oldugunda (yani funcl (DQP) l oldugunda) kodlandigini unutmayiniz. Uyarlanir ikili aritmetik kodlayici (104) bine karsilik gelen baglam dizini ile iliskili bir baglami kullanarak anahtar (l 1 l) vasitasiyla temin edilen bin stringe ait, ikinci bin disindaki, her bir bini (bin(n): 11 = 1, 3, 4,...) ikili aritmetik olarak kodlamakta ve anahtar (112) vasitasiyla kodlanan veriyi üretmektedir. Uyarlanir ikili aritmetik kodlayici (104) ayrica daha sonraki ikili aritmetik kodlama için ikili aritmetik kodlanmis binin degerine göre baglam diziniyle iliskili baglami güncellemektedir. Ikili aritmetik kodlayici (105), esit olasilikla, anahtar (111) vasitasiyla temin edilen bin stringe ait ikinci bini ikili aritmetik olarak kodlamakta ve anahtar (112) vasitasiyla kodlanan verileri çikarmaktadir. Bu da bu örnek uygulamadaki Video nicemleme parametresi kodlayicinin yapisinin tanimlanmasini tamamlamaktadir. Asagida Sekil 2ldeki bir akis semasi kullanilarak bu örnek uygulamadaki Video nicemleme parametre kodlayicisinin özellikleri olan ikili sisteme çevirici (1031), uyarlanir ikili aritmetik kodlayici (104) ve ikili aritmetik kodlayicinin (105) isleyisleri açiklanmaktadir. Uyarlanir ikili aritinetik kodlayici (104) islemi 3,e ayarlanmis olan bir baslangiç deger parametresi (n) ile baslatmaktadir. Adim S 101 'de, ikili sisteme çevirici (1031) DQP,nin önemli olup olmadigini gösteren bilgi birinci bin ile iliskilendirilecek sekilde, önemli DQP"nin pozitif olup olmadigini gösteren bilgi ikinci binle ve DQP°nin mutlak degerini gösteren bilgi ise üçüncü ve sonraki binlerle iliskilendirilecek sekilde DQP"yi ikili sisteme çevirmektedir. Adim SlOTde, uyarlanir ikili aritmetik kodlayici (104) bin(l)7i uyarlanir ikili aritmetik olarak kodlamaktadir. Adim SlO3°te, ikili aritmetik kodlayici (105) DQP"nin önemli olup olmadigini belirlemektedir. DQPanin önemli oldugu durumda, ikili aritmetik kodlayici (105) 8104,e geçilmektedir. Aksi durumda, ikili aritmetik kodlayici (105) islemi sonlandirmaktadir. Adim 81043te, ikili aritmetik kodlayici (105) bin(2)`yi ikili aritmetik olarak kodlamaktadir. Adim 8105`te, uyarlanir ikili aritmetik kodlayici (104) bin(n)"i uyarlanir ikili aritmetik olarak kodlamaktadir. Adim S106'da, uyarlanir ikili aritmetik kodlayici (104) bin stringe ait bütün binlerin kodlanip kodlanmadigini tespit etmektedir. Bütün binlerin kodlandigi durumda, uyarlanir ikili aritmetik kodlayici (104) islemi sonlandirmaktadir. Aksi durumda ise, uyarlanir ikili aritmetik kodlayici (104) 11 artirmakta ve adim 105,e, sonraki binin (n) uyarlanir ikili aritmetik olarak kodlanmasina geçmektedir. Bu, bu örnekleyici uygulamadaki video nicemleme parametresi kodlayicinin özellikleri olan ikili sisteme çevirici (1031), uyarlanir ikili aritmetik kodlayici ( 104) ve ikili aritmetik kodlayicinin (105) isleyislerinin tanimini tamamlamaktadir. Sekil 3 mevcut bulusa göre DQP (en sag sütun) ve bin string (orta sütun) arasindaki uyusma tablosunu gösteren bir açiklayici diyagramdir. Sekil 3ite, bin string7in ikinci sütunundaki X, DQP,nin pozitif olup olmadigini, yani DQP,nin pozitif mi yoksa negatif mi oldugunu gösteren l-bit bilgiyi temsil etmektedir. X=0 iken pozitifi ifade etmekte ve X=1 iken negatifi ifade etmektedir. Örnek olarak DQP=1,e ait bin string 100"dür ve DQP : -1 ,e ait bin string ise 1 10°dir. Ayrica baglam dizini sirasindaki na ise herhangi bir baglamin kullanilmadigini göstermektedir (yani en olasi sembol ve bunun olasiligi sabittir). Mevcut bulusa göre ikili sisteme çevirme islemi yukarida sözü edilen soruna neden olan üç etkeni asagidaki sekilde çözmektedir. Ilk faktör uygun baglamlar kullanilarak ikinci bin ve sonraki binlerin ikili aritmetik kodlanmasiyla çözülmektedir. Sekil Site, ikinci bin yalnizca DQP"nin pozitif mi yoksa negatif mi oldugu bilgisini, yani iki durumdan hangisinin dogru oldugu bilgisini belirtmektedir. Ayni sekilde, üçüncü bin yalnizca DQP7nin mutlak degerinin 1°den büyük olup olmadigi bilgisini, yani iki durumdan hangisinin dogru oldugunun bilgisini göstermektedir. Dolayisiyla, ikinci bin ve üçüncü uygun baglamlar kullanilarak ikili aritmetik olarak kodlanmaktadir. Dördüncü ve sonraki binler ise, yalnizca DQP7nin mutlak degerinin belirli bir degerden büyük olup olmadigi bilgisini, yani iki durumdan hangisinin dogru oldugu bilgisini sütunlara göre baglam dizinlerini ekleyerek gösterecek sekilde esit olarak tasarlanabilmektedir. Ikinci faktör, kod çözücünün DQPlnin pozitif mi yoksa negatif mi oldugunu ikinci binin degerinden belirleyebilecegi varsayilarak, DQP mesafesi pozitif ile negatif arasinda asimetrik oldugunda bile kodlayici artik binleri verimli bir sekilde azaltabildigi için çözümlenmektedir. Detayli olarak, Sekil 3"te, DQP = -26 kodlanmasi durumunda, artik 28. binin kodlanmasina gerek yoktur, çünkü 27. bin DQP7nin minimum degeri -26 olmasi durumunda 1 oldugu için, kod çözücü DQP = -26 olarak belirleyebilmektedir. Ayrica DQP = kodlanmasi durumunda, artik 27. binin kodlanmasina gerek yoktur, çünkü 26. bin DQPinin maksimum degeri 25 olmasi durumunda 1 oldugu için, kod çözücü DQP = 25 olarak belirleyebilmektedir. Bu örnek uygulamada, Sekil 'l6lda gösterilen uyusma tablosu ile Sekil 33te gösterilen uyusma tablosu arasindaki karsilastirmadan da anlasilacagi üzere bin stringe dahil edilen binlerin sayisi önemli DQP'nin pozitif mi yoksa negatif mi oldugu bilgisi ve önemli DQP'nin mutlak deger bilgisi ayri ayri ikili sisteme çevrilmesi durumundaki binlerin sayisiyla ayni oldugu için üçüncü etken de çözülmüs olmaktadir. Örnek Uygulama 2 Sekil 4, Örnek Uygulama lideki Video nicemleme parametre kodlayicisina karsilik gelen bir Video nicemleme parametre kod çözücü yapisini gösteren bir blok diyagramdir. Sekil 4ite gösterilen Video nicemleme parametre kod çözücü bir Öngöiücüyü (201), bir ara bellegi (202), bir ikili sistemden çeviriciyi (2031), bir uyarlanir ikili aritmetik kod çözücüyü (204), bir ikili aritmetik kod çözücüyü (205), bir anahtari (SW) (21 1) ve bir diger anahtari (SW) (212) kapsamaktadir. Uyarlanir ikili aritmetik kod çözücü (204) anahtar (212) tarafindan temin edilen kodlanmis veriden bin(l),in kodunu ikili aritmetik olarak çözmektedir ve kodu çözülmüs olan veriyi anahtar (211) araciligiyla ikili sistemden çeviriciye (2031) göndermektedir. Uyarlanir ikili aritmetik kod çözücü (204) ayrica daha sonraki ikili aritmetik kod çözme islemi için ikili aritmetik olarak kodu çözülmüs birinci bine karsilik gelen baglam diziniyle iliskili baglami güncellemektedir. Bin(l),in 1 oldugu durumda, ikili aritmetik kod çözücü (205) anahtar (212) tarafindan temin edilen kodlanmis veriden bin(2)°in kodunu ikili aritmetik olarak çözmektedir ve kodu çözülmüs olan veriyi anahtar (211) araciligiyla ikili sistemden çeviriciye (2031) göndermektedir. Bin(l)'in 1 oldugu durumda, uyarlanir ikili aritmetik kod çözücü (204) anahtar (212) tarafindan temin edilen kodlanmis veriden bin(n) (n = 3, 4, ...) ,in kodunu da degeri 0 olan bir binin kodu çözülene kadar ikili aritmetik olarak çözmektedir ve kodu çözülmüs olan veriyi anahtar (SW) (211) araciligiyla ikili sistemden çeviriciye (2031) göndermektedir. Uyarlanir ikili aritmetik kod çözücü (204) daha sonraki ikili aritmetik kod çözme islemi için ikili aritmetik olarak kodu çözülmüs 11. bine karsilik gelen baglam diziniyle iliskili baglami güncellemektedir. Ikili sistemden çevirici (203 I), bin stringin 0 (n = 1) olmasi durumunda, degeri 0 olan DQP7yi üretmektedir. Aksi durumda (11 3), ikili sistemden çevirici (2031) degeri asagidaki denklem ile elde edilen DQP3yi üretmektedir. DQP=(1-2*bin(2))*(n-2)'-°(4). Burada denklem (4)"teki "*" çarpma islemini göstermektedir. Öngörücüden (201) temin edilen PQP, RQP,yi elde etmek için ikili sistemden çeviriciden (2031) temin edilen DQPlye eklenmektedir. Sonraki nicemleme parametresi kod çözümü için RQP de ara bellekte (202) saklanmaktadir. Bu da bu örnek uygulamadaki video nicemleme parametresi kod çözücünün yapisinin tanimlanmasini tamamlamaktadir. Asagida Sekil 5"teki bir akis semasi kullanilarak bu örnek uygulamadaki Video nicemleme parametre kod çözücüsünün özellikleri olan ikili sistemden çevirici (2031), uyarlanir ikili aritmetik kod çözücü (204) ve ikili aritmetik kod çözücünün (205) isleyisleri açiklanmaktadir. Uyarlanir ikili aritmetik kod çözücü (204) islemi 3"e ayarlanmis olan bir baslangiç deger parametresi (11) ile baslatmaktadir. Adim SZOlsde, uyarlanir ikili aritmetik kod çözücü (204) bin(1)"i uyarlanir ikili aritmetik olarak çözmektedir. Adiin 8202ide, ikili aritmetik kod çözücü (205) bin(l)"in degerinin l olup olmadigini ((199 tespit etmektedir. Bu örnekte DQP`nin önemli oldugunu göstermektedir. Bin(l)'in degerinin 1 oldugu durumda, ikili aritmetik kod çözücü (205) adim 82037ten devam etmektedir. Aksi durumda, ikili aritmetik kod çözücü (205) adim 8206"ya devam etmektedir. Adim S203"te, ikili aritmetik kod çözücü (205) bin(2)"yi ikili aritmetik olarak çözmektedir. Adim 82047te, uyarlanir ikili aritmetik kod çözücü (204) bin(n)7i uyarlanir ikili aritmetik olarak çözmektedir. Adim SZOSSte uyarlanir ikili aritmetik kod çözücü (204) bütün binlerin kodunun çözülüp çözülmedigini, yani bin(n),in degerinin 0 olup olmadigini belirlemektedir. Bütün binlerin kodunun çözüldügü durumda, uyarlanir ikili aritmetik kod çözücü (204) adim 8206`ya devam etmektedir. Aksi durumda ise, uyarlanir ikili aritmetik kod çözücü (204) 11 artirmakta ve adim S204"e, sonraki binin (n) uyarlanir ikili aritmetik olarak kodunun çözülmesine geçmektedir. bin stringi ikili sistemden çevirmektedir. Bu, bu örnekleyici uygulamadaki video nicemleme parametresi kod çözücüsünün özellikleri olan ikili sistemden çevirici (2031), uyarlanir ikili aritmetik kod çözücü (204) ve ikili aritmetik kod çözücünün (205) isleyislerinin tanimini tamamlamaktadir. Örnek Uygulama 3 Ömekleyici Uygulamalar 1 ve 2 DQP mesafesi üzerinde sinirlandirmaya sahip olmayan video nicemleme parametre kodlayicisini ve Video nicemleme parametre kod çözücüsünü açiklamaktadir. DQP mesafesi üzerinde bir sinirlandirma olmadigi durumda DQP mesafesini kullanarak DQP,ye ait artik binlerin azaltilmasi mümkündür. Sekil 6 ve 7, DQP mesafesini (minimum DQP ve maksimum DQP,nin kombinasyonu) kullanmak için Örnekleyici Uygulama 1 ve 2 üzerinde bir iyilestirme olarak bir video nicemleme parametre kodlayici ve bir video nicemleme parametre kod çözücüsünün yapilarini gösteren blok diyagramlardir. Sekil 6,daki bir ikili sisteme çevirici ( ile maksimum DQP`nin (maXDQP Z 0) kombinasyonunu kullanmaktadir. Ikili sisteme çevirici (1032) asagidaki denklemler ile ilk bini, ikinci bini ve DQP'nin üçüncü ve sonraki binlerinin bir maksimum sayisini (cMax) hesaplamaktadir. cMax = max(0, üinc4(minDQP, maXDQP, DQP) - l) ' - - (7) . Burada func4(a, b, c) eger 0 negatifse -a,ya dönen ve eger c pozitifse b'ye dönen bir fonksiyondur. bin(n),in (n : 2, 3, ..._) yalnizca DQP bir önemli degere sahip oldugunda (yani funcl (DQP) l oldugunda) kodlandigini unutmayiniz. cMax 2 l oldugunda, ikili sisteme çevirici (1032) asagidaki denklem ile bin(n)"yi (n = 3, ..., 2 + cMax) hesaplamaktadir. bin(n) = func5(n - 2, cMax, lDQP|) ° ° ° (8). Burada fun05(a, b, c) eger b ve c esitse lle dönen, c b"den az ise ve ayrica a c"den az ise lse dönen ve aksi durumda (0 b'den az ise ve a ile 0 de esit ise) O'a dönen bir fonksiyondur. Denklem (8) ile elde edilen üçüncü ve sonraki binler (lDQP| söz dizimi eleman degerine sahip olan) NPL 1"deki 9.3.2.2"de açiklanan kesilmis tekli (TU) ikili sisteme çevirme islemiyle elde edilen bin stringin binleriyle aynidir. Sekil 67da gösterilen Video nicemleme parametre kodlayicisina karsilik gelen Sekil 77de gösterilen video nicemleme parametre kod çözücüde, bir ikili sistemden çevirici (2032) asagidaki denklem ile minDQP, maxDQP ve ikili aritmetik kodu çözülmüs bin("),ye dayanarak CMAXH hesaplamaktadir. cMax = max(0, fun06(minDQP, maxDQP, bin (2)) - 1) ° ° ° (9). Burada, func6(a, b, c) eger - 1 ise (yani kodu çözülmüs DQP'nin degeri func2(a)'nin tanimina göre negatifse) -a'ya dönen ve eger o 0 ise (yani eger kodu çözülmüs DQP,nin degeri ûin02(a)9nin tanimina göre pozitifse) b"ye dönen bir fonksiyondur. Ikili sistemden çevirici (2032) ayrica DQP7yi belirlemektedir. Detayli olarak cMax 2 1 olmasi ve son kodu çözülmüs binin degerinin 1 olmasi durumunda, ikili sistemden çevirici asagidaki denklemi (10) kullanmaktadir. cMax : 0 olmasi bin(1) : 1 olmasi durumunda ise, ikili sistemden çevirici (2032) asagidaki denklemi (l 1) kullanmaktadir. Aksi durumda ise ikili sistemden çevirici (2032) denklem (4)"ü kullanmaktadir. Denklem (10) ve (11)`den anlasilacagi üzere, ikili sistemden çevirici (2032) DQP mesafesi ve bin (2) (DQPsnin pozitif mi yoksa negatif mi isaretli oldugu) ile belirlenen üçüncü ve sonraki binlerinin maksimum sayisina (cMax) dayanarak video kodlama isleminde azaltilan herhangi bir artik binin degeri tahmin edilerek DQP"yi belirlemektedir. Asagida, Sekil Sideki bir akis semasi kullanilarak Sekil 7'deki video nicemleme parametre kod çözücüsündeki ikili sistemden çevirici (2032), uyarlanir ikili aritmetik kod çözücü (204) ve ikili aritmetik kod çözücünün (205) isleyis leri açiklanmaktadir. Uyarlanir ikili aritmetik kod çözücü (204) islemi 37e ayarlanmis olan bir baslangiç deger parametresi (11) ile baslatmaktadir. Adim S30l"de, uyarlanir ikili aritmetik kod çözücü (204) bin(l)"i uyarlanir ikili aritmetik olarak çözmektedir. Adim S302°de, ikili aritmetik kod çözücü (205) bin(l),in degerinin l olup olmadigini tespit etmektedir. Bin(l)'in degerinin 1 oldugu durumda, ikili aritmetik kod çözücü (205) adim S303°ten devam etmektedir. Aksi durumda, ikili aritmetik kod çözücü (205) adim S308°e devam etmektedir. Adiin S3O39te, ikili aritmetik kod çözücü (205) bin(2),yi ikili aritmetik olarak çözmektedir. ikili sistemden çevirici (2032) cMax°in l°den büyük olup olmadigini veya lie esit olup olmadigini belirlemektedir. cMaxiin liden büyük olmasi veya 1°e esit olmasi durumunda, ikili sistemden çevirici (2032) Adim 8306'dan devam etmektedir. Aksi durumda, ikili sistemden çevirici (2032) adim 8308,e devam etmektedir. Adim S306ida, uyarlanir ikili aritmetik kod çözücü (204) bin(n)"i uyarlanir ikili aritmetik olarak çözmektedir. Adim S307°de, uyarlanir ikili aritmetik kod çözücü (204) bütün binlerin çözülüp çözülmedigi tespit etmektedir. Bin(n),in degerinin 0 olma kosulu, n-29nin degerinin cMaX,a esit olma kosulu veya bu kosullarin her ikisi de karsilanmissa bütün binlerin kodu çözülmüstür. Bütün binlerin kodunun çözüldügü durumda, uyarlanir ikili aritmetik kod çözücü (204) adim S308"e devam etmektedir. Aksi durumda ise, uyarlanir ikili aritmetik kod çözücü (204) n artirmakta ve adim S3069ya, sonraki binin (n) uyarlanir ikili aritmetik olarak kodunun çözülmesine geçmektedir. Adim S308,de, ikili sistemden çevirici (2032) DQP"yi belirlemek için kodu çözülen bin stringi ikili sistemden çevirmektedir. Bu, Sekil 7"de gösterilen video nicemleme parametresi kod çözücüsündeki ikili sistemden çevirici (2032), uyarlanir ikili aritmetik kod çözücü (204) ve ikili aritmetik kod çözücünün (205) isleyislerinin tanimini tamainlainaktadir. Sekil 3 ayrica minDQP : -26 ve maxDQP : 25 oldugu Sekil 6,da gösterilen video nicemleme parametre kodlayicidaki DQP,ye ait artik binlerin azaltilmasina ait bir örnegi göstermektedir. DQP : -26"ya ait bin string ile ilgili olarak, 27. bin 1 oldugunda kod çözücü DQP=-26"yi tanimlayabildigi için artik 28. binin kodlanmadigi açiktir. Yani, yukarida açiklanan bu örnekleyici uygulamadaki video nicemleme parametre kodlayici DQP mesafesi ve kodlanmis ikinci bin (DQP,nin pozitif veya negatif isareti) kullanilarak, DQP°nin mutlak degerinin mesafesi pozitif ile negatif arasinda farkli olmasi durumunda bile DQP,nin pozitif veya negatif isaretinden sonra kodlanan DQPinin binleri arasindaki herhangi bir artik bini azaltabilmektedir. Ayni sekilde, yukarida açiklanan bu örnekleyici uygulamadaki Video nicemleme parametre kod çözücü DQP mesafesi ve DQP,nin kodlanmis pozitif veya negatif isaretini kullanarak, DQP1nin mutlak degerinin mesafesi pozitif ile negatif arasinda farkli olmasi durumunda bile DQP,nin pozitif veya negatif isaretinden sonra kodu çözülen DQPanin binleri arasindaki video niceinleine parametre kodlama isleminde azaltilan herhangi bir artik binin degerini belirleyebilmektedir. Yukarida açiklanan Sekil 6`daki video nicemleme parametre kodlayicida ve Sekil 7°deki video nicemleme parametre kod çözücüde, minDQP ve maxDQP nicemleme parametresinin mesafesinden (minimum QP ve maksimum QP,nin kombinasyonu) ve öngörülen niceleme parametresinden (PQP) üretilebilmektedir. Örnek Uygulama 4 Sekil 9 ve 10 minimum QP (minQP) ve maksimum QP (maxQP) kombinasyonu ve PQP°ye dayanarak minDQP ve maxDQP üretmek için bir gelisme olarak bir Video nicemleme parametre kodlayici ve bir video nicemleme parametre kod çözücüsünün yapilarini gösteren blok diyagramlardir. Sekil 6 ve Sekil 7 ile kiyaslamadan açikça görülebilecegi üzere Sekil 9°da gösterilen video niceinleine parametre kodlayici ayrica bir mesafe belirleyiciyi (106) kapsamaktadir, Sekil 10"da gösterilen video niceinleine parametre kod çözücüsü ise bir mesafe belirleyiciyi (206) kapsamaktadir. Mesafe belirleyicilerin (106 ve 206) her biri asagidaki denklemlerle minDQP ve maxDQP, yi hesaplamaktadir. minDQP = minQP - PQP "- (12) Mesafe belirleyicilerin (106 ve 216) dahil edilmesi, kodlanacak QP deger olarak minQP veya maxQP'ye daha yakin oldugunda artik binlerin azaltilmasi daha verimli bir sekilde gerçeklestirilebilmektedir. minDQP = -26 ve maxDQP = 25 oldugu bir video nicemleme parametre kodlayici ve bir video nicemleme parametre kod çözücüsünde, denklem (12) ve (13) asagidaki (12)' ve (13)' denklemleri ile degistirilebilmektedir. Yukarida açiklanan mevcut bulusa göre Video nicemleme parametre kodlayicisi ve video nicemleme parametre kod çözücü, Sekil 3°te gösterilen örnegi kullanmak yerine, baglam dizini degerinin Sekil 11,de gösterildigi gibi önceden belirlenmis bir sütundan sonraki binler için sabit oldugu bir uyusma tablosuna dayanarak çalisabilmektedir. Sekil llide gösterilen uyusma tablosunda, baglam dizininin degeri dördüncü ve sonraki sütunlar için Site sabitlenmistir. Sekil ll"de, ilk bin yalnizca DQPinin önemli olup olmadigi bilgisini, yani iki durumdan hangisinin dogru oldugu bilgisini belirtmektedir. Ikinci bin yalnizca DQPinin negatif mi yoksa pozitif mi oldugu bilgisini, yani iki durumdan hangisinin dogru oldugu bilgisini belirtmektedir. Üçüncü bin yalnizca DQPinin mutlak degerinin l°den büyük olup olmadigi bilgisini, yani iki durumdan hangisinin dogru oldugunun bilgisini göstermektedir. Dördüncü ve sonraki binler yalnizca bin stringin sonlanip sonlanmadiginin bilgisini, yani iki durumdan hangisinin dogru oldugu bilgisini belirtmektedir. Dolayisiyla, mevcut bulusa göre video nicemleme parametre kodlayici DQP'nin önemli olup olmadigi bilgisini ifade eden birinci bini, DQPinin pozitif mi yoksa negatif mi oldugunu gösteren ikinci bini, DQP'nin mutlak degerinin 1'den büyük olup olmadigini belirten üçüncü bini, bin stringin sonlanip sonlanmadigini gösteren bini ikili aritmetik olarak kodlayabilmektedir. Yukarida açiklandigi gibi, mevcut bulusa göre baglam tabanli uyarlanir ikili aritmetik kodlamayi kullanan video kodlama için bir video nicemleme parametresi delta nicemleme parametresinin Önemli olup olmadigini gösteren bilgi ilk binle iliskilendirilecek sekilde, delta nicemleme parametresinin pozitif mi yoksa negatif mi oldugunu gösteren bilgi ikinci binle iliskilendirilecek sekilde ve önemli delta nicemleme parametresinin mutlak degerini gösteren bilgi üçüncü ve sonraki binlerle iliskilendirilecek sekilde ikili sisteme çevirme isleminin gerçeklestirilmesi için araçlar gerçeklestirilerek uygun sekilde kodlanabilmektedir. Mevcut bulusa göre, yukarida açiklanan uygun kodlama üç özellik ile gerçeklestirilmektedir: delta nicemleme parametresinin her bir binine uygun bir baglamin atanmasi; delta nicemleme parametresinin artik binlerinin azaltilmasi ve delta nicemleme parametresindeki bin stringe dahil edilen binlerin sayisinin azaltilmasi. Yukarida açiklanan örnek uygulamalarin her biri yalnizca bir donanimla degil, ayrica bir bilgisayar programi ile de gerçeklestirilebilmektedir. Sekil 123de gösterilen bir bilgi isleme sistemi bir islemciyi (1001), bir program bellegini (1002), Video verilerinin saklanmasi için bir saklama ortamini (1003) ve bir veri akisinin saklanmasi için bir saklama ortamini (1004) kapsamaktadir. Saklama ortami (1003) ve diger saklama ortami (1004) ayri saklama ortamlari olabilmekte veya ayni saklama ortama içine dahil edilen saklama alanlari olabilmektedir. Bir saklama ortami olarak, bir hard disk gibi bir manyetik saklama ortami kullanilabilmektedir. Sekil 12lde gösterilen bilgi isleme sisteminde, Sekil 1, 4, 6, 7, 9 ve lûidan her birinde gösterilen bloklarin (ara bellek blogu hariç) islevlerini gerçeklestirmek için bir program, saklanan programa göre islemleri gerçeklestirerek Sekil 1, 4, 6, 7, 9 ve 10'un her birinde gösterilen video nicemleme parametresi kodlayici veya video nicemleme parametresi kod çözücüsünün islevlerini gerçeklestirmektedir. Sekil 13, mevcut bulusa göre bir Video nicemleme parametresi kodlayicidaki karakteristik bilesenleri gösteren bir blok diyagramdir. Sekil 13°te gösterildigi gibi, mevcut bulusa göre Video nicemleme parametresi kodlayici daha önceden yeniden yapilandirilmis bir nicemleme parametresinden bir öngörülen nicemleme parametresi üretmek için bir öngörü birimini (11); bir nicemleme parametresi ve öngörülen nicemleme parametresinden bir delta nicemleme parametresi üretmek için bir hesaplama birimini (12) ve delta nicemleme parametresinin önemli olup olmadigini gösteren bir ilk binin, delta nicemleme parametresinin pozitif` mi yoksa negatif mi oldugunu gösteren bir ikinci bin ve delta nicemleme parametresinin önemli olmasi durumunda delta nicemleme parametresinin bir mutlak degerini gösteren diger binlerin ikili aritmetik kodlamasi için bir nicemleme parametre kodlama birimini (13) kapsamaktadir. Sekil 14, mevcut bulusa göre bir Video nicemleme parametresi kod çözücüsündeki karakteristik bilesenleri gösteren bir blok diyagramdir. Sekil 14,te gösterildigi gibi, mevcut bulusa göre video nicemleme parametre kod çözücüsü bir geçmis yeniden yapilandirilan nicemleme parametresinden bir öngörülen nicemleme parametresi üretilmesi için bir öngörü birimini (21) ve bir delta nicemleme parametresinin önemli olup olmadigini gösteren bir ilk binin, delta nicemleme parametresinin pozitif mi yoksa negatif mi oldugunu gösteren bir ikinci binin ve delta nicemleme parametresinin bir mutlak degerini gösteren diger binlerin kodlarinin ikili aritmetik olarak çözülmesi için nicemleme parametresi kod çözme birimini (22) kapsamaktadir. Mevcut bulus yukaridaki örnek uygulamalar ve örneklere referans verilerek açiklanmis olmasina ragmen, mevcut bulusun yukaridaki örnek uygulama ve örneklerle sinirli degildir. Bulusun kapsami ekli istemlerle tanimlanmaktadir. dokümanina dayanarak rüçhan talep etmektedir. Referans Numaralari Listesi 1221101 1031, 1032 2031, 2032 Öngörü birimi Hesaplama birimi Nicemleme parametre kodlama birimi Öngörü birimi Nicemleme parametre kod çözme birimi Öngörücü Ara bellek Ikili sisteme çevirici Uyarlanir ikili aritmetik kodlayici Ikili aritmetik kodlayici Mesafe belirleyici Anahtar Anahtar Öngörücü Ara bellek Ikili sistemden çevirici Uyarlanir ikili aritmetik kod çözücü Ikili aritmetik kod çözücü Mesafe belirleyici Anahtar Anahtar NICEMLEME / . PARAMETRESI NICEMLEME_ k, _ IKILISISTEME PARAMETRESI IS ÇEVIRICI ~~ -~ -- *v YENIDEN . NICEMLEME PARAMETRESI v PARAMETRESI ÖNGÖRÜCÜ .4- ARA BELLEK UYARLANIR IKILI ARITMETIK KODLAYICI ARITMETIK KODLAYICI KODLANMIS IKILI SISTEME ÇEVIR M 8101 ILK bini UYARLANIR IKILI ARITMETIK OLARAK __V 31 02 NICEMLEME PARAMETRESI ÖNEMLI MI? IKINCI binini IKILI ARITMETIK KODLA N 81 04 SONRAKI bini UYARLANIR IKILI ARITMETIK N 51 05 OLARAK KODLA BÜTÜN binler KODLANDI MI? BIN STRING BIN STRING DQP 2 1 X 0 1 veya -1 3 1 X 1 0 2 veya -2 4 1 X 1 l 0 3 veya -3 1 X 1 l 1 0 4 veya -4 6 1 X 1 l 1 l 0 5 veya -5 YENIDEN PARAMETRESI NICEMLEME PARAMETRESI ÖNGÖRÜLEN NICEMLEME PARAMETRESI ARA » ÖNGÖRÜCÜ 202 201 2031 !- __________ 5 bin UYARLANIR IKILI g """""" / bm 5 W ARITMEIIKuKOD 4+0 IKILI string E E ÇOZUCU I SISTEMJpsN <__._o\ : ÇEVIRICI : 5 bin IKILI o<-----v ARITMETIK KOD 4+0 211 205 212 KODLANMIS ILK binin KODUNU UYARLANIR IKILI 8201 ARITMETIK OLARAK ÇOZ ILK binin DEGERI i MI? HAYIR IKINCI bininIN KODUNU IKILI ARITMETIK 8203 OLARAK ÇÖZ N SONRAKI binin KODUNU UYARLANIR IKILI _V 8204 ARITMETIK OLARAK ÇÖZ BÜTÜN binlerin KODU ÇÖZÜLDÜ MÜ? IKILI SISTEMDEN ÇEVIR N 8206 N ICEMLEME PARAMETRESI 0 ÖNGÖRÜLEN NICEMLEME PARAMETRESI NICEMLEME PARAMETRESI ÖN GÖRÜCÜ ÇEVIRICI YAPILANDIRILAN NICEMLEME PARAMETRESI NICEMLEME PARAMETRESININ ME SAFESI 0` 'r--›- ARITMETIK 5+0 : i KODLAYICI ; 5 Ebin IKILI E 1 5 0-'_; ARITMETIK 1+0 ; ..... J KODLAYICI ___J. 105 112 KODLANMIS YAPILANDIRILAN NICEMLEME < PARAMETRESI NICEMLEME. / bin 1 044_ ARITMETIK KOD ..4.0 I PARAMETRESI [Km string ; î ÇÖZÜCÜ 5 . q SISTEMDEN 4 ; , : ÇEVIRICI ; IKILI : ÖNGÖRÜLEN 04;#- ARlThâlglTjlgÜKOD ..+0 NICEMLEME. - __.,' Ç '.... PARAMETRESI ç 211 205 212 ÖNGÖRÜCÜ . DELTA NICEMLEME PARAMETRESININ MESAFESI I KODLANMIS ILK binin KODUNU UYARLANIR IKILI 8301 ARITMETIK OLARAK ÇÖZ N ILK binin DEGERI 1 MI? IKINCI binin KODUNU IKILI ARITMETIK OLARAK 8303 CMax,I HESAPLA N 8304 CMAX'IN DEGERI 1 ,DEN HAYIR BÜYÜK MÜ VEYA ESIT MI? SONRAKI binin KODUNU UYARLANIR IKILI ARITMETIK OLARAK ÇÖZ *v 3306 BÜTÜN binlerin KODU ÇÖZÜLDÜ MÜ? IKILI SISTEMDEN ÇEVIR N 8308 NICEMLEME / bin 5 . PARAMETRESI , . . . wing; NICEMLEME_ ;n IKILISISTEME . PARAMETRESI -Y ÇEVIRICI : w 5 YENIDEN i ----- ÖNGÖRÜLEN YAPILANDIRILAN ç NICEMLEME NICEMLEME 1 1 1 PARAMETRESI PARAMETRESI V DELTA .. .. .. .. ARA NICEMLEME ONGORUCU "" BELLEK PARAMETRESININ MESAFESI 101 102 BELIRLEYICI NICEMLEM'EA PARAMETRESININ MESAFESI UYARLANIR IKILI ARITMETIK KODLAYICI ARITMETIK KODLAYICI ODLANMIS /15 DELTA 2032 """""""" :bm UYARLANJRIKILI }- """" YENIDEN NICEMLEME / bin : 0+3_ ARITMEIIKNKOD "-0 ; YAPILANDIRILAN PARAMETRESI IKILI string 5 : ÇOZUCU 5 : NICEMLEME = i): SISTEMpEN 4-vî-o›\ 5 1 /OGÇODGEÄRIIMIS PARAMETRESI 1* ÇEVIRICI : : bin mu 5 : ÖNGÖRÜLEN : 044._ ARITMETIK KOD **HO : NICEMLEME 'i -------- .J ÇOZUCU '. ..... _ - , J PARAMETRESI S S 3- 211 205 212 ARA __y .. .. .. .. NICEMLEME BELLEK ONGORUCU PARAMETRESININ < MESAFESI 202 201 MESAFE BELIRLEYICI NICEMLEME PARAMETRESININ MESAFESI 11/15 BIN STRING BIN STRING DQP 2 1 X 0 1 veya -1 3 1 X 1 0 2 veya -2 4 1 X 1 1 0 3 veya -3 1 X 1 l 1 0 4 veya -4 6 1 X 1 1 1 1 0 5 veya -5 BAGLAM DIZINI O na 2 3 3 3 3 - - - 3 3 VIDEO VERISI S VERI AKISI DEPOLAMA I LEMCI DEPOLAMA VIDEO VERISI Â VERI AKISI PROGRAM 12/15 ÖNGÖRÜ BIRIMI w 1 1 HESAPLAMA BIRIMI NICEMLEME PARAMETRESI KODLAMA BIRIMI 13/15 ÖNGÖRÜ BIRIMI -x/ 21 NICEMLEME PARAMETRESI KOD ÇÖZME BIRIMI DELTA 1030 I """"" NICEMLEME / bin 1 NICEMLEME 4` PARAMETRESIÄ sîggixI/ns string: PARAMETRESI 77` çEvnuci .. .. .. YENIDEN i ONGORULEN YAPILANDIRILAN 11 1 NICEMLEME _ NICEMLEME PARAMETRESI v PARAMETRESI 14/15 ÖNGÖRÜCÜ 44 ARA BELLEK 101 102 bin UYARLANIRAIKILI 0-:-- ARITMETIK KODLAYlCl ~ *'*KODLANMIS VERI /15 BIN STRING BIN STRING TR TR TR TR TR TR TR