GNOME Bugzilla – Bug 344033
Canon 10D RAW files are not rotated properly
Last modified: 2006-10-03 14:52:54 UTC
Please describe the problem: I own both a Canon 10D and 20D. I shoot them both in RAW. After importing files from the 20D, I can thumb through the images and they're rotated correctly. After importing files from the 10D, thumbing through images that have been taken in portrait orientation are upside down. Steps to reproduce: 1. Import 10D RAW taken in portrait orientation 2. Browse to said RAW Actual results: The image is displayed upside down. Expected results: The image should be displayed in the correct orientation. Does this happen every time? Yes Other information:
Note this is on Ubuntu Dapper.
can you mail me some test images put them somewhere where I can access them. What version of dcraw are you using?
At work right now so I can't pick one example, so, blindly, here are a bunch: http://www.convolve.ca/~george/f-spot The ones that exhibit the problem are the photographs in portrait orientation. It's a photograph of my 20D + 70-200.. nothing fancy. I'll attach a screenshot when I get back home. I'm using dcraw 7.94-1ubuntu1 which comes with Ubuntu Dapper.
Well I have the same problem with EOS 300D (digital rebel), it seems that these cameras don't use the same orientation notations. I found how to correct it for EOS 300D and EOS 10D, but I don't know exactly how to change the code in a better way depending of the camera model report in the CRW file. The file to change for EOS10D and EOS300D is Ciff.cs in the src directory : line 112 : public PixbufOrientation Orientation { get { int angle = RotationAngle % 360; if (angle < 45) return PixbufOrientation.TopLeft; else if (angle < 135) return PixbufOrientation.RightTop; else if (angle < 225) return PixbufOrientation.BottomRight; else if (angle < 315) return PixbufOrientation.LeftBottom; else return PixbufOrientation.TopLeft; } } instead of public PixbufOrientation Orientation { get { int angle = RotationAngle % 360; if (angle < 45) return PixbufOrientation.TopLeft; else if (angle < 135) return PixbufOrientation.LeftBottom; else if (angle < 225) return PixbufOrientation.BottomRight; else if (angle < 315) return PixbufOrientation.RightTop; else return PixbufOrientation.TopLeft; } } In fact for these cameras we need to invert LeftBottom and RighTop orientation. Maybe somebody who developped f-spot could find easyly modifing this only for EOD 10D and EOS 300D (6M pixel sensors cameras) checking the camera model in the file.
ok, we're cleary missing something here because I wrote and tested the code with my Digital rebel. I'll dig a little deeper
I've placed some screenshots of the differences here: http://www.convolve.ca/~george/f-spot/screenshots/
Any luck with this? I can provide more examples or screenshots if necessary. In the screenshot URL above please note that the 10D RAWs do not show any of EXIF information in the left hand panel whereas the 20D RAWs do.
Same problem for me here; I use f-spot from Debian unstable (0.2.0-1) with CRWs from a 300D. A sample raw can be downloaded from http://tdilo.sdf-eu.org/crw_5936.crw Thanks in advance for fixing this very annoying bug.
10D, 300D (digital rebel) share the same CRW format. all newer cameras (20D, 350 - rebel XT) use CR2. the issue is only for CRW, that's why george report correct behavior with his 20D. From the CIFF specification (http://xyrion.org/ciff/CIFFspecV1R04.pdf page 19), "rotationAngle: This indicates how many degrees in the counter-clockwise direction the original data file should be rotated for correct viewing of the image." So, apparently, the F-Spot code in Ciff.cs "public int RotationAngle; // degreess clockwise to rotate (orientation)" is wrong and the fix in comment #4 is the right thing to do. The only thing that annoy me is that Larry report that the actual code works with his Digital Rebel... (and I don't have any shots from Digital Rebel available, only 300D)...
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find. this bug was already reported for crw files from powershot s60. I'll try to summarize this discussion in the other thread. *** This bug has been marked as a duplicate of 326356 ***