First we will prepare your original image by lowering the resolution, so that one pixel represents one cross, and lower the number of colors so that you can use a limited number of yarns.
Next we apply the grid.
After that I will show you how to replace individual colors with symbols.
This is good because you can print the pattern in black and white, and also because you can see the difference between similar colors.
This technique can of course be used to make decorations and gifts for the holidays, and other occasions!
Update: Here are two examples. The mario image has 5x5px square size and my complete bird montage pattern has 20x20px square size ( full size color, full size symbols)
Step 1: Resize the image
One way to lower the resolution is to use the filter "Mosaic". This is fine, but I don't really like it because it limits my control over the size of the final pattern. A much better way is to just resize the image to the desired number of stiches you want the final result to be (that way you also limit the number of total resizes to the image).
Measure the fabric and count the number of stitches you want the result to be.
Resize the image to that number of pixels
Then, resize it up again with 500% (I use 5px per square). Remember to use the "Nearest Neighbour" setting to preserve the edges. We want those!
Update: When resizing down the image, the only thing you are interested in is how many stiches wide and high your final product should be. Just insert those numbers in the "Pixel dimensions" (if it's greyed out, check the "Resample image" box). The resolution and document size makes no difference here.