Question: is there any difference between grey scale image and binary image?

Answer: 
A binary image has only two values for each pixel, 0 and 1 corresponding to black and white (or vice versa). A gray scale image has a certain number (probably 8) bits of information per pixel, hence, 256 possible grey values.

Of course, a grey scale image has a binary representation, but the smallest size of information is not a bit, so we don't call it a binary image.

**edit** Assuming you want to convert in Matlab, use [`im2bw`](http://www.mathworks.com/access/helpdesk/help/toolbox/images/im2bw.html). If you're not using Matlab, the idea of binarization is explained on that page as well. It's not difficult to port, it boils down to comparing every pixel to a threshold value.
**Black and White** image contains only **two levels**. 

**Gray image** represent by black and white shades or combination of levels for **e.g.**
**8 bit gray image** means total **2^8 levels** form black to **white 0 = black and 255 is White**.