Loading
2022. 11. 2. 22:56 - lazykuna

Webp(VP8 ์ฝ”๋ฑ)์ด ์ด๋ฏธ์ง€๋ฅผ ์••์ถ•ํ•˜๋Š” ๋ฐฉ์‹

๐Ÿšจ ํ•ด๋‹น ๋ถ„์•ผ์— ๋Œ€ํ•ด ์•„๋Š” ๋‚ด์šฉ์ด ๊ฑฐ์˜ ์—†์œผ๋ฏ€๋กœ ๊ฒ€์ฆ๋˜์ง€ ์•Š์€ ๋‚ด์šฉ ๋ฐ ์ž˜๋ชป๋œ ๋‚ด์šฉ์ด ์กด์žฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”ผ๋“œ๋ฐฑ ๋‚จ๊ฒจ์ฃผ์‹œ๋ฉด ๊ฐœ์„ ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ตœ๊ทผ Webp ์ฝ”๋ฑ์˜ ์ž…์ง€๊ฐ€ ๋น ๋ฅด๊ฒŒ ๋Š˜์–ด๋‚˜๊ณ  ์žˆ๋Š”๋ฐ, jpg์˜ ์†์‹ค์••์ถ•๋„, Png์˜ ๋ฌด์†์‹ค์••์ถ•๋„, gif์˜ ์›€์งค๊ธฐ๋Šฅ๋„ ๋ชจ๋‘ ์ง€์›ํ•˜๋Š” โ€œ๋งŒ๋Šฅ ํฌ๋ฉงโ€์ž…๋‹ˆ๋‹ค. ๊ณผ์—ฐ ์–ด๋–ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๊ธธ๋ž˜ ์ด๋ ‡๊ฒŒ ๋‹ค๋ฐฉ๋ฉด์œผ๋กœ ์“ฐ์ผ ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ–ˆ๋Š”๋ฐ, ์˜ค๋Š˜ ์ด ์ฐธ์— ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค.

1. ์ŠคํŽ™

์œ„์—์„œ ์–ธ๊ธ‰ํ•œ ๋ฐ”์™€ ๊ฐ™์ด

  • ์†์‹ค์••์ถ•
  • ๋ฌด์†์‹ค์••์ถ•
  • ๋™์˜์ƒ ๊ธฐ๋Šฅ (์†Œ๋ฆฌ ์—†๋Š”)
  • ์•ŒํŒŒ์ฑ„๋„

์„ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ฑฐ์˜ ๋ฌด์•ˆ๋‹จ๋ฌผ๊ธ‰์ด๋ผ๋Š” ๋ง์ด์ฃ ..

ํ•˜์ง€๋งŒ ๋ฌด์†์‹ค๊ณผ ์†์‹ค ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋‹ค๋ฅด๊ณ , ๋™์˜์ƒ์€ ๋˜ ์›€์งค๊ณผ๋Š” ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๊ฐ๊ธฐ๊ฐ€ ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜๋‹ค ๋ณด๋‹ˆ, ์ด ํฌ๋ฉง์€ ๊ฝค ๋ณต์žกํ•  ์ˆ˜๋ฐ–์— ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ณต์žกํ•œ ๊ณผ์ •์ด ์–ด๋–ป๊ฒŒ ์ง„ํ–‰๋˜๋Š”์ง€ ๊ถ๊ธˆํ•ด์„œ ๊ฒ‰ํ•ฅ๊ธฐ๋กœ ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค.

2. ๋ฌด์†์‹ค ์••์ถ•

๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฌด์†์‹ค ์••์ถ•์€ ์ผ๋ฐ˜์ ์ธ Deflate ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ์—ฌ๊ธฐ์— ์ถ”๊ฐ€์ ์œผ๋กœ ์—ฌ๋Ÿฌ โ€œ์ธ์ฝ”๋”ฉโ€ ๋ฐฉ๋ฒ•๋“ค์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•ด์„œ๋Š” ํฌ๊ฒŒ ์•„๋ž˜์˜ 4๊ฐ€์ง€ ์ธ์ฝ”๋”ฉ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

enum TransformType {
  PREDICTOR_TRANSFORM             = 0,
  COLOR_TRANSFORM                 = 1,
  SUBTRACT_GREEN                  = 2,
  COLOR_INDEXING_TRANSFORM        = 3,
};

