diapositives/qjpegrest.html
author viric@mandarina
Mon, 15 Dec 2008 23:12:54 +0000
changeset 255 ba96eda920ee
parent 253 e3aa70211aee
child 256 eeac3ed09b9f
permissions -rw-r--r--
Diapositives refinades.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ca" lang="ca-ES">
<head>
<meta name="generator" content=
"HTML Tidy for Linux/x86 (vers 1st November 2003), see www.w3.org" />
<title>Restauració d'imatges JPEG</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="copyright" content=
"Copyright &#169; 2008 Lluís Batlle i Rossell" />
<meta name="font-size-adjustment" content="+2" />
<link rel="stylesheet" href="Slidy/slidy.css" type="text/css"
media="screen, projection, print" />
<link rel="stylesheet" href="Slidy/w3c-blue.css" type="text/css"
media="screen, projection, print" />
<script src="Slidy/slidy.js" type="text/javascript">
</script>
</head>
<body>
<!--
<div class="background"><img alt="" id="head-icon"
src="icon-blue.png" /><object id="head-logo"
data="w3c-logo-blue.svg" type="image/svg+xml"
title="W3C logo"><a href="http://www.w3.org/"><img
alt="W3C logo" id="head-logo-fallback"
src="w3c-logo-blue.gif" /></a></object></div>-->

<!-- <div class="background slanty">
<img src="w3c-logo-slanted.jpg" alt="slanted W3C logo" />
</div>-->
<div class="slide cover title">
  <!-- hidden style graphics to ensure they are saved with other content -->
  <img class="hidden" src="Slidy/bullet.png" alt="" />
  <img class="hidden" src="Slidy/fold.gif" alt="" />
  <img class="hidden" src="Slidy/unfold.gif" alt="" />
  <img class="hidden" src="Slidy/fold-dim.gif" alt="" />
  <img class="hidden" src="Slidy/nofold-dim.gif" alt="" />
  <img class="hidden" src="Slidy/unfold-dim.gif" alt="" />
  <img class="hidden" src="Slidy/bullet-fold.gif" alt="" />
  <img class="hidden" src="Slidy/bullet-unfold.gif" alt="" />
  <img class="hidden" src="Slidy/bullet-fold-dim.gif" alt="" />
  <img class="hidden" src="Slidy/bullet-nofold-dim.gif" alt="" />
  <img class="hidden" src="Slidy/bullet-unfold-dim.gif" alt="" />

<!--<img src="keys.jpg" alt=
"Cover page images (keys)" class="cover" /><br clear="all" /> -->
<br/><br/><br/><br/><br/>
<h1>Restauració d'imatges JPEG</h1>

<p>Autor: <a href="http://vicerveza.homeunix.net/">Lluís Batlle i Rossell</a>,
&lt;<a href="mailto:viric@vicerveza.homeunix.net">viric@vicerveza.homeunix.net</a>&gt;<br />
<p>Director: <a href="http://www-ma4.upc.edu/~aroca/">Josep Maria Aroca i Farrerons</a>,
&lt;<a href="mailto:viric@vicerveza.homeunix.net">aroca@ma4.upc.edu</a>&gt;<br />
</div>

<div class="slide">
<h1>Estructura</h1>
<ul>
<li>Motius
<li>Pèrdues als JPEG
<li>Tècniques de recuperació
<li>Implementació
<li>Demostració
<li>Conclusions
</ul>
</div>

<div class="slide">
<h1>Motius</h1>
<ul>
<li>Popularitat del JPEG
<ul>
<li>Pràcticament amb implementacions des de 1992
<li>Internet
<li>Càmeres digitals
</ul>
<li>Moltes tècniques proposades
<li>Falta de descodificadors alternatius
<li>Falta de programari lliure relacionat
</ul>
</div>

<div class="slide">
<h1>Codificació JPEG</h1>
<ul>
<li>Canvi de plans de color
<li>Delmat dels plans de color
<li>Transformada DCT a cada pla
<li>Quantització dels coeficients de la DCT
<li>Compressió sense pèrdues d'aquests coeficients quantitzats
</ul>
</div>

