0.92 vs 0.91 differences in exported PNG images

Bug #1661894 reported by Reptorian
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
New
Undecided
Unassigned

Bug Description

Testing how Inkscape imports .91 file to .92 file. 1000 DPI, and yes, I applied scale elements. That is all.

Operating System : Windows 10 x64
Inkscape Version : .92.1pre1 and .91

Revision history for this message
Reptorian (reptillia-39) wrote :
description: updated
Reptorian (reptillia-39)
description: updated
su_v (suv-lp)
tags: added: bitmap exporting precision
Revision history for this message
su_v (suv-lp) wrote :

Attached is image difference created with IM (compare) based on the command line exports to PNG with Inkscape 0.91 r13725 and Inkscape 0.92.0 r15299 (on OS X 10.7.5).

Command line export was done with the targeted output size in px:

$ inkscape --file NOReplication7.svg --export-area-page --export-width=4000 --export-height=4000 --export-png NOReplication7-$INK_VERSION-4000x4000.png

Image diff with ImageMagick:

$ compare NOReplication7-091-4000x4000.png NOReplication7-092-4000x4000.png -compose src NOReplication7-difference-091-092-compose.png

Comparing with cli export using lp:inkscape/0.92.x r15355 produces the same result as with 0.92.0 r15299.

summary: - .92 vs .91 results
+ 0.92 vs 0.91 differences in exported PNG images
Revision history for this message
su_v (suv-lp) wrote :

Attached is the image difference created with archived trunk builds (on OS X 10.7.5) from before and after the merge of the experiment branch in rev 13641: r13638 and r13646

The merge of the experimental branch did introduce the dpi switch, but also included other refactoring changes (possibly related to the approximation of arcs with bezier curves (?)).

Revision history for this message
su_v (suv-lp) wrote :

Lastly, I redid the comparison using PNGs exported via GUI to 4000x4000 px with Inkscape 0.91 and lp:inkscape/0.92.x r15355, with each of the available options for dpi change on load separately: all three comparisons show the same difference as the image attached in comment 2. This indicates AFAIU that the differences are not related to the DPI change (or to overall scaling of the document on load or export).

Revision history for this message
su_v (suv-lp) wrote :

The difference images created with IM attached earlier might be misleading wrt to the exact amount of the differences, my mistake (I definitely need to work on my IM skills).

Using perceptualdiff on the same PNG exports:
 3360 pixels are different for 4000x4000 px exports
 2435 pixels are different for 3600x3600 px exports
  207 pixels are different for 2000x2000 px exports
    0 pixels are different for 360x 360 px exports

Up-scaling via export resolution seems to be a contributing factor.

Revision history for this message
su_v (suv-lp) wrote :

Attached is an alternate test case (SVG created with Inkscape 0.91 r13725), to investigate whether the reported issue relates to certain geometry or path commands:
- left: group of concentric circles converted to path (the paths use arc commands);
  clipped to half of the page
- right: group of concentric circles converted to path, nodes nudged to force conversion to cubic bézier commands;
  clipped to other half of the page.

Revision history for this message
su_v (suv-lp) wrote :

The attached image difference (with IM compare, once again) of cli PNG export with 0.91 and 0.92 to 2560x2560 px shows that only the arc path commands (on the left) are affected by the reported issue.

Given the general progress in Inkscape 0.92, one could raise the question whether the "bug" is really with latest Inkscape 0.92, or whether maybe older Inkscape versions exported the arcs with less (geometric) precision at larger export sizes.

Revision history for this message
su_v (suv-lp) wrote :

Perceptualdiff (output attached):
 2545 pixels are different

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.