Mac OS X 10.4.2 Fails to Fix iPhoto 5 Color Profile Problem

by Derrick Story

If I were a betting man, I would have put money down that the 10.4.2 update would fix the color profile problem in iPhoto 5. Good thing I'm not. The problem persists.



For those of you who haven't been hit upside the head with this annoyance yet, it goes something like this:




  • Your digital camera records your .jpg photos using the sRGB color profile. It does this because that's the industry standard. If you send your image to photo service, it will come back looking pretty much as you expected.

  • If, however, you edit your photo in iPhoto 5, the color profile for that picture is changed to Generic RGB. What does that mean? Depending on the type of picture, you can get unexpected results when you output the photo. If you want to see the difference in color spaces, launch the ColorSync Utility in your Utilities folder, click on the Profiles tab, then compare the sRGB and the Generic RGB profiles. It isn't huge -- just enough to be irritating.

  • The upshot is that if you want to stay with the sRGB profile, you can't edit in iPhoto 5. You have to use an external app such as Photoshop.



I have to say, I'm scratching my head over this one. Apple has provided us with this cool Adjust Panel in iPhoto 5, yet many of us can't use it because of the color profile bug. I'm teaching a half day Mac Tools for Digital Photographers Lab at Macworld Boston on Thursday, and I was really hoping that this problem would be fixed so I could include iPhoto's image editing in some of my workflows.



Maybe next year...



If anyone has any insight as to why this problem persists, or a good workaround for it, please post.


22 Comments

brianimator2
2005-07-12 21:37:20
Oh well...
At least the Automator actions for iPhoto seem to be working!!
Tony_Arnold
2005-07-12 21:39:37
Wouldn't this come in an iPhoto update?
Not to be rude, but wouldn't this fix come in an iPhoto/iLife update? As far as I know, iPhoto is not part of the OS anymore (and the colour profile problem is obviously a bug in iPhoto itself, seeing as ColorSync seems to work in other places).
derrick
2005-07-12 22:45:41
RE: Wouldn't this come in an iPhoto update?
Not rude at all :)


First of all, I don't know where the problem is. I didn't notice it until Tiger, although it may have been around before then. So it may or may not be strictly a bug in iPhoto 5.


Also, true, iPhoto hasn't been a part of the OS for a long time, but we have had minor bug fixes and additions to camera compatibility in the OS updates. This would be an ideal time to do it instead of having to spell out the problem in an iPhoto-only update... since Apple probably doesn't want to make too much noise about this problem. Quite honestly, it's a little embarrassing.


Either way, we're really splitting hairs here, aren't we? The real issue is that this color profile problem prevents many iPhoto fans from using the editing tools. And a lot of us who filed bug reports are waiting for a fix.

John_Fieber
2005-07-12 23:04:27
Generic RGB is a red herring
Generic RGB is only a very small part of the iPhoto 5 color shift.


When you edit an image in iPhoto, the image is converted from the original color space--usually sRGB but iPhoto will observe and correctly handle ICC tagged image--into a working color space. You edit, then the apparent (mis)design of iPhoto is to convert from the working space to Generic RGB before storing the edited version.


A general rule of thumb in color management: don't convert between profiles unless you have a really compelling reason to do so. Conversions are lossy, some subtly so, others dramatically so.


The problems iPhoto:



  1. Experiments show that the working space is the defined by your display profile. Gack! What a horrid choice! Cameras and scanners can capture all sorts of colors outside the gamut of a typical display. In certain areas, printers can print colors outside the gamut of a typical display. Then, LCD displays, cheap ones in particular, can have really bizarre color behaviors and the display profiles that compensate for their bizarreness are equally bizarre. Yes, you need a conversion to the display profile to display the image on screen, but the math of the color manipulations should happen in the original color space of the image to avoid permanent loss of color data.


  2. The actual bug: In the saving process, iPhoto 5 does not convert to the Generic RGB color space, but rather just (mis)tags the display profile color data as Generic RGB. This is why some people don't really notice the problems while it is stunningly obvious to others: the closer your display profile is to the Generic RGB profile (think: CRT users), the dramatic the impact of the erroneous profile assignment. Folks with profiled LCD displays, particularly bad ones like in the iBook and 12" powerbook, will notice a pretty dramatic color shift.


