I'm currently preforming LSB operations on RGB image for each channel
But I'm confused on the way to reconstruct the image after manipulating the LSB bits
%Load Cover Image 24-bit RGB
Cover_Image=imread('RGB_24bits_palette_sample_image.jpg');
% Extract the individual red, green, and blue color channels.
redChannel = Cover_Image(:, :, 1);
greenChannel = Cover_Image(:, :, 2);
blueChannel = Cover_Image(:, :, 3);
% Get LSB's of each pixel for every channel.
redLsb = rem(redChannel, 2);
greenLsb = rem(greenChannel, 2);
blueLsb = rem(blueChannel, 2);
%Resizing the LSB into vector
redLsbVector = reshape(redLsb.',1,[]);
greenLsbVector = reshape(greenLsb.',1,[]);
blueLsbVector = reshape(blueLsb.',1,[]);
%Load Hidden message
HiddenMessage = 'Hello';
%Convert Hidden message to Binary
HiddenMessageInBinary = reshape(dec2bin(HiddenMessage, 8)', 1, []) - '0';
%Start Embedding
MissMatchCount = 0;
for i=1:length(HiddenMessageInBinary)
if redLsbVector(i)~= HiddenMessageInBinary(i)
MissMatchCount=MissMatchCount+1;
%embed
redLsbVector(i) = HiddenMessageInBinary(i);
end
end
%Reconstruct the image