Sunday, June 13, 2010

Detailed description of work this week

Edge Detection
The method used is canny-edge detection and it is based on finding edges based on local maxima in
first derivative of the image grayscale values.
1) conversion of color to grayscale image using weighed averages of the RGB values of the pixel.
2) use of gausian-filter (or gausian-blur ) to reduce noise in the image (if necessary)
3) finding the approximate gradient direction and magnitude at each pixel using Sobel-operator.
4) automatic threshold selection for a given image using Otsu-thresholding (method of maximising std. deviation).
5) non-maximal supression (i.e. removal of points which are not true local maxima)
6) use of double thresholding to find out the strong and weak edges.
7) output of the final edge-enhanced image.

Image Hiding .
1) from the edge enhanced image (of the the carrier) , the edge locations are stored
2) the image to be hidden is converted to grayscale
3) the pixels of the above obtained grayscale image are stored in the edge locations of the carrier image
using LSB (least significant bit method).
4) the resulting image is called stegoimage.

Decoding the image .
1) the edge locations of the stegoimage are computed (using canny edge detector)
2) from these edge locations the hidden image pixels can be recovered and used to regenerate the hidden image.

Problems faced
1) stegoimage is susceptible to transmission error .

Further progress
1) further smoothing in edge-detection is possible but will be taken up later if time permits.
2) the pixels used for hiding purpose will be chosen randomly with the help of a pseudo random number generator
(that uses a seed ) which will serve as a password protection for decoding the image.

I am also working on RSA encryption to ensure authorized decryption of the hidden data.

No comments:

Post a Comment