<div class="slide">
<h1>Canvi dels plans de color</h1>
<h2>RGB a YCbCr</h2>
<p><img height=200 src="flors-r.png"/> <img height=200 src="flors-g.png"> <img height=200 src="flors-b.png"> <img height=200 src="flors.png"/></p>
<p><img height=200 src="flors-y.png"/> <img height=200 src="flors-cb.png"> <img height=200 src="flors-cr.png"></p>
</div>

<div class="slide">
<h1>Delmat dels plans de color</h1>
<h2>2x2:1x1:1x1 (blavor)</h2>
<p><img height=380 src="flors-cb.png"/><img height=200 src="flors-cb-211.png"/><img height=380 src="flors-cb-211-rescaled.png"/></p>
</div>

<div class="slide">
<h1>Transformada DCT per pla [1]</h1>
<ul>
<li>Divisió en blocs de 8x8 independents
<li>Enmirallat als blocs incomplets
<li>Transformació DCT per bloc
</ul>
<p><img height=380 src="Dctjpeg-wikipedia.png"/> <img height=380 src="base8x8-2-8x8.png"/></p>
</div>

<div class="slide">
<h1>Transformada DCT per pla [2]</h1>
<h2>Exemple de bloc transformat</h2>
<font size="-2">
<table>
<tr>
<td>
<table border=1>
<tr>
<td>127
<td>127
<td>127
<td>127
<td>127
<td>127
<td>127
<td>0
<tr>
<td>127
<td>127
<td>127
<td>0
<td>0
<td>127
<td>0
<td>127
<tr>
<td>127
<td>127
<td>0
<td>127
<td>127
<td>0
<td>127
<td>127
<tr>
<td>127
<td>0
<td>127
<td>0
<td>127
<td>127
<td>0
<td>127
<tr>
<td>191
<td>0
<td>191
<td>191
<td>0
<td>191
<td>0
<td>191
<tr>
<td>191
<td>191
<td>0
<td>191
<td>191
<td>0
<td>191
<td>191
<tr>
<td>191
<td>0
<td>191
<td>0
<td>0
<td>191
<td>191
<td>191
<tr>
<td>0
<td>191
<td>191
<td>191
<td>191
<td>191
<td>191
<td>191
</table>
<td>
<table border=1>
<tr>
<td>914.25
<td>-18.30
<td>82.36
<td>-13.49
<td>39.75
<td>14.22
<td>94.96
<td>-7.02
<tr>
<td>-173.46
<td>128.41
<td>-12.29
<td>60.55
<td>5.73
<td>-34.41
<td>-7.00
<td>-6.30
<tr>
<td>82.36
<td>-22.47
<td>-58.21
<td>-2.88
<td>-168.41
<td>-14.50
<td>-84.32
<td>15.02
<tr>
<td>43.19
<td>60.55
<td>30.28
<td>33.45
<td>35.68
<td>88.66
<td>1.19
<td>-21.81
<tr>
<td>39.75
<td>0.52
<td>-168.41
<td>-17.90
<td>-39.75
<td>-7.97
<td>112.78
<td>-19.59
<tr>
<td>-48.80
<td>-34.41
<td>26.71
<td>88.66
<td>-18.63
<td>46.05
<td>6.01
<td>116.77
<tr>
<td>94.96
<td>5.09
<td>-84.32
<td>-4.57
<td>112.78
<td>-22.99
<td>-339.29
<td>-3.40
<tr>
<td>15.02
<td>-6.30
<td>8.21
<td>-21.81
<td>-11.80
<td>116.77
<td>75.79
<td>-48.91
</table>
</table>
</font>


</div>

