]> AND Private Git Repository - hdrcouchot.git/blobdiff - stegoyousra.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
dff
[hdrcouchot.git] / stegoyousra.tex
index 7f2add36c841f9329be71081a43eef54b15d6994..de9836b905cd2470fdbd49b85c3bc0062d0e323a 100644 (file)
@@ -4,7 +4,7 @@ ces fonctions de distorsion sont construites dans l'objectif de préserver
 les caractéristiques de l'images. 
 On comprend aisément que dans des régions uniformes ou sur des bords clairement définis,
 une modification même mineure de l'image est facilement détectable.
-Au contraire dans les textures, le bruit ou les régions chaotiques 
+Au contraire les textures, le bruit ou les régions chaotiques 
 sont  difficiles à modéliser. Les caractéristiques des images 
 dont ces zones ont été modifiées sont ainsi similaires à celles
 des images initiales.
@@ -17,17 +17,19 @@ pour les courbes de niveau.
 Pour peu qu'on sache définir une fonction $P$ 
 qui associe à chaque pixel $(x,y)$ sa valeur $P(x,y)$,
 les pixels tels que les dérivées secondes de $P$ ont des valeurs élevées 
-sont des bon candidats pour contenir un bit du message.
+sont des bons candidats pour contenir un bit du message.
 Cependant, une telle fonction $P$ n'est connue que de manière discrète,
 \textit{i.e.}, en un nombre fini de points. 
 Les dérivées premières et secondes ne peuvent donc pas être évaluées mathématiquement.
-Au mieux, on peut construire une fonction qui approxime ces $P$ sur cet ensemble 
+Au mieux, on peut construire une fonction qui approxime les 
+dérivées de $P$ sur cet ensemble 
 de pixels. Ordonner alors les pixels selon la matrice hessienne 
 (\textit{i.e.}, la matrice des dérivées secondes) n'est pas trivial puisque celle-ci 
 contient de nombreuses valeurs pour un seul pixel donné. 
 
 On verra dans ce chapitre comment des approximations des dérivées 
-premières et secondes pour des images numériques (Section~\ref{sec:gradient}) on peu être
+premières et secondes pour des images numériques (Section~\ref{sec:gradient}) 
+ont pu être
 obtenues.
 Deux propositions de dérivées secondes sont ensuite 
 données et prouvées (Section~\ref{sec:second} et Section~\ref{sec:poly}).
@@ -72,7 +74,8 @@ plus le gradient varie en ce point. Évaluer ce type de matrice est ainsi primor
 en stéganographie. Cependant cette tâche n'est pas aussi triviale qu'elle n'y 
 paraît puisque les images naturelles ne sont pas  définies à l'aide 
 de fonction différentiables de $\R^+\times \R^+$
-dans $\R^+$. La suite montre comment obtenir des approximations de telles matrices. 
+dans $\R^+$. 
+La suite montre comment obtenir des approximations de telles matrices. 
 
 \subsection{Approches classiques pour évaluer le gradient dans des images}\label{sub:class:1}
 Dans ce contexte, les approches les plus utilisées pour évaluer un gradient 
@@ -82,13 +85,13 @@ Chacune de ces  approches applique un produit de convolution $*$ entre un noyau
 $3\times 3$. Le résultat 
  $A * K$ est une approximation du gradient horizontal
 \textit{i.e.}, $\dfrac{\partial P}{\partial x}$.
-Soit $K\rl$ le résultat de la rotation  d'un angle $\pi/2$ sur $K$.
+Soit $K'$ le résultat de la rotation d'un angle $\pi/2$ appliquée à $K$.
 La composante verticale du gradient,  $\dfrac{\partial P}{\partial y}$ est obtenue 
-de manière similaire en évaluant $A * K\rl$. Lorsqu'on applique ceci sur toute 
-la matrice image, on obtient peu ou prou une matrice de même taille pour chacune des 
+de manière similaire en évaluant $A * K'$. Lorsqu'on applique ceci sur toute 
+la matrice image, on obtient  une matrice de même taille pour chacune des 
 dérivées partielles. 
 
-Les deux éléments de la première ligne (respectivement de la seconde ligne) 
+Les deux éléments de la première colonne (respectivement de la seconde) 
 de la matrice hessienne
 sont le résultat du calcul du gradient sur la matrice $\dfrac{\partial P}{\partial x}$
 (resp. sur la matrice  $\dfrac{\partial P}{\partial y}$).
@@ -235,8 +238,8 @@ pour chacun des opérateurs de gradient rappelés à la section précédente.
 
 \end{table}
 
