Bug 50117

Summary: pixel interpolation error
Product: WebKit Reporter: jay <jay>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: krit, mdelaney7, zimmermann
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
screengrab 1
none
screengrab 2
none
screengrab 3
none
screengrab 4 showing opacity
none
script to produce banding effect (ie not by design)
none
uses percentage width and height
none
Firefox screenshot
none
shows relative merits none

jay
Reported 2010-11-26 10:22:47 PST
somewhere the rendering of pixel level graphics is broken, banding is readily evident in the attached images and is limited to Safari-webkit and Chromium, not able to be reproduced using Opera nor Mozilla I have attached a testcase that uses lerp to interpolate colour values, and produce gradients across 2 dimensions, rather than a simple linear gradient. I have not been able to identify precise reasons, however in a broad range of situations, using a variety of methods, banding is always present.
Attachments
screengrab 1 (90.09 KB, image/tiff)
2010-11-26 10:24 PST, jay
no flags
screengrab 2 (35.84 KB, image/tiff)
2010-11-26 10:24 PST, jay
no flags
screengrab 3 (108.09 KB, image/tiff)
2010-11-26 10:25 PST, jay
no flags
screengrab 4 showing opacity (35.90 KB, image/tiff)
2010-11-26 10:26 PST, jay
no flags
script to produce banding effect (ie not by design) (1.26 KB, image/svg+xml)
2010-11-26 10:27 PST, jay
no flags
uses percentage width and height (1.32 KB, image/svg+xml)
2010-11-26 10:45 PST, jay
no flags
Firefox screenshot (115.26 KB, image/png)
2010-11-26 17:49 PST, Alexey Proskuryakov
no flags
shows relative merits (59.83 KB, image/tiff)
2010-11-27 00:36 PST, jay
no flags
jay
Comment 1 2010-11-26 10:24:29 PST
Created attachment 74946 [details] screengrab 1
jay
Comment 2 2010-11-26 10:24:53 PST
Created attachment 74947 [details] screengrab 2
jay
Comment 3 2010-11-26 10:25:26 PST
Created attachment 74948 [details] screengrab 3
jay
Comment 4 2010-11-26 10:26:03 PST
Created attachment 74949 [details] screengrab 4 showing opacity
jay
Comment 5 2010-11-26 10:27:42 PST
Created attachment 74950 [details] script to produce banding effect (ie not by design)
jay
Comment 6 2010-11-26 10:31:36 PST
apologies, need to qualify testcase better.
jay
Comment 7 2010-11-26 10:45:42 PST
Created attachment 74951 [details] uses percentage width and height
jay
Comment 8 2010-11-26 10:48:40 PST
it is not that Opera and Mozilla cannot be made to produce banding, rather it is far more difficult. In the particular use-case, not given as large file, I have not yet found a way to reduce banding, which is not present at all in other browsers
Alexey Proskuryakov
Comment 9 2010-11-26 17:49:24 PST
Created attachment 74957 [details] Firefox screenshot FWIW, I'm seeing the same in Firefox 3.6 on Mac.
jay
Comment 10 2010-11-27 00:36:55 PST
Created attachment 74959 [details] shows relative merits
jay
Comment 11 2010-11-27 00:41:02 PST
ap, please compare safarti, mozilla and opera in similar size windows etc. I have attached an example, not contrived,just as quickly as possible. full screen height then shifted left to overlay. there is a considerable difference. could raise issue with working group? obviously no client should interpolate white lines, where data has been provided. on the other hand there is a 'speed' issue, as interpolation takes cycles.
Dirk Schulze
Comment 12 2010-11-27 01:18:52 PST
(In reply to comment #11) > ap, > > please compare safarti, mozilla and opera in similar size windows etc. > > I have attached an example, not contrived,just as quickly as possible. > > full screen height then shifted left to overlay. > > there is a considerable difference. > > could raise issue with working group? > > obviously no client should interpolate white lines, where data has been provided. > > on the other hand there is a 'speed' issue, as interpolation takes cycles. Can you check with webkit trunk please? I can confirm a visual difference between Safari 5 and FF as well as Opera. But it seems to work in trunk. Just download a WebKit nightly.
jay
Comment 13 2010-11-27 01:46:59 PST
Dirk, using r72487
jay
Comment 14 2010-11-27 01:47:36 PST
Version 5.0.3 (6533.19.4, r72487)
jay
Comment 15 2010-11-27 02:14:27 PST
filed as errata: define pixel interpolation when scaling http://www.w3.org/Bugs/Public/show_bug.cgi?id=11417
Note You need to log in before you can comment on or make changes to this bug.