X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/canny.git/blobdiff_plain/2eb9039105dddddb3543a90570df003e5ad4ac82..f9ab101f6a209bfd67ee84f3aea5bf5ca2582d9b:/stc.tex diff --git a/stc.tex b/stc.tex index 1ed8b44..09ae436 100644 --- a/stc.tex +++ b/stc.tex @@ -1,3 +1,5 @@ +To make this article self-contained, this section recalls +the basis of the Syndrome Treillis Codes (STC). Let $x=(x_1,\ldots,x_n)$ be the $n$-bits cover vector of the image $X$, $m$ be the message to embed, and @@ -11,14 +13,14 @@ this is for instance the LSBs of the image edge bits. The objective is thus to find $y$ that minimizes $D_X(x,y)$. Hamming embedding proposes a solution to this problem. -Some steganographic +This is why some steganographic schemes~\cite{DBLP:conf/ih/Westfeld01,DBLP:conf/ih/KimDR06,DBLP:conf/mmsec/FridrichPK07} are based on this binary embedding. Furthermore this code provides a vector $y$ s.t. $Hy$ is equal to $m$ for a given binary matrix $H$. Let us explain this embedding on a small illustrative example where -$\rho_X(i,x,y)$ is identically equal to 1, -$m$ and $x$ are respectively a 3 bits column +$\rho_X(i,x,y)$ is equal to 1, +whereas $m$ and $x$ are respectively a 3 bits column vector and a 7 bits column vector. Let then $H$ be the binary Hamming matrix $$ @@ -53,27 +55,27 @@ It is not hard to see that if $y$ is $\overline{x}^j$, then $m = Hy$. It is then possible to embed 3 bits in only 7 LSBs of pixels by modifying at most 1 bit. -In the general case, when communicating $n$ message bits in -$2^n-1$ pixels needs $1-1/2^n$ average changes. \CG{Phrase pas claire}. +In the general case, communicating $n$ message bits in +$2^n-1$ pixels needs $1-1/2^n$ average changes. Unfortunately, for any given $H$, finding $y$ that solves $Hy=m$ and -that minimizes $D_X(x,y)$ has an exponential complexity with respect to $n$. -The Syndrome-Trellis Codes (STC) +that minimizes $D_X(x,y)$, has an exponential complexity with respect to $n$. +The Syndrome-Trellis Codes presented by Filler \emph{et al.} in~\cite{DBLP:conf/mediaforensics/FillerJF10} is a practical solution to this complexity. Thanks to this contribution, the solving algorithm has a linear complexity with respect to $n$. -First of all, Filler et al. compute the matrix $H$ +First of all, Filler \emph{et al.} compute the matrix $H$ by placing a small sub-matrix $\hat{H}$ of size $h × w$ next -to each other and shifted down by one row. +to each other and by shifting down by one row. Thanks to this special form of $H$, one can represent -every solution of $m=Hy$ as a path through a trellis. +any solution of $m=Hy$ as a path through a trellis. -Next, the process of finding $y$ consists of two stages: a forward and a backward part. +Next, the process of finding $y$ consists in two stages: a forward and a backward part. \begin{enumerate} -\item Forward construction of the trellis that depends on $\hat{H}$, on $x$, on $m$, and on $\rho$; +\item Forward construction of the trellis that depends on $\hat{H}$, on $x$, on $m$, and on $\rho$. \item Backward determination of $y$ that minimizes $D$, starting with the complete path having the minimal weight. \end{enumerate}