% ============================================================================= % Math 336 - Image Processing - Laboratory 2 % % A Matlab function for stenographic recovery of a hidden image in the % the bit planes of another image using the original primary image as a % reference. Note that this function assumes the 4 most significant bit planes % of the "hidden" image are in the 4 least significant % % Marty Kandes % Department of Physics % San Diego State University % Fall 2008 % ----------------------------------------------------------------------------- function [H] = recover(OIMAGE,PIMAGE) F = imread(OIMAGE); G = imread(PIMAGE); F = double(F); G = double(G); F0 = (mod(F,2)); F1 = (mod(floor(F/2),2)); F2 = (mod(floor(F/4),2)); F3 = (mod(floor(F/8),2)); F4 = (mod(floor(F/16),2)); F5 = (mod(floor(F/32),2)); F6 = (mod(floor(F/64),2)); F7 = (mod(floor(F/128),2)); G0 = (mod(G,2)); G1 = (mod(floor(G/2),2)); G2 = (mod(floor(G/4),2)); G3 = (mod(floor(G/8),2)); G4 = (mod(floor(G/16),2)); G5 = (mod(floor(G/32),2)); G6 = (mod(floor(G/64),2)); G7 = (mod(floor(G/128),2)); G7 = xor(F0,G0); G6 = xor(F1,G1); G5 = xor(F2,G2); G4 = xor(F3,G3); H = uint8(2*(2*(2*(2*(2*(2*(2*G7+G6)+G5)+G4))))); end