\chapter{Evaluación}

Durante el proyecto se ha desarrollado un PVC (codec de vídeo
progresivo), que hemos utilizado para transmitir vídeo por
Internet. Este algoritmo nos permite comprimir y reproducir vídeo con
distintas formas de escalabilidad, aunque nuestra implementación sólo
usa la SNR.
 
Se han realizado pruebas para comprobar la calidad de la imagen en la
descodificación a diferentes niveles de compresión. Estas pruebas se
compararon con el estándar en compresión de vídeo MPEG.

Para dichas pruebas se han comprimido dos secuencias de vídeo con el
PVC y con MPEG-1. La primera secuencia, que la llamaremos ``Claire'',
es bastante estática, donde apenas existe movimiento. En la segunda
secuencia, que la llamaremos ``Charla'' contiene un mayor número de
objetos que se mueven a una velocidad moderada.

Las secuencias se comprimieron a distintas tasas de bits, siendo estás:

\begin{itemize}
\item Claire : Las tasas de bits fueron 104, 128 y 256 kbps.
\item Charla : Las tasas de bits utilizadas fueron 112, 128 y 256 kbps. 
\end{itemize}

Pensamos realizar las pruebas a 56, 128 y 256 kbps, que es la
equivalencia a un modem normal, una línea RDSI con dos canales y a una
línea ADSL respectivamente, pero el algoritmo
MPEG-1\footnote{Descargado de la página oficial www.mpeg.org.}
utilizado tiene una tasa mínima de compresión y por debajo de esta
tasa no es capaz de comprimir. La tasa no es un valor fijo sino que
depende de las características del vídeo a comprimir.

Los valores de 104 kbps para el vídeo Claire y 112 kbps para el vídeo
Charla son los valores aproximados a esa tasa mínima. Por debajo de
estos valores el algoritmo MPEG-1 no realiza con éxito la compresión.


\section{Evaluación objetiva}

Para la evaluación se ha procedido a medir la relación señal ruido
(PSNR) de las imágenes descomprimidas usando PVC y MPEG de las
secuencias de vídeo ``Claire'' y ``Charla'' con respecto a los
fotogramas originales, previos a la compresión.

Para ``Claire'', los PSNRs obtenidos a 104, 128 y 256 kbps han sido
los mostrados en la Figura \ref{fig:gra_claire104},
\ref{fig:gra_claire128} y
\ref{fig:gra_claire256} respectivamente.

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/claire104, width=7.5cm, angle=-90}
\caption[Reconstrucción de Claire en PSNR a 104 kbps]
{Calidad de las reconstrucciones a (en PSNR[dB]) de los fotogramas de
la secuencia ``Claire'' usando PVC y MPEG-1 a 104 kbps.}
\label{fig:gra_claire104}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/claire128, width=7.5cm, angle=-90}
\caption[Reconstrucción de Claire en PSNR a 128 kbps]
{Calidad de las reconstrucciones a (en PSNR[dB]) de los fotogramas de la secuencia ``Claire'' usando PVC y MPEG-1 a 128 kbps.}
\label{fig:gra_claire128}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/claire256, width=7.5cm, angle=-90}
\caption[Reconstrucción de Claire en PSNR a 256 kbps]
{Calidad de las reconstrucciones a (en PSNR[dB]) de los fotogramas de la secuencia ``Claire'' usando PVC y MPEG-1 a 256 kbps.}
\label{fig:gra_claire256}
\end{figure}

El PSNR medio obtenido en la secuencia ``Claire'' usando PVC y
MPEG-1 a las distintas tasas de compresión es el mostrado en la
Tabla \ref{tab:media_claire}.

