Friday 31 August 2012

WEEK 5 FYP 2



Title:
Research for Masking and Filtering

Objective:
To know deeply about Masking and Filtering method used in Image Steganography

Content/Result:
  • Masking and filtering techniques are mostly used on 24 bit and greyscale images. They hide info in a way similar to watermarks on actual paper and are sometimes used as digital watermarks. 
  • Masking images entails changing the luminance of the masked area. The smaller the luminance change, the less of a chance it can be detected. Because watermarking techniques are more integrated into the image,they may be applied without fear of image destruction from lossy compression. 
  • By covering, or masking a faint but perceptible signal with another to make the first non-perceptible, it exploit the fact that the human visual system cannot detect slight changes in certain temporal domains of the image.
  • Masking techniques are more suitable for use in lossy JPEG images than LSB insertion because of their relative immunity to image operations such as compression cropping. Stego-images that are masked will keep a higher fidelity than LSB through compression, cropping and some image processing. The reason that a stego image encoded with masking, degrades less under JPEG compression is that the secret message is hid in the significant areas of the picture.
The left image is the original image. The right image is image after masking and filtering technique applied

Conclusion:
Masking does change the visible properties of an image, it can be done in such a way that the human eye will not notice the anomalies. It is more robust than LSB modification with respect to compression, cropping and different kinds of image processing. The information is hidden inside the visible part of the image, which makes it more suitable than LSB modifications in case a lossy compression algorithm like JPEG is being used.





Friday 24 August 2012

WEEK 4 FYP 2



Title:
Combining the coding with GUI

Objective:
To combine and finalize the coding and GUI for Method 1: LSB

Content/Result:
After I completing the coding process and GUI, now I will combine it together to show the output which contains the original image and the stego image by using LSB method. Below is the full programmed for LSB method. The "Michael Jackson" image is the original image. The "Pirates" is the secret image that need to be hide. When the "Michael Jackson" is embedded, its contains the secret image in it.



Conclusion:
LSB method is successfully works. The embedded image size is bigger than the original image because it's contain a secret message in it. The hidden message must be smaller than the original image. The embedded image is saved in Bitmap because it is lossless.









Friday 17 August 2012

WEEK 3 FYP 2



Title:
Built Graphic User Interface (GUI)

Objective:
To create Graphic User Interface (GUI) for MATLAB coding

Content/Result:
I built GUI that will be use together with coding from last week. Below is the GUI for LSB method. To run the GUI, user needs to:
  1. Select the cover image
  2. Select the secret image
  3. Press hide the image button
  4. Save the embedded image
  5. Press recover image button to recover image



Conclusion:
This GUI will be used as my Interface together with the LSB coding. User can see the original image and the hidden image before and after the stego process.










Friday 10 August 2012

WEEK 2 FYP 2



Title:
Least Significant Bit Source Code

Objective:
To gain and generate the coding for Image Steganography by using LSB method

Content/Result:
For method 1, I inserted the binary number of hidden image into the binary number of cover image. And the embedded image is saved with Bitmap format. The step involved in LSB coding is:

  1. read the cover and hidden image
  2. cover the cover image into binary matrix
  3. hide the hidden image into the matrix of cover matrix
  4. update the binary matrix of the cover image
  5. convert back the update binary matrix of cover + hidden into numerical
  6. extract the hidden image
  7. update the binary matrix of the cover image

Some of the coding examples is as below:

 function [I_image_rev] = lsb_image(coverimg, hiddenimg)

%% read the cover and hidden images
I_image = coverimg;
I_hidden = hiddenimg;
[m,n,o]=size(I_image);
[m1,n1] = size(I_hidden);

%% cover the cover image into binary matrix
for i=1:m,
    for j=1:n,
        for k=1:o,
            I_image_bin{i,j,k} = {dec2bin(I_image(i,j,k),8)};
        end
    end
end

%% hide the hidden image into the matrix of cover matrix
for i=1:m1,
    for j=1:n1,
            I_image_hidden{i,j} = {dec2bin(I_hidden(i,j),8)};
            
            binaryof_I_image_hidden = cell2mat(I_image_hidden{i,j});
            
            binaryof_I_image_bin_1st_R = cell2mat(I_image_bin{(i-1)*3+1,j,1});
            binaryof_I_image_bin_1st_G = cell2mat(I_image_bin{(i-1)*3+1,j,2});
            binaryof_I_image_bin_1st_B = cell2mat(I_image_bin{(i-1)*3+1,j,3});
            binaryof_I_image_bin_2nd_R = cell2mat(I_image_bin{(i-1)*3+2,j,1});
            binaryof_I_image_bin_2nd_G = cell2mat(I_image_bin{(i-1)*3+2,j,2});
            binaryof_I_image_bin_2nd_B = cell2mat(I_image_bin{(i-1)*3+2,j,3});
            binaryof_I_image_bin_3rd_R = cell2mat(I_image_bin{(i-1)*3+3,j,1});
            binaryof_I_image_bin_3rd_G = cell2mat(I_image_bin{(i-1)*3+3,j,2});
            binaryof_I_image_bin_3rd_B = cell2mat(I_image_bin{(i-1)*3+3,j,3});
            


Conclusion:
For this method, the 8th bit of each byte of the image is changed to the bit of secret message. For 24 bit image, the colours of each component like RGB (red, green and blue) are changed.






Friday 3 August 2012

WEEK 1 FYP 2



Title:
Research for Least Significant Bit (LSB)

Objective:
To know deeply about Least Significant Bit (LSB) used in Image Steganography

Content/Result:
  • LSB (Least Significant Bit) substitution is the process of adjusting the least significant bit pixels of the carrier image. It is a simple approach for embedding message in to the image. The Least Significant Bit insertion varies according to number of bits in an image. For an 8 bit image, the least significant bit; in example; the 8th bit of each byte of the image is changed to the bit of secret message. For 24 bit image, the colours of each component like RGB (red, green and blue) are changed. LSB is effective in using BMP images since the compression in BMP is lossless. But for hiding the secret message inside an image of BMP file using LSB algorithm it requires a large image which is used as a cover. 
  • LSB substitution is also possible for GIF formats, but the problem with the GIF image is whenever the least significant bit is changed the whole colour palette will be changed. The problem can be avoided by only using the gray scale GIF images since the gray scale image contains 256 shades and the changes will be done gradually so that it will be very hard to detect. For JPEG, the direct substitution of steganographic techniques is not possible since it will use lossy compression. So it uses LSB substitution for embedding the data into images. 
  • For example, the following grid can be considered as 3 pixels of a 24-bit color image, using 9 bytes of memory: 
                                               (00100111 11101001 11001000)

                                               (00100111 11001000 11101001)

                                               (11001000 00100111 11101001)

When the other image, which binary value equals 10000001, is inserted, the following grid results:

                                              (00100111 11101000 11001000)

                                              (00100110 11001000 11101000)

                                              (11001000 00100111 11101001)


Left is the Original Image. Right is the image after LSB substitution


Conclusion:
LSB is the process of adjusting the least significant bit pixels of the carrier image. It is a simple approach for embedding message intothe image. The Least Significant Bit insertion varies according to number of bits in an image. LSB is effective in using BMP images since the compression in BMP is lossless