As outline Innovation only happens when a company culture values and supports innovative behavior.
The detriment of this is the relationships between employer and employee. This needs to be solid and aligned, personal and company goals need to have some cross over so that both gain fairly from the efforts required to innovate.
Therefore I believe innovation can only happen in an stable environment, where the company is focused on it. Company politics - lack of integrity, trust, and job security are the biggest hindrances to innovation.
In this period of economic downturn a balance is often hard to find as pressures prevent it. Hence larger companies find it more difficult to innovate, as their size and existing customer commitments smother it.
In short innovation requires: Good attitudes and relationships, Strong cultural focus, Flexibility practice, and drive/want.