<div class="slide">
<h1>Quantització dels coeficients</h1>
<ul>
<li>Divisió i arrodoniment
</ul>
<h2>Exemple de bloc quantitzat (q=40)</h2>
<font size="-1">
<table>
<tr>
<td>
<table border=1>
<tr>
<td>914.25
<td>-18.30
<td>82.36
<td>-13.49
<td>39.75
<td>14.22
<td>94.96
<td>-7.02
<tr>
<td>-173.46
<td>128.41
<td>-12.29
<td>60.55
<td>5.73
<td>-34.41
<td>-7.00
<td>-6.30
<tr>
<td>82.36
<td>-22.47
<td>-58.21
<td>-2.88
<td>-168.41
<td>-14.50
<td>-84.32
<td>15.02
<tr>
<td>43.19
<td>60.55
<td>30.28
<td>33.45
<td>35.68
<td>88.66
<td>1.19
<td>-21.81
<tr>
<td>39.75
<td>0.52
<td>-168.41
<td>-17.90
<td>-39.75
<td>-7.97
<td>112.78
<td>-19.59
<tr>
<td>-48.80
<td>-34.41
<td>26.71
<td>88.66
<td>-18.63
<td>46.05
<td>6.01
<td>116.77
<tr>
<td>94.96
<td>5.09
<td>-84.32
<td>-4.57
<td>112.78
<td>-22.99
<td>-339.29
<td>-3.40
<tr>
<td>15.02
<td>-6.30
<td>8.21
<td>-21.81
<td>-11.80
<td>116.77
<td>75.79
<td>-48.91
</table>
<td>
<table border=1>
<tr>
<td>20
<td>14
<td>13
<td>20
<td>30
<td>50
<td>64
<td>76
<tr>
<td>15
<td>15
<td>18
<td>24
<td>33
<td>73
<td>75
<td>69
<tr>
<td>18
<td>16
<td>20
<td>30
<td>50
<td>71
<td>86
<td>70
<tr>
<td>18
<td>21
<td>28
<td>36
<td>64
<td>109
<td>100
<td>78
<tr>
<td>23
<td>28
<td>46
<td>70
<td>85
<td>136
<td>129
<td>96
<tr>
<td>30
<td>44
<td>69
<td>80
<td>101
<td>130
<td>141
<td>115
<tr>
<td>61
<td>80
<td>98
<td>109
<td>129
<td>151
<td>150
<td>126
<tr>
<td>90
<td>115
<td>119
<td>123
<td>140
<td>125
<td>129
<td>124
</table>
<td>
<table border=1>
<tr>
<td>46
<td>-1
<td>6
<td>-1
<td>1
<td>0
<td>1
<td>0
<tr>
<td>-12
<td>9
<td>-1
<td>3
<td>0
<td>0
<td>0
<td>0
<tr>
<td>5
<td>-1
<td>-3
<td>0
<td>-3
<td>0
<td>-1
<td>0
<tr>
<td>2
<td>3
<td>1
<td>1
<td>1
<td>1
<td>0
<td>0
<tr>
<td>2
<td>0
<td>-4
<td>0
<td>0
<td>0
<td>1
<td>0
<tr>
<td>-2
<td>-1
<td>0
<td>1
<td>0
<td>0
<td>0
<td>1
<tr>
<td>2
<td>0
<td>-1
<td>0
<td>1
<td>0
<td>-2
<td>0
<tr>
<td>0
<td>0
<td>0
<td>0
<td>0
<td>1
<td>1
<td>0
</table>
</table>
</font>
</div>

<div class="slide">
<h1>Descodificació JPEG</h1>
<ul>
<li>Descodificació dels coeficients quantitzats (sense pèrdues)
<li>Estimació dels coeficients no quantitzats
<li>Transformada IDCT a cada pla
<li>Interpolació dels plans de color
<li>Canvi de plans de color (YCbCr &rarr; RGB)
</ul>
</div>

<div class="slide">
<h1>Descodificació convencional [1]</h1>
<table>
<tr>
<td>
<ul>
<li>Punt mig de l'interval de quantització
<li>Independència entre blocs
<li>Independència entre plans
<li>Independència del tipus d'imatges
<li>Simplicitat
<li>Velocitat
</ul>
<td><img src="intervals.png"/>
</table>
</div>