If you care at all about the color of your images, don't use iPhoto for editing. Even without the bug, iPhoto will mess up colors by design.

mdeatherage
2005-07-12 23:04:51
It is actually quite rare
...for an OS update to include updates to specific Apple applications that are not part of the OS itself. The bug as you describe it is not in the Image Capture system that iPhoto and others use to import the pictures (and assign the profiles), but in iPhoto itself.


A fix in 10.4.2 would therefore require a) a second installation package to check for the presence of iPhoto 5.0.x and install the correct files, and b) a separate iPhoto 5.0.x update for people using iLife '05 but not running Tiger. This seems like a lot of work for not much benefit - if they have a bug fix, they'll probably release it as an iPhoto update.


As for solutions, I'd recommend loooking at ColorSyncScripting.app, in the /System/Library/ScriptingAdditions folder. It can embed and umbed profiles, though I don't know offhand if the "embed" verb actually color matches or just adds the profile to the image file.

John_Fieber
2005-07-12 23:11:35
It is actually quite rare
Rare, but it isn't clear to those outside Apple (or possibly inside Apple) whether the root cause of the problem is in iPhoto, the application, or ColorSync, the OS. I'm guessing the former since I'm unaware of any version of iPhoto that hasn't had color management bugs ranging from notable to huge. Other applications manage to use the ColorSync APIs without any such trouble.
derrick
2005-07-12 23:16:26
RE: Oh well...
Yes they do! How about this Automator workflow:


Get Selected iPhoto Items
Open Images in Photoshop
Trigger Photoshop Action - Convert to sRGB
Save As
Import Photos into iPhoto

John_Fieber
2005-07-12 23:18:25
Workaround
Pretty ugly but...


iPhoto notes the display profile when it launches, but it does not pay attention to changes in the display profile after launch.


Noting that iPhoto converts the image to the display profile for editing, then mis-tags that color data as Generic RGB when saving, you can avoid the color shift by setting your display profile as Generic RGB before launching iPhoto. Once launched, you can set it back to the proper profile.


Of course, now iPhoto has a completely mistaken idea of the display so the colors will LOOK wrong, but the correct color data will remain more or less intact. The only damage is in the initial conversion from the initial color space to the display profile (which you set as Generic RGB) and that would be basically nil if the starting point was sRGB.

derrick
2005-07-12 23:32:02
RE: Generic RGB is a red herring
First of all, thanks for your posts John. Very interesting stuff.


I've read elsewhere about the Generic RGB mistagging, as opposed to actually converting the profile, but am confused by the working space on my PowerBook 17".


For example, I set my working space in Photoshop CS to be sRGB. If iPhoto is only mistagging my pictures, and they are still sRGB, then I shouldn't notice any shift at all while working in Photoshop, right?