\begin{table}
\caption[PSNR[dB\rbrack\ medio obtenido para la secuencia ``Claire'' usando PVC y MPEG-1]{PSNR[dB\rbrack\ medio obtenido para la secuencia ``Claire'' usando PVC y MPEG-1.}

\begin{center}
\begin{tabular}{|c|c|c|}
\hline
& PVC & MPEG-1 \\
  
\hline
104 kbps & {\bf 38,0 dB} & 35,3 dB \\

128 kbps & {\bf 38,6 dB} & 38,2 dB \\

256 kbps & 41,6 dB & {\bf 42,1 dB}  \\
\hline
\end{tabular}
\end{center}
\label{tab:media_claire}

\end{table}

Se puede observar que el algoritmo PVC obtiene mejores resultados
para tasas de bits bajas, a tasas de bits medias y altas la diferencia
disminuye, siendo bastante similar en los dos algoritmos. 

También observamos que los PSNRs obtenidos en media son bastante altos,
esto es debido a que la secuencia de vídeo tiene poco movimiento, dos
fotogramas contiguos son muy parecidos, por lo que tienen una alta
correlación, los algoritmos se aprovechan de esta situación obteniendo
buenos resultados.




Para ``Charla'', los PSNRs obtenidos a 104, 128 y 256 kbps han sido los
mostrados en las Figuras \ref{fig:gra_charla112}, \ref{fig:gra_charla128} y
\ref{fig:gra_charla256} respectivamente.

El PSNR medio obtenido en la secuencia ``Charla'' usando PVC y
MPEG-1 a las distintas tasas de compresión es el mostrado en la
Tabla \ref{tab:media_charla}.


\begin{table}
\caption[PSNR[dB\rbrack\ medio obtenido para la secuencia ``Charla'' usando PVC y MPEG-1]{PSNR[dB\rbrack\ medio obtenido para la secuencia ``Charla'' usando PVC y MPEG-1.}
\begin{center}
\begin{tabular}{|c|c|c|}
\hline
& PVC & MPEG-1 \\
\hline
112 kbps & {\bf 29,9 dB} & 27,2 dB \\

128 kbps & {\bf 28,3 dB} & 27,8 dB \\

256 kbps & 31,3 dB & {\bf 32,4 dB} \\
\hline
\end{tabular}
\end{center}

\label{tab:media_charla}

\end{table}

Como comentario a las gráficas observamos que los PSNRs obtenidos son
inferiores a los de la otra secuencia, esto se debe a que en esta
secuencia existe un mayor movimiento que en la anterior. La
correlación entre fotogramas contiguos no es tan grande y por lo tanto
no se obtienen unos resultados tan buenos.

Igual que en la anterior secuencia, a tasas de bits bajas y medias PVC
obtiene un PSNR superior en casi toda la secuencia, es a altas tasas
cuando la diferencia entre los dos algoritmos se estrecha y apenas
existe diferencia en los resultados.

Para terminar comentar que PVC permite comprimir a cualquier tasa de
bits y que obtiene sus mejores resultados a tasas de bits bajas y
medias. Esta característica hace que sea un algoritmo idóneo para
transmitir vídeo por Internet consiguiendo un resultado excelente.


\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/video112, width=7.5cm, angle=-90}
\caption[Reconstrucción de Charla en PSNR a 112 kbps]
{Calidad de las reconstrucciones a (en PSNR[dB]) de los fotogramas de
la secuencia ``Charla'' usando PVC y MPEG-1 a 104 kbps.}
\label{fig:gra_charla112}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/video128, width=7.5cm, angle=-90}
\caption[Reconstrucción de Charla en PSNR a 128 kbps]
{Calidad de las reconstrucciones a (en PSNR[dB]) de los fotogramas de
la secuencia ``Charla'' usando PVC y MPEG-1 a 128 kbps.}
\label{fig:gra_charla128}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/video256, width=7.5cm, angle=-90}
\caption[Reconstrucción de Charla en PSNR a 256 kbps]
{Calidad de las reconstrucciones a (en PSNR[dB]) de los fotogramas de
la secuencia ``Charla'' usando PVC y MPEG-1 a 256 kbps.}
\label{fig:gra_charla256}
\end{figure}

\section{Evaluación subjetiva}

El criterio de evaluación será estrictamente visual. Para ello
tomaremos distintos fotogramas de las dos secuencias de vídeo que han
sido descomprimidos usando PVC y MPEG-1.

Las Figuras \ref{fig:claire104}, \ref{fig:claire128} y
\ref{fig:claire256} muestran distintos fotogramas de la secuencia ``Claire'' a una tasa de bits de 104, 128 y 256 kbps.

Se puede observar que a 104 y 128 kbps los fotogramas en MPEG tienen
un efecto de losetizado, en cambio PVC suaviza los contornos y
las figuras son más redondeadas. A 256 kbps ya no es apreciable la
diferencia entre ambos algoritmos. PVC se comporta de manera
excelente en este tipo de secuencias.


\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/claire/56claire20,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/104spihtclaire20,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/56claire60,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/104spihtclaire60,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/56claire120,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/104spihtclaire120,width=0.4\textwidth}
\caption[Fotogramas de ``Claire'' a 104 kbps]
{Fotogramas de ``Claire'' a 104 kbps. La primera columna corresponde a
MPEG-1, mientras que la segunda columna corresponde a PVC.}
\label{fig:claire104}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/claire/128claire20,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/128spihtclaire20,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/128claire60,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/128spihtclaire60,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/128claire120,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/128spihtclaire120,width=0.4\textwidth}
\caption[Fotogramas de ``Claire'' a 128 kbps]
{Fotogramas de ``Claire'' a 128 kbps. La primera columna corresponde a
MPEG-1, mientras que la segunda columna corresponde a PVC.}
\label{fig:claire128}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/claire/256claire20,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/256spihtclaire20,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/256claire60,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/256spihtclaire60,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/256claire120,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/claire/256spihtclaire120,width=0.4\textwidth}
\caption[Fotogramas de ``Claire'' a 256 kbps]
{Fotogramas de ``Claire'' a 256 kbps. La primera columna corresponde a
MPEG-1, mientras que la segunda columna corresponde a PVC.}
\label{fig:claire256}
\end{figure}