<div class="slide">
<h1>Descodificació convencional [2]</h1>
<table>
<tr>
<td>
<ul>
<li>Efecte de blocs
<li>Efecte d'escala
<li>Efecte d'ones
<li>Vessament de color
</ul>
<td>
<div style="position: relative;">
<img height=550 src="arbre-jpg-60.png"
    style="position:static"/>
<img class=incremental height=550 src="flors-vermelles-70.jpg"
    style="position:absolute; left: 0; top: 0"/>
</div>
</table>
</div>

<div class="slide">
<h1>Noves tècniques</h1>
<ul>
<li>Suavitzat entre blocs
<ul>
<li>Màxim a posteriori
<li>Projecció sobre conjunts convexos
<li>Segmentació
<li>Reaplicació de DCT/Quantització
</ul>
<li>Accentuació de cantonades
<li>Projecció sobre l'espai de quantització
<li>Influència de la intensitat de llum als plans de color
</ul>
</div>

<div class="slide">
<h1>Programari</h1>
<ul>
<li>Aplicació i combinació de tècniques
<li>Fàcil variació de les tècniques
<li>Comparació a ull nu dels resultats
<li>Quantificació de la qualitat
<li>Fidelitat al JPEG original
<li>Temps de càlcul irrellevant
</ul>
</div>

<div class="slide">
<h1>Cadena de descodificació</h1>
<p><img src="cadena.png"/></p>
</div>

<div class="slide">
<h1>Desquantització i IDCT</h1>
<table>
<tr>
<td>
<ul>
<li>Convencional: punt mig de l'interval
<li>Variable aleatòria exponencial
</ul>
<td><img src="cadena-idct.png"/>
</table>
</div>

<div class="slide">
<h1>Recuperació de plans</h1>
<table>
<tr>
<td>
<ul>
<li>Nosratinia
<li>HP
<li>Froment
<li>O'Rourke
<li>Robertson
<li>Trianta
<li>HContrast
<li>Projecció a l'espai de quantització
<li>LoadPlane / SavePlane
</ul>
<td><img src="cadena-plans.png"/>
</table>
</div>

<div class="slide">
<h1>Escaladors / Plans de color</h1>
<table width="80%">
<tr>
<td>
<ul>
<ul>
<li>IntScaler
<li>FancyScaler
<li>LumScaler
<li>YCC2RGB
</ul>
<td><img src="cadena-final.png"/>
</table>
</div>

<div class="slide">
<h1>Demostració</h1>
</div>

<div class="slide">
<h1>Conclusions</h1>
<ul>
<li>És possible obtenir millors descodificacions dels JPEG
<li>Tècniques a l'abast del públic no acadèmic
<li>Hem introduït noves tècniques, i n'hem permès la combinació
<li>Hem recopilat l'estat de l'art de la descodificació
<li>Permetem la continuitat amb llicències de codi lliure tant al
programari com a la memòria
</ul>
</div>

<div class="slide">
<h1>Treball futur</h1>
<ul>
<li>Fer l'aplicació més còmoda
<li>Escriure'n un manual d'ús
<li>Continuar atents a les noves tècniques desenvolupades
<li>Integrar les implementacions dels algorismes a altres programes
</ul>
</div>

<div class="slide">
<h1>Reconeixement</h1>

<p>Han contribuït a la realització del projecte:</p>

<ul>
<li>Jacques Froment, Université de Bretagne Sud - LMAM</li>
<li>Nikhil Hegde, University of Texas, Multimedia Communications Laboratory</li>
</ul>

<p>Han contribuït especialment a provar el programari i a jutjar imatges:</p>

<ul>
<li>Olga Txernixova</li>
<li>Ferriol Macip</li>
<li>Maixa Teriòkhina</li>
</ul>

<p>Revisió de la realització del projecte:</p>
<ul>
<li>Josep Maria Aroca, UPC, Director</li>
</ul>

</div>
</body>
</html>