What am I missing here? Because I sometimes notice a shift (I think unless I'm imaging it, which is possible) when I "convert" back to sRGB in Photoshop.


Confusing stuff, but important.

joemaller
2005-07-13 07:53:36
Wouldn't this come in an iPhoto update?
I think there is an underlying problem with ColorSync rather than iPhoto. The iPhoto color shift bug seems to have appeared with 10.4. Using SIPS (Apple's Scriptable Image Processing Server), I found a significant change (http://joemaller.com/2005/06/22/post548/iphoto-color-shift-bug-identified) in the way 10.4 handles untagged sRGB images vs the 10.3.9.


In 10.3.9, the sips -profile command returned :


$ sips -g profile DSC04737.JPG
profile:


In 10.4.x, sips -profile returns generic RGB:


$ sips -g profile DSC04737.JPG
profile: Generic RGB Profile


I suspect this means iPhoto is revealing a bug in the underlying ColorSync frameworks. This bug would be misreading the image's colorspace and shifting pixels before applying the changes in iPhoto.


What I don't know is why the problem gets worse with each iteration. If the image is assigned generic RGB after the first modification, it shouldn't change on subsequent edits.

eberhardgronau
2005-07-13 08:10:12
ColorSync is to blame
Hi,
Apple Changed the behaviour of ColorSync with Tiger. The system uses now the generiv color profile for everything without a profile. It seems to me the iphoto problem is related to this. I found this very annoying. So I trashed the Generic profile and duplicated the Adobe RGB profile (because I use the later as working profile all the time) and named it Generic profile. From that moment everything was fine. Not very sophisticated but it worked. I presume, if one would do the same with the sRGB profile it should work with iphoto. Sorry for bad english. Greetings from Germany.
brianimator2
2005-07-13 10:13:34
RE: Oh well...
cool... or better yet...
use a Preview action:
'Apply ColorSync Profile' -> (choose from Profile: menu)-> Display -> sRGB profile (or the other one)


This keeps you from having to use poky Photoshop. (poky for startup anyways)

brianimator2
2005-07-13 10:29:29
RE: Oh well...
I tried this in Automator:
1- (iPhoto action) Get Selected iPhoto Items
2- (Preview action) Apply ColorSync Profile to Images (pick from drop-down menu - sRGB options are under the 'Display' submenu)


I saved mine as a script accessible from the main menubar.


Does this work for you?

John_Fieber
2005-07-13 11:09:34
RE: Generic RGB is a red herring
If your image is (a) tagged with an ICC profile--any ICC profile--and (b) you do not edit it in iPhoto, then iPhoto will do the Right Thing. It is only when you edit that iPhoto starts mucking around and breaking things.


In other words, you can do whatever you like with the image with respect to the color space in Photoshop.[1]


Now, if do edit an image in iPhoto, at the end of the process the RGB values will have been converted to the display profile but tagged as Generic RGB. Ooop!


You can fix this by tagging the image with the display profile. This will allow correct interpretation of the RGB values by profile-aware applications, but if you want to post the image to the web or send it to a photo lab you would then want to convert it to sRGB.


But note, a series of edits in iPhoto cannot be undone this way.


-john


[1] It is a very good idea to set the Photoshop Color Management Policy to "Preserve Embedded Profiles". This way you will not get any extraneous, lossy and possibly undesired profile conversions in your routine work. When you want a profile change, do it explicitly (Image:Mode:Convert To Profile...).

samkass
2005-07-13 13:58:39
iPhoto 5.0.3
MacCentral is reporting that iPhoto 5.0.3 was released today and fixes "the" color-shift-on-edit problem. I am curious if the ColorSync profile problem is also addressed.
derrick
2005-07-13 14:14:31
RE: Oh well...
touche!
derrick
2005-07-13 14:19:32
RE: iPhoto 5.0.3
I'm downloading now and will test after dinner (here in Boston). Will post my findings later tonight... cross your fingers kids.
brianimator2
2005-07-13 15:04:38
RE: Oh well...
Yeah, we're all going to find incredible uses for Automator. I've got a script that makes it a snap to build folder structures for new web clients... really cool. Come on Apple (and third-party devs), more actions!!
John_Fieber
2005-07-13 15:30:00
iPhoto 5.0.3
Just tested. It does fix the problem.


It still converts to Generic RGB which is, in my opinion, stupid, but it least the result really is Generic RGB instead of the display profile tagged with Generic RGB.


-john

joemaller
2005-07-13 15:39:07
RE: iPhoto 5.0.3
Seems to be fixed!


After a dozen successive croppings there was a slight lightening, but that could just be the result of multiple JPEGings.


Finally!

derrick
2005-07-13 17:00:05
RE: iPhoto 5.0.3
Seems to work for me too, but I'm still bugged by the Generic RGB tagging.


Are you guys going to convert back to your original color space, or just leave it as is?

michael98
2005-07-14 13:01:21
iPhoto 5.03
It's still useless to me.


I just tried to clean up some pictures I was sent only minutes ago. About 4 times out of 5 the anti-red-eye tool simply didn't work. The rest of the time it worked but then, on saving, iPhoto reverted the eyes to red again.


HOPELESS! Totally and utterly hopeless.


I suppose it is a case of having to fork out for Photoshop Elements, because Apple seems to be unable to make iPhoto work as it should.