Para la secuencia ``Charla'' observamos que MPEG-1 obtiene mejores
resultados que PVC ya que las imágenes son más nítidas. Suponemos que
la estimación de movimiento ha realizado un buen trabajo y es la
diferencia que se observa en las imágenes. En este caso la PSNR
obtenida para esta secuencia no concuerda con la evaluación subjetiva,
ya que PVC obtenía mejores resultados para 112 y 128 kbps y un
resultado muy similar a MPEG a 256 kbps.



\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/video/56video200,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/112spihtvideo200,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/56video700,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/112spihtvideo700,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/56video1000,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/112spihtvideo1000,width=0.4\textwidth}
\caption[Fotogramas de ``Charla'' a 112 kbps]
{Fotogramas de ``Charla'' a 112 kbps. La primera columna corresponde a
MPEG-1, mientras que la segunda columna corresponde a PVC.}
\label{fig:charla112}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/video/128video200,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/128spihtvideo200,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/128video700,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/128spihtvideo700,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/128video1000,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/128spihtvideo1000,width=0.4\textwidth}

\caption[Fotogramas de ``Charla'' a 128 kbps]
{Fotogramas de ``Charla'' a 128 kbps. La primera columna corresponde a
MPEG-1, mientras que la segunda columna corresponde a PVC.}
\label{fig:charla128}
\end{figure}

\begin{figure}
\centering
\epsfig{file=figuras/evaluacion/video/256video200,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/256spihtvideo200,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/256video700,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/256spihtvideo700,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/256video1000,width=0.4\textwidth}
\epsfig{file=figuras/evaluacion/video/256spihtvideo1000,width=0.4\textwidth}

\caption[Fotogramas de ``Charla'' a 256 kbps]
{Fotogramas de ``Charla'' a 256 kbps. La primera columna corresponde a
MPEG-1, mientras que la segunda columna corresponde a PVC.}
\label{fig:charla256}
\end{figure}


\chapter{Ampliaciones del proyecto}

Como trabajo futuro para completar este proyecto y poder disponer de
un software con multitud de aplicaciones comerciales es necesario
añadirle nuevas funcionalidades. Entre ellas destacar: 

\begin{enumerate} 

\item Sonido: Es necesario incorporar
sonido a la señal de vídeo que se envía al canal. El sonido debe estar
comprimido de forma progresiva, para que se reproduzca a una mayor o
menor tasa de bits en función de la capacidad del canal.
\item Color: Añadirle color al vídeo es una cualidad que haría que ganase en vistosidad, para cierto tipo de aplicaciones es necesario disponer del vídeo en color. No obstante requiere un incremento en tiempo de computación a la hora de descomprimir. 
\item Escalabilidad espacial y temporal: Incorporar estas características al sistema haría que no se tuviese ningún tipo de limitación funcional y se adaptaría a cualquier tipo de aplicación.
\end {enumerate}

Una vez que se consigan están mejoras, el sistema se podrá utilizar
para multitud de aplicaciones, entre ellas están: vídeo bajo demanda,
videoconferencia en un sólo sentido, formación a distancia, etc.