๊ตฌ์ฒด์ ์ธ ์„ค๋ช…์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์˜ˆ์ธก์ž ๋ณ€ํ™˜ (predictor transform)

์ด๊ฑด ๋™์˜์ƒ์—์„œ ์“ฐ๋Š” ๋ฐฉ์‹์ด๊ธด ํ•œ๋ฐ, ์ •์ง€ํ™”์ƒ์—๋„ ์‚ฌ์šฉํ•˜๋Š” ๊ฑด ๊ต‰์žฅํžˆ ์ฐธ์‹ ํ•œ ์•„์ด๋””์–ด ๊ฐ™๋„ค์š”. ์ธ์ ‘ํ•œ ๊ณต๊ฐ„์ด ์œ ์‚ฌํ•œ ๊ฒฝ์šฐ(์—”ํŠธ๋กœํ”ผ ๊ณ„์‚ฐํ•˜์—ฌ), ์ž”์—ฌ ๊ฐ’(์‹ค์ œ - ์˜ˆ์ธก)๋งŒ ์ธ์ฝ”๋”ฉํ•˜์—ฌ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋™์ผํ•œ ํŒจํ„ด์ด ์—ฌ๋Ÿฌ๋ฒˆ ๋ฐ˜๋ณต๋˜๋Š” ์ด๋ฏธ์ง€๋Š” ํฌ๊ฒŒ ์••์ถ•๋ฅ ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด, ์œ„ ์‚ฌ์ง„์—์„œ ์™ผ์ชฝ ์—ด์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒˆ๋กœ์šด ์นธ์„ ์ฑ„์šฐ๋Š” ๊ฒƒ์ด ์ œ์ผ ์‹ค์ œ ์ด๋ฏธ์ง€์™€ ์œ ์‚ฌํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๊ณ„์‚ฐํ•ด๋‚ด์–ด, Vertical-Left ๋ผ๋Š” ์˜ˆ์ธก์ž๋งŒ์œผ๋กœ ์—ฌ๋Ÿฌ ํ”ฝ์…€์„ ํ•œ๋ฒˆ์— ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ ์ด๋Š” ์†์‹ค ์••์ถ•์—๋„ ์‚ฌ์šฉ๋˜๋Š” ๋งค์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. (๋‹ค๋งŒ ์†์‹ค ์••์ถ•์€ ์†์‹ค์„ ๋™๋ฐ˜ํ•œ ๋ณด๋‹ค ๋‹จ์ˆœํ•œ ์ธ์ฝ”๋”ฉ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค)

์ƒ‰์ƒ ๋ณ€ํ™˜ (color transform)

RGB ๊ฐ ๊ฐ’์— ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ๋ถ€์—ฌํ•˜๋Š” ์••์ถ•๋ฐฉ์‹์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒŒ ์–ด๋–ค ๊ฒฝ์šฐ์— ํšจ๊ณผ๊ฐ€ ์žˆ๋Š”์ง€๋Š” ์†”์งํžˆ ์ž˜ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ, ํŠน์ˆ˜ํ•œ ์ผ๋ถ€ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด์„œ๋Š” ํšจ๊ณผ๊ฐ€ ๊ฝค ์ข‹์„ ๊ฒƒ ๊ฐ™๋„ค์š”.

์ดˆ๋ก์ƒ‰ ๋ณ€ํ™˜ (subtract green)

์ดˆ๋ก์ƒ‰ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ๋‹ค๋ฅธ ์ƒ‰์ƒ ๊ฐ’์„ ์žฌ์ƒ์„ฑํ•˜๋Š” ์ธ์ฝ”๋”ฉ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

void AddGreenToBlueAndRed(uint8 green, uint8 *red, uint8 *blue) {
  *red  = (*red  + green) & 0xff;
  *blue = (*blue + green) & 0xff;
}

์†”์งํžˆ ์–ด๋–ค ๊ฒฝ์šฐ์— ์œ ์šฉํ•œ์ง€๋Š” ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ƒ‰์ƒ ๋ณ€ํ™˜๋ณด๋‹ค๋„ ๋” ํฌ์†Œํ•œ ์ผ€์ด์Šค์ผ๋“ฏ?

