Hiding an image field based on theme in Drupal 7
It can be done in node.tpl.php

hide($content['field_image']);


or in hook_preprocess_node

hide($variables['content']['field_image']);


It works with views as well if you are using content row plugin.
For fields you have to override views-view-fields.tpl.php and remove image field from $fields variable.

unset($fields['field_image']);


Also take look at this modules:

https://drupal.org/project/cs_adaptive_image

https://drupal.org/project/adaptive_image