Difficulty recognising people

Hi, I have always had problems recognising people out of context, even if I know them quite well, and I was wondering if anyone has any advice which could help me. I can usually recognise an acquaintance if they're dressed differently but in the same place I am used to seeing them in (e.g. work) or sometimes if they're dressed the same as when I last saw them but in a different location. I have to know someone really well before I can identify them anywhere. Of course, some people have been too much offended by me not knowing them already to ever get to the "knowing well" stage. Sorry to ramble on, but hope someone can help because this is one of my most frequent social faux pas.