Extract a hidden message from image
Show older comments
I'm trying to write a matlab code to extract a hidden message from a given image. The hidden message is the first half of the odd part of this image. Whenever I run my code I get a black image. Any suggestions?
image=imread('hidden.png');
new=fliplr(image);
odd=(image-new)/2 ;
imshow(odd);
3 Comments
Walter Roberson
on 3 May 2016
What does "the odd part of this image" mean?
Is the "first half" in terms of rows, or in terms of columns?
Nemo
on 4 May 2016
Accepted Answer
More Answers (2)
Walter Roberson
on 4 May 2016
I am going to guess here:
wid = size(YourImage,2);
hwid = floor(wid/2);
odd = (double(YourImage(:,1:hwid)) - double( fliplr(YourImage(:,end-hwid+1:end)) )) / 2;
shifted_odd = odd - min(odd(:));
scaled_odd = shifted_odd ./ max(shifted_odd(:));
imshow(scaled_odd);
2 Comments
Nemo
on 4 May 2016
Walter Roberson
on 4 May 2016
You might need
imshow(scaled_odd, [])
Remember, though, that the hidden image cannot be a colored image, because colored images require 3 dimensional arrays but you are working with two dimensional arrays.
Ashton M Spillman
on 18 Oct 2020
0 votes
bro idk
1 Comment
Image Analyst
on 19 Oct 2020
Edited: Image Analyst
on 19 Oct 2020
Then don't feel compelled to post an answer.
Anyway, I posted a full complete demo 4 and a half years ago for Nemo, which worked despite him not accepting any answer.
Categories
Find more on Image Arithmetic in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!