Piwik is a free (GPL licensed) PHP MySQL web analytics software package. It provides detailed reports on your website and its visitors, including the search engines and keywords they used, the language they speak, which pages they like, the files they download… and so much more.
What does "Keyword not defined" mean in the Referers > Search Engines keywords report?
"Keyword not defined" means the search engine did not pass to your website the keyword used by your visitors -- Search engines hide the keyword for privacy reasons. It is common that most keywords are "Not defined" after Google changes made in early 2012.
Some search engines (Google for all logged in users, Firefox latest version now also removes keywords, etc.) may not specify the keyword used to reach your website. Piwik will report the keyword as "Keyword not defined". It means that Piwik has detected that the visitor came from a search engine, but the keyword was not provided in the Referrer URL.
There is no way to access the keyword in this case, and no other web analytics tool can get this information neither.