How to add a description to an image field?
To do that you'd need to add another column to the field type, which there's no native support for currently.

You're not alone in wanting this functionality (I'd definitely like it) and there is a patch that adds a hook_field_schema_alter() function to the field module, which you can use to add extra columns. I haven't tried it but the comments and tests on the above link seem to suggest it does work.

Bear in mind if you go down that route you'll also have to implement a few other alter hooks (hook_field_widget_form_alter() for example) so it's not a quick-fix.

If you're not up for patching core you might just want to use the Field Collection module to accomplish something similar. You can add a collection item containing an image widget and textarea widget to basically achieve the same effect (although there is some very slight impact on performance).