28 lines
465 B
OCaml
28 lines
465 B
OCaml
open Graphics ;;
|
|
open Images ;;
|
|
open Math;;
|
|
open Code;;
|
|
|
|
let img = lire_image "Documents/gauss.png";;
|
|
|
|
|
|
let alpha = 0.95;;
|
|
let n = 24;;
|
|
let rec bruiteur n a =
|
|
if Random.float 1. < alpha
|
|
then
|
|
let erreur = 1 lsl (Random.int n) in
|
|
bruiteur n (a lxor erreur)
|
|
else a;;
|
|
|
|
let larg = Array.length img;;
|
|
let long = Array.length img.(0);;
|
|
|
|
for i=0 to larg-1 do
|
|
for j=0 to long-1 do
|
|
img.(i).(j) <- bruiteur n img.(i).(j)
|
|
done
|
|
done;;
|
|
|
|
|
|
sauver_image img "gaussV2.png";; |