์ƒ‰์ƒ ์บ์‹œ (indexing transform)

gif์™€ ์œ ์‚ฌํ•œ ๋ฐฉ์‹์ด์ง€๋งŒ, global ํ•œ ํŒ”๋ ˆํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ local/window ๋‹จ์œ„๋กœ ํŒ”๋ ˆํŠธ๊ฐ€ ์ ์šฉ๋˜์–ด ํ›จ์”ฌ ํšจ์œจ์ ์œผ๋กœ ์ด๋ฏธ์ง€๋ฅผ ์ธ์ฝ”๋”ฉ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. gif์˜ ์žฅ์ ์„ ์ž˜ ์ฐจ์šฉํ•ด ์˜จ ํ˜•ํƒœ๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

PNG์™€ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ๊ฐ€?

PNG๋Š” ๋‹จ์ˆœ Deflate ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€๋ฅผ ์••์ถ•ํ•˜๋Š” ๋ฌด์†์‹ค ์••์ถ•์œผ๋กœ ์•Œ๋ ค์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠน์ • ์œˆ๋„์šฐ์— ๋Œ€ํ•ด LZ77 ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์••์ถ•ํ•˜์—ฌ ์ƒ‰์ƒ ํŒ”๋ ˆํŠธ ํ˜•์„ฑ ํ›„ ํ—ˆํ”„๋งŒ์ฝ”๋“œ๋กœ ์••์ถ•ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. (ํ—ˆํ”„๋งŒ์ฝ”๋“œ๋กœ ์••์ถ•ํ•˜๋Š” ๊ตฌ์ฒด์ ์ธ ์˜ˆ๋Š” jpeg ํŽธ ์ฐธ๊ณ )

์ด๋Ÿฌํ•œ ํ…Œํฌ๋‹‰๋“ค๋กœ ๋ฌด์†์‹ค ์••์ถ•์ธ๋ฐ๋„ png ๋Œ€๋น„ ํฌ๊ธฐ๊ฐ€ 60% ~ 70%์— ๋ถˆ๊ณผํ•˜๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

3. ์†์‹ค ์••์ถ• = VP8 ์ฝ”๋ฑ

VP8 ์ฝ”๋ฑ์€ ๋™์˜์ƒ ์ฝ”๋ฑ ์ค‘ ํ•˜๋‚˜์ธ๋ฐ, Webp๋Š” ์†์‹ค ์••์ถ•์„ ํ•  ๋•Œ ์ด VP8 ํ‚คํ”„๋ ˆ์ž„ ์ธ์ฝ”๋”ฉ์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋™์˜์ƒ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์˜์ƒ ์••์ถ• ํ…Œํฌ๋‹‰์„ ์ •์ง€ํ™”์ƒ์— ์‚ฌ์šฉํ•˜์ง€ ๋ชป ํ•  ์ด์œ ๋Š” ์—†์ž–์•„์š”?

์›€์งค๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ์›€์งค์€ ๋ณดํ†ต ํ‚คํ”„๋ ˆ์ž„๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ํฌ๋ฉง์ž…๋‹ˆ๋‹ค. ๋ณด๊ฐ„(Prediction)์ด ๋“ค์–ด๊ฐ„ ๊ฒฝ์šฐ ์ผ๋ถ€ ์žฅ์น˜์—์„œ ์ธ์‹์„ ๋ชป ํ•œ๋‹ค๊ณ  ํ•˜๊ธฐ๋„ ํ•˜๊ณ , ๋ฆฌ์†Œ์Šค ์†Œ๋ชจ๊ฐ€ ์‹ฌํ•˜๊ธฐ๋„ ํ•˜์—ฌ ํ†ต์ƒ์ ์œผ๋กœ๋Š” ์ž˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๊ด€๋ก€์ž…๋‹ˆ๋‹ค. ์‚ฌ์‹ค์ƒ ๋ณด๊ฐ„ ํ”„๋ ˆ์ž„๊นŒ์ง€ ์‚ฌ์šฉํ•˜๋ฉด ๊ทธ๊ฑด โ€œ์›€์งคโ€ ๋ณด๋‹ค๋Š” โ€œ๋™์˜์ƒโ€์— ๋” ๊ฐ€๊น์ง€ ์•Š๋‚˜ ์‹ถ๊ธฐ๋„ ํ•˜๋„ค์š”.

