Bug report #15447
Aerial imagery display issue: extraneous colourful lines displayed across image
|Affected QGIS version:||2.16.1||Regression?:||No|
|Operating System:||Windows||Easy fix?:||No|
|Pull Request or Patch supplied:||No||Resolution:||duplicate|
|Crashes QGIS or corrupts data:||No||Copied to github as #:||23373|
I have have a national aerial imagery dataset but some of the tiles display with extraneous colourful horizontal lines across them e.g. sx6345.jpg in the attached screen grab (qgis_aerial_imagery_zoomed_in.png).
There seems to be a threshold, which is different for each image, where they display fine at scales above a certain value. For example sx6345 displays fine at scale 1:19,845 and above, but has colourful lines across it at all scales below 1:19,845. This threshold seems to be somehow linked to the size of the actual QGIS application window (if I make the QGIS window bigger, the image displays fine at all scales above 1:19,856, see attached screen grab qgis_aerial_imagery_zoomed_out.png).
QGIS displays the following error for the above image if you try and create a virtual raster catalog that includes one of the affected images (Raster > Miscellaneous > Build Virtual Raster Catalog...).
Warning 1: libjpeg: Corrupt JPEG data: 285 extraneous bytes before marker 0xda
Note: this error doesn't appear when adding the image to QGIS.
The same image displays fine in ArcGIS, MapInfo and in a range of image applications including GIMP, MS Paint and Paint Shop Pro. The attached screen grabs are from the latest version of QGIS (2.16.1) but I’ve also tested them in multiple previous versions (including the current LTR 2.14.5) and unfortunately the behaviour is the same in all versions of QGIS.
The error message displayed in QGIS suggests a problem with the source JPEG file, but given it works in every other package I've tried it appears that QGIS is being more rigorous in the code it's using to display JPEG's than everything else.
Using GDAL to do a JPEG to JPEG conversion resolves the problem but given we can't easily identify the affected files we'd have to process them all, which isn't practical given the number of files we have.
The affected image can be downloaded from https://www.dropbox.com/s/7jjprkdtw2cbh0h/sx6345.zip?dl=0
Possibly related to Issue #15446