-Le noyau $\textit{Ks}_{x^2}''$ permet de détecter si le le pixel central 
-pixel central appartient à une bord ``vertical'', même si celui contient du bruit,
+Le noyau $\textit{Ks}_{x^2}''$ permet de détecter si le 
+pixel central appartient à un bord ``vertical'', même si celui contient du bruit,
 en considérant ces voisins verticaux. Ces derniers sont vraiment 
 pertinents dans un objectif de détecter les bords. Cependant, leur lien avec 
 les lignes de niveau n'est pas direct. De plus tous les pixels qui sont dans la 
@@ -291,7 +294,7 @@ Lorsque $n$ vaut 1, ce noyau est une version centrée du noyau horizontal de dif
 intermédiaires. $\textit{Ki}_{x^2}''$ à un facteur  $1/2$ près).
 Lorsque $n$ vaut 2, on retrouve $\textit{Kc}_{x^2}''$.
 
-Les variations verticales du gradient sont aussi obtenus en faisant subir 
+Les variations verticales du gradient sont aussi obtenues en faisant subir 
 à $\textit{Ky}_{x^2}''$ une rotation d'angle  $\pi/2$.
 Les variations diagonales sont obtenues à l'aide du gradient 
 $\textit{Ky}_{xy}''$ défini par:
@@ -397,7 +400,7 @@ L(x,y) =
 \right)
 \end{array}
 \end{equation}
-On peut facilement prouver que les dérivées partielles  de $L$ selon $x$ est 
+On peut facilement prouver que la dérivée partielle  de $L$ selon $x$ est 
 \begin{equation}
 \begin{array}{l}
 \dfrac{\partial L}{\partial x} =  
@@ -454,7 +457,7 @@ P(i,j)
 \label{eq:deriv:poly:yx}
 \end{eqnarray}
 Ces dérivées secondes sont calculées pour chaque pixel central, \textit{i.e.} le pixel dont l'indice est  $(0,0)$ dans la fenêtre.
-En considérant cette particularisation, l'équation~(\ref{eq:deriv:poly:x2}) peut 
+En considérant cette particularisation, l'équation~(\ref{eq:deriv:poly:x2}) 
 se simplifie en 
 
 \begin{equation}
@@ -495,7 +498,7 @@ P(i,0)
 
 
 \begin{table}[ht]
-\caption{ Noyaux pour les dérivéees secondes en $x$ et $y$ lors de l'interpolation polynomiale\label{table:sod:diag:poly}
+\caption{ Noyaux pour les dérivées secondes en $x$ et $y$ lors de l'interpolation polynomiale\label{table:sod:diag:poly}
 }
 \centering
 %\scriptsize
@@ -571,7 +574,7 @@ de cette dernière:
 \]
 
 
-\section{Experimentations}\label{sec:experiments}
+\section{Expérimentations}\label{sec:experiments}
 
 Tout d'abord, l'ensemble du code est accessible en ligne\footnote{\url{https://github.com/stego-content/SOS}}.
 La Figure~\ref{fig:oneimage} représente les résultats d'embarquement de données dans 
@@ -612,10 +615,10 @@ concentrent les changements.
 Les deux méthodes présentées ici dépendent de noyaux dont la taille va jusqu'à  
 $(2N+1)\times(2N+1)$. Cette section montre comment évaluer $N$ pour maximiser 
 le niveau de sécurité.
-Pour chaque approche, 1,000 images stegos avec  
+Pour chaque approche, 1,000 images stégos avec  
 $N=2$, $4$, $6$, $8$, $10$, $12$ et $14$ et dont les supports appartiennent 
 à l'ensemble des 10000 images du challenge BOSS. 
-LA sécurité de l'approche a été évaluée avec le stéganalyseur 
+La sécurité de l'approche a été évaluée avec le stéganalyseur 
 Ensemble Classifier~\cite{DBLP:journals/tifs/KodovskyFH12}.
 Pour un taux d'embarquement   $\alpha$ égal soit à  $0.1$ ou soit à  $0.4$, 
 l'erreur moyenne de test (exprimée en pourcentage) a été calculée. 
@@ -741,12 +744,12 @@ compte des variations dans celle-ci. Les dérivées secondes sont certes faciles
 La principale contribution de ce chapitre est de proposer des 
 fonctions de distorsion basées sur des approximations de dérivées 
 secondes, l'idée sous-jacente étant qu'une zone où les lignes de niveau 
-ne sont pas clairement définies est peu prédictible.
+ne sont pas clairement définies est peu prévisible.
 Deux approches d'approximation ont été présentées.
 La première  basée 
 sur un produit de convolution, exploite des noyaux déjà intégrés dans des
 algorithmes de détection de bords.
 La seconde s'appuie sur une interpolation polynomiale de l'image.
-Ces deux méthodes onté été complètement implantées et leur sécurité 
+Ces deux méthodes ont été complètement implantées et leur sécurité 
 face à des stéganalyseurs a été étudiée. Les résultats encouragent 
 à poursuivre dans cette direction.
\ No newline at end of file