We were getting this problem as well.
The tracking image is embedded in the html of the emails sent by CiviCRM but opens are not being recorded. (it isn't an image blocking problem)
<img src="http://www.examplesite.org/sites/www.examplesite.org/modules/contrib/civicrm/extern/open.php?q=138122" width="1" height="1" alt="" border="0">
To test you can go directly to the url like this for your own site and see what happens and that will hopefully point you towards the solution.
It could be permissions on that folder/file or could be your firewall blocking the word "open" or "open.php" or your civicrm settings file may not be being found by the open.php script. Or something else.
In our case it turns out that our firewall was blocking requests to "open.php?q="