You probably can't do this. It's not Vim's fault, it's your terminal's fault. The GUI has access to millions of colours and terminals generally have access to 256 (or much less, depending on your terminal). It just doesn't have the guts to show the same colours as the GUI version. That's also why all of the colour schemes for Vim have values for the GUI (e.g. guibg) and values for the terminal (e.g ctermbg). There's a GUI value for the powerful side, and a terminal value for the weak side.
This is one of the reasons why I only use the GUI version. You can easily marry the command line with Vim so that using a single GUI version is much easier. You can check out a video on how to do this at vimeo and I recently created a plugin for ZSH that makes it even easier, which you can get from Github