ํ‚คํ”„๋ ˆ์ž„ ์ธ์ฝ”๋”ฉ

์œ„์˜ ์ •์ง€ ํ™”์ƒ ์ธ์ฝ”๋”ฉ๊ณผ ๋”๋ถˆ์–ด์„œ ๋ช‡ ๊ฐ€์ง€ ์ถ”๊ฐ€์ ์ธ ํ…Œํฌ๋‹‰์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

์ ์‘ํ˜• ๋ธ”๋ก ์–‘์žํ™”

jpeg์˜ ์–‘์žํ™”์™€ ๋น„์Šทํ•œ ํ…Œํฌ๋‹‰์ด์ง€๋งŒ, ์ฃผ๋ชฉํ•  ๋งŒํ•œ ํ‚ค์›Œ๋“œ๋Š” ๋ฐ”๋กœ โ€œ์ ์‘ํ˜•โ€์ด๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์œ ์‚ฌํ•œ ํŠน์ง•์„ ๊ฐ€์ง„ ์˜์—ญ์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ, ๊ฐ ์˜์—ญ์— ์ตœ์ ํ™”๋œ ํ˜•ํƒœ๋กœ ์–‘์žํ™”์‹œ์ผœ ์ €์žฅํ•จ์œผ๋กœ์„œ ์†์‹ค์„ ์ตœ์†Œํ™”ํ•˜๋ฉฐ ์ €์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

DCT, WHT ๊ธฐ์ˆ ์„ ํ†ตํ•ด ์†์‹ค์„ ์ตœ์†Œํ™”ํ•˜๋Š” ํ˜•ํƒœ๋กœ ์ €์žฅ์„ ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด 16x16 ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ์˜ 2-D ๋ฐ์ดํ„ฐ๋กœ ์ธ์ฝ”๋”ฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค ๐Ÿ˜ฒ. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ•ด๋‹น ๋…ผ๋ฌธ์„ ์ฐธ๊ณ  ๋ฐ”๋ž๋‹ˆ๋‹ค.

์žฌ๋ฏธ์žˆ๋Š” ์ ์€ jpeg์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ์—ฌ๊ธฐ์„œ๋„ luma / chroma ์˜ ํ•ด์ƒ๋„๊ฐ€ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. 16x16 ์˜ macroblock์— ๋Œ€ํ•ด์„œ, luma๋Š” 16x16๋กœ ์••์ถ•์„ ํ•˜๊ณ  chroma๋Š” 8x8 ๋ธ”๋ก์œผ๋กœ ์••์ถ•์„ ํ•ฉ๋‹ˆ๋‹ค.

Prediction

Prediction์ด๋ž€, ์ด๋ฏธ์ง€์˜ ์ผ๋ถ€๋ถ„์„ ์žฌ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ(์‹œ๊ฐ„ ๋ฐ ๊ณต๊ฐ„) ์˜์—ญ์„ ํšจ์œจ์ ์œผ๋กœ ํ‘œ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ํ‚คํ”„๋ ˆ์ž„๊ฐ„์˜ ๋ณด๊ฐ„(์˜ˆ์ธก)์„ ์œ„ํ•ด์„œ๋Š” โ€œTM_PREDโ€๋ผ๋Š” ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ณ , ์ด๋ฏธ์ง€ ๋‚ด๋ถ€์—์„œ์˜ ์˜ˆ์ธก์„ ์œ„ํ•ด์„œ๋Š” โ€œSPLITMVโ€๋ผ๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ ˆํผ๋Ÿฐ์Šค ํ”„๋ ˆ์ž„๋“ค์„ ์ด์šฉํ•˜์—ฌ ๋ณด๊ฐ„ ํ”„๋ ˆ์ž„๋“ค์„ ๋งŒ๋“ค๊ฒŒ ๋˜์ฃ .

