3 research outputs found

    Novel source coding methods for optimising real time video codecs.

    Get PDF
    The quality of the decoded video is affected by errors occurring in the various layers of the protocol stack. In this thesis, disjoint errors occurring in different layers of the protocol stack are investigated with the primary objective of demonstrating the flexibility of the source coding layer. In the first part of the thesis, the errors occurring in the editing layer, due to the coexistence of different video standards in the broadcast market, are addressed. The problems investigated are โ€˜Field Reversalโ€™ and โ€˜Mixed Pulldownโ€™. Field Reversal is caused when the interlaced video fields are not shown in the same order as they were captured. This results in a shaky video display, as the fields are not displayed in chronological order. Additionally, Mixed Pulldown occurs when the video frame-rate is up-sampled and down-sampled, when digitised film material is being standardised to suit standard televisions. Novel image processing algorithms are proposed to solve these problems from the source coding layer. In the second part of the thesis, the errors occurring in the transmission layer due to data corruption are addressed. The usage of block level source error-resilient methods over bit level channel coding methods are investigated and improvements are suggested. The secondary objective of the thesis is to optimise the proposed algorithmโ€™s architecture for real-time implementation, since the problems are of a commercial nature. The Field Reversal and Mixed Pulldown algorithms were tested in real time at MTV (Music Television) and are made available commercially through โ€˜Cerifyโ€™, a Linux-based media testing box manufactured by Tektronix Plc. The channel error-resilient algorithms were tested in a laboratory environment using Matlab and performance improvements are obtained

    Fading ์ฑ„๋„์˜ ์˜ค๋ฅ˜์œจ์— ๋”ฐ๋ผ ์˜ค๋ฅ˜ ๊ฐ•๊ฑด ๊ธฐ๋Šฅ์„ ์„ ํƒํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๊ด€ํ•œ ์—ฐ๊ตฌ

    Get PDF
    ํ•™์œ„๋…ผ๋ฌธ (์„์‚ฌ)-- ์„œ์šธ๋Œ€ํ•™๊ต ๋Œ€ํ•™์› : ๊ณต๊ณผ๋Œ€ํ•™ ์ „๊ธฐยท์ •๋ณด๊ณตํ•™๋ถ€, 2018. 2. ์ฑ„์ˆ˜์ต.๋ณธ ๋…ผ๋ฌธ์€ bit error rate๊ฐ€ ํฐ ๋ฌด์„ ๋ง์„ ํ†ตํ•˜์—ฌ ์˜์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ๋•Œ, ์ „์†ก ๋„์ค‘ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์†์ƒ๋œ packet์—์„œ ์˜ค๋ฅ˜๊ฐ€ ์—†๋Š” ๋ถ€๋ถ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ตœ๋Œ€๋กœ ๋ณต์›ํ•˜๊ณ , ๋ณต์›์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ๋ถ€๋ถ„์€ ์˜ค๋ฅ˜ ์€๋‹‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉํ•˜๋„๋ก ์ˆ˜์ •๋œ HEVC (High Efficiency Video Coding) ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ œ์•ˆํ•œ๋‹ค. ์ œ์•ˆํ•œ ์ฝ”๋”ฉ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฐ์ดํ„ฐ ์˜ค๋ฅ˜๋ฅผ ๋ณต์›ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•œ๋‹ค. ์ฒซ ๋ฒˆ์งธ๋Š” HEVC์—์„œ slice body์— ๋‚ด์žฅ๋œ ๋ชจ์…˜ ๋ฒกํ„ฐ ์ •๋ณด๋ฅผ slice header๋กœ ์˜ฎ๊ฒจ, error correct ์ฝ”๋”ฉ ๋ฐฉ์‹์œผ๋กœ ๋ชจ์…˜ ๋ฒกํ„ฐ ์ •๋ณด์— ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ํ™•์‚ฐ๋  ํ™•๋ฅ ์„ ์ค„์˜€๋‹ค. ๋‘ ๋ฒˆ์งธ, ํ•˜๋‚˜์˜ slice์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ์— ํ•ด๋‹น slice ์ „์ฒด๊ฐ€ ์•„๋‹Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ์ผ๋ถ€๋ถ„๋งŒ์„ ๋ฒ„๋ฆฌ๊ธฐ ์œ„ํ•˜์—ฌ ๊ฐ slice๋ฅผ k๊ฐœ์˜ sub-slice๋กœ ๋ถ„ํ• ํ•œ ํ›„, ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๋ถ€๋ถ„์€ ๊ตญํ•œํ•˜๊ณ  ์˜ค๋ฅ˜๊ฐ€ ์—†๋Š” ๋ถ€๋ถ„์€ ๋ณต์›ํ•˜๋„๋ก ํ•˜์˜€๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ, ํ•˜๋‚˜์˜ sub-slice ์•ˆ์—์„œ CTU ๋‹จ์œ„์˜ ์˜ค๋ฅ˜ ๊ฒ€์ถœ ๋ฐ ์€๋‹‰ ๊ณผ์ •์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ SAO bin๋ถ€ํ„ฐ terminating bin ์ „๊นŒ์ง€์˜ bin ์ˆ˜์— ๋Œ€ํ•œ modulo-k๋ฅผ ์ „์†กํ•˜๊ณ , ํ•ด๋‹น ๊ฐ’์„ ํ™•์ธํ•˜์—ฌ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์ถœํ•˜๋„๋ก ํ•˜์˜€๋‹ค. ์‹คํ—˜์€ HEVC test sequence ClassB (BasketballDrive, BQTerrace, Cactus, Kimono, ParkScene)์— ๋Œ€ํ•˜์—ฌ ์••์ถ•๋ฅ  10:1๊ณผ 100:1 (QP 17, 37), Low delay-B ํ™˜๊ฒฝ์—์„œ ์ˆ˜ํ–‰ํ•˜์˜€์œผ๋ฉฐ, HM-SCM ์ฝ”๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜์˜€๋‹ค. ์ด ๋•Œ, ํ™”๋ฉด์—์„œ CTU ํ•œ ์ค„์„ ํ•˜๋‚˜์˜ slice๋กœ ๊ฐ€์ •ํ•˜์˜€์œผ๋ฉฐ, sub-slice ๋ถ„ํ•  ๋ฐฉ์‹๊ณผ modulo์˜ ์ „์†ก์€ ๋ชจ์…˜ ๋ฒกํ„ฐ protection์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. ์‹คํ—˜ ๊ฒฐ๊ณผ, ์••์ถ•๋ฅ  10:1, 64x64 CTU๋ฅผ ๊ธฐ์ค€์œผ๋กœ slice ๋‹น ์˜ค๋ฅ˜๊ฐ€ ์•ฝ 0.0023๊ฐœ๋ณด๋‹ค ์ ๋‹ค๋ฉด ๋ชจ์…˜ ๋ฒกํ„ฐ ์ •๋ณด๋ฅผ protectํ•˜์ง€ ์•Š๊ณ  ์˜ค๋ฅ˜ ์€๋‹‰๋„ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์˜ ํ™”์งˆ์ด ๊ฐ€์žฅ ์ข‹์•˜๊ณ , 0.0023๊ฐœ์—์„œ 0.01๊ฐœ ์‚ฌ์ด๋กœ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” sub-slice ๋ถ„ํ•  ์—†์ด modulo-4ํ•˜์—ฌ ์ „์†กํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ํšจ๊ณผ์ ์ด์—ˆ๋‹ค. Slice ๋‹น ์˜ค๋ฅ˜๊ฐ€ ์•ฝ 0.02๊ฐœ์—์„œ 0.1๊ฐœ ์‚ฌ์ด๋กœ ๋ฐœ์ƒํ•˜์˜€์„ ๋•Œ๋Š” slice๋ฅผ 5๊ฐœ๋กœ ๋ถ„ํ• ํ•˜๋ฉฐ modulo-8์„ ํ•˜์—ฌ ์ „์†กํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์•˜์œผ๋ฉฐ, 0.2๊ฐœ๋ณด๋‹ค ๋งŽ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” slice๋ฅผ 5๊ฐœ๋กœ ๋ถ„ํ• ํ•˜๊ณ  modulo-16ํ•˜๋Š” ๋ฐฉ์‹์ด ํ™”์งˆ ๊ฐœ์„  ์ธก๋ฉด์—์„œ ๊ฐ€์žฅ ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ๋‹ค.์ œ 1 ์žฅ ์„œ ๋ก  1 1.1 ์—ฐ๊ตฌ์˜ ๋ฐฐ๊ฒฝ 1 1.2 ๊ด€๋ จ ์—ฐ๊ตฌ 2 1.2.1 ์˜ค๋ฅ˜ ๋ณต์› ์•Œ๊ณ ๋ฆฌ์ฆ˜ 2 1.2.2 ์˜ค๋ฅ˜ ์€๋‹‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜ 3 1.3 ๋…ผ๋ฌธ์˜ ๊ตฌ์„ฑ 5 ์ œ 2 ์žฅ Wireless Network 6 2.1 Wireless Network ์ฑ„๋„๊ณผ Fading ํ˜„์ƒ 6 2.2 Packet์˜ ๊ฐœ๋…๊ณผ Packet Loss 7 ์ œ 3 ์žฅ ๋ชจ์…˜ ๋ฒกํ„ฐ ์ •๋ณด์˜ Protection 10 3.1 Exponential-Golomb ์ฝ”๋”ฉ ๋ฐฉ์‹ 10 3.2 Parity bit์˜ ๊ฐœ๋… 11 3.3 ๊ตฌํ˜„ ๋ฐฉ์‹ 12 3.4 ๋ชจ์…˜ ๋ฒกํ„ฐ ์ •๋ณด๋ฅผ ์ด์šฉํ•œ ์˜ค๋ฅ˜ ์€๋‹‰ 13 ์ œ 4 ์žฅ ์˜ค๋ฅ˜ ๋ณต์› ์•Œ๊ณ ๋ฆฌ์ฆ˜ 15 4.1 Sub-slice ๋ถ„ํ•  15 4.1.1 Error Localization 15 4.1.2 Sync marker ๊ตฌํ˜„ 16 4.1.3 Emulation Prevention bit ๊ตฌํ˜„ 18 4.2 CTU ๋‹จ์œ„ ์˜ค๋ฅ˜ ์€๋‹‰ ๋ฐ ๋ณต์› 19 4.2.1 CTU ๋‚ด bin ์ˆ˜ ๋น„๊ต๋ฅผ ํ†ตํ•œ ์˜ค๋ฅ˜ ๊ฒ€์ถœ 19 4.2.2 CTU ๋‹จ์œ„ ์˜ค๋ฅ˜ ์€๋‹‰ 20 ์ œ 5 ์žฅ ์‹คํ—˜ ๊ฒฐ๊ณผ 22 ์ œ 6 ์žฅ ๊ฒฐ ๋ก  42Maste
    corecore