Nah. I checked the results on two of my devices and the simulator to make sure I had a grip on what was going wrong.
When I took all the saved images and opened them up. I’d expect each set of them to have the same error it’s not a colorspace profile. The reason this mattered was that I was saving out the image within the app just to test and compare. We were doing drivers’ license photos, so if things were going wrong, I had to know by how much. All I can remember from that was that it was something related to the colorspace profile that was added to the image based on which device the image was saved onto. > On Nov 16, 2017, at 9:58 PM, Rick Mann <rm...@latencyzero.com> wrote: > > Do you literally mean moving the iOS simulator window to a different monitor, > even though there’s never a display context in any of this code? > > -- > Rick Mann > rm...@latencyzero.com > >> On Nov 16, 2017, at 19:55, Alex Zavatone <z...@mac.com> wrote: >> >> I was basing my assumption on this line of your email: >> >>>>> In the unit test, I load a saved version of one of those images from a >>>>> PNG file to UIImage, get at the buffer, pass it to my code, and then >>>>> compare the result to a saved version of that same output. >> >> In that, I was assuming that the image from the CGImage that you mention is >> similar should be the same. >> >> My guess here is that the PNG that you saved has a colorspace applied to it. >> But it seems odd that the bytes are different unless the image is run >> through a transform with CI. I wouldn’t expect one either. >> >> About 3 years ago when I was looking into similar things, I came across a >> nice explanation of the CI pipeline, in the Apple Docs that did a good job >> explaining what happens where and when. Even in the display of image items >> that are saved/loaded to/from disk. >> >> Everything came down to not accommodating the color profile or something >> related to that. >> >> I even got different results when testing on 2 monitors. >> >> An easy way to rule out my hypothesis would be to check the results on two >> different displays with different color calibration and see if that has some >> effect or no effect at all. >> >> >> A quick walk through the CI pipeline docs will probably trigger something >> that will answer your question. >> >> I’ll see it I can find the ones that were useful to me for you. >> >> >> >> >> >> >>> On Nov 16, 2017, at 9:29 PM, Rick Mann <rm...@latencyzero.com> wrote: >>> >>> OpenCV is not relevant in this case, that was just background that I >>> probably didn't need to include. >>> >>> I'm generating an image buffer, saving it as PNG through UIImage, then >>> generating it again, and comparing it to the UIImage bytes I get by opening >>> the previously-saved image. I'm not specifying anything other than device >>> RGB color space when I create the CGBitmapContext I use to generate the >>> image buffer. >>> >>>> On Nov 16, 2017, at 19:27 , Alex Zavatone <z...@mac.com> wrote: >>>> >>>> Before looking into OCV, my wild guess is that it may have to do with the >>>> colorspace of the image. What are you setting it to? Profile Name: sRGB >>>> IEC61966-2.1? >>>> >>>> >>>>> On Nov 16, 2017, at 8:31 PM, Rick Mann <rm...@latencyzero.com> wrote: >>>>> >>>>> I'm trying to write a unit test for some code I wrote that generates one >>>>> image from another. In the main app, the source data comes from Open CV >>>>> as a buffer of 3 byte-per-pixel elements. My code generates a CGImage. In >>>>> the unit test, I load a saved version of one of those images from a PNG >>>>> file to UIImage, get at the buffer, pass it to my code, and then compare >>>>> the result to a saved version of that same output. >>>>> >>>>> The saved version is a PNG. I load that, and then get the data buffer >>>>> using >>>>> >>>>> let fiData = fi.dataProvider?.data as Data? >>>>> >>>>> I do a similar thing with the generated CGImage. Then I compare the two >>>>> buffers, byte by byte. They are similar, but contain differences >>>>> (sometimes more than I would expect). But if I save both as PNG and look >>>>> at them in Preview they look identical. >>>>> >>>>> My guess is something's happening somewhere with color correction. In my >>>>> code, I make a CG(bitmap)Context, specifying device RGB color space >>>>> (should that be generic?). I don't really know what happens to the PNGs I >>>>> save and load. >>>>> >>>>> Is there a way to ensure the bytes in the buffer are compressed and >>>>> decompressed exactly as written? >>>>> >>>>> -- >>>>> Rick Mann >>>>> rm...@latencyzero.com >>>>> >>>>> >>>>> _______________________________________________ >>>>> >>>>> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >>>>> >>>>> Please do not post admin requests or moderator comments to the list. >>>>> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >>>>> >>>>> Help/Unsubscribe/Update your Subscription: >>>>> https://lists.apple.com/mailman/options/cocoa-dev/zav%40mac.com >>>>> >>>>> This email sent to z...@mac.com >>>> >>> >>> >>> -- >>> Rick Mann >>> rm...@latencyzero.com >>> >>> >> > _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com