๋ณด๋‹ค ๊ตฌ์ฒด์ ์œผ๋กœ๋Š” ๋ณด๊ฐ„์„ ์œ„ํ•ด์„œ๋Š” โ€œ๊ธฐ์ค€ ํ”„๋ ˆ์ž„(Reference Frame)โ€ ์ด๋ผ๋Š” ๊ฐœ๋…์ด ํ•„์š”ํ•œ๋ฐ, ์‹ค์ œ ํ‘œ์‹œ๊ฐ€ ๋˜๊ณ  ํ•ต์‹ฌ์ด ๋˜๋Š” ํ”„๋ ˆ์ž„์„ โ€œGolden Reference Frameโ€ ์ด๋ผ๊ณ  ์ผ์ปซ๊ณ , ์˜ค๋กœ์ง€ ๋””์ฝ”๋”ฉ ๋ชฉ์ ์œผ๋กœ๋งŒ ์“ฐ์ด๋Š” โ€œAlternative Reference frameโ€ ์ด๋ผ๋Š” ๊ฐœ๋… ๋˜ํ•œ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฏธ์ง€๊ฐ„ ๋ณด๊ฐ„(Inter)์‹œ์—๋Š” ๊ฐ ํ”ฝ์…€๋ณ„๋กœ bicubic interpolation์„ ์‚ฌ์šฉํ•˜๊ณ , ์ด๋ฅผ ๊ทผ์ฒ˜ ์—ฌ๋Ÿฌ ํ”ฝ์…€๋“ค์—๊ฒŒ ์žฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ธ์ฝ”๋”ฉํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ณ€ํ™”๋Ÿ‰์„ ๊ธฐ๋กํ•˜๋Š” ๋Œ€์‹  ์ธํ„ฐํด๋ ˆ์ด์…˜์„ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒŒ ๊ฝค ์ฐธ์‹ ํ•˜๋„ค์š”.

์ด๋ฏธ์ง€ ์ž์ฒด๋ฅผ ๊ตฌ์„ฑ(Intra)ํ•  ๋•Œ๋Š” ํฌ๊ฒŒ 4๊ฐ€์ง€ ์ „๋žต์ด ์‚ฌ์šฉ๋œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.(H, V, DC, TM). ์—ฌ๊ธฐ์„œ TM_PRED ๊ฐ€ ํŠน์ดํ•œ๋ฐ, ๋Œ€๊ฐ์„  ๋ฐฉํ–ฅ์˜ ํ”ฝ์…€์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณด๊ฐ„์„ ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

  • ๋‹ค๋งŒ ๊ถ๊ธˆํ•œ ์ ์€, intra prediction์œผ๋กœ ์ธ์ฝ”๋”ฉ ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํ™ฉ์„ ์–ด๋–ป๊ฒŒ ํŒ๋…ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋Š” ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ํŠน์ • window size๋กœ ์ผ์ผ์ด cosine similarity ๊ฐ™์€ ๊ฒƒ์„ ์ด์šฉํ•˜์—ฌ ํŠน์ • ์กฐ๊ฑด์„ ๋งŒ์กฑํ•  ๊ฒฝ์šฐ ์ˆ˜ํ–‰๋˜๋Š” ๊ฑธ๊นŒโ€ฆ
  • ๊ทธ๋ฆฌ๊ณ  Reference Frame์„ ์–ด๋–ป๊ฒŒ ํŒ๋…ํ•˜๋Š” ๊ฒƒ์ธ์ง€์— ๋Œ€ํ•œ ์„ค๋ช…๋„ ์ž˜ ์•ˆ ๋‚˜์™€์žˆ๋„ค์š” ๐Ÿค” ์ด ๋ถ€๋ถ„๋„ ์•„๋งˆ ๋‹ค๋ฅธ ์ฝ”๋ฑ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์—”ํŠธ๋กœํ”ผ ์‚ฌ์šฉํ•ด์„œ ํ•˜์ง€ ์•Š์„๊นŒ ์ง€๋ ˆ ์ง์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์ด์™ธ์—๋„ โ€ฆ

Flexible reference frame, ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๋ฅผ ์—ผ๋‘์— ๋‘” ๋ฐ์ดํ„ฐ ํŒŒํ‹ฐ์…”๋‹ ๋“ฑ์œผ๋กœ ์„ฑ๋Šฅ ์ตœ์ ํ™”๋ฅผ ์‹œ์ผฐ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ํ…Œํฌ๋‹‰์€ ๋…ผ๋ฌธ ์ฐธ๊ณ 

์ฐธ์กฐ