Page 1 of 1

-identify option is not detecting image corruption(?)

Posted: 2017-02-21T13:33:44-07:00
by troesler
Hello,
I am new to ImageMagick and am looking to implement a script to scan my photos directory for any corruption so that I can be notified and can take action. Reason being that I recently discovered that Windows (or some driver or hardware) caused wide-spread corruption of my photos - mainly consisting of images where the thumbnail appears normal but when the full image is open a large section of the image is greyed-out.
Once I get this command working manually I would like to script it either in PowerShell or more likely Perl which I am more familiar with.

For the purposes of manual testing I have been trying the following in PowerShell.
From what I read this should report an issue with the image (since the image is indeed damaged as detailed above - large section is greyed-out).

PS C:\Program Files\ImageMagick-7.0.4-Q16> magick -regard-warnings ./013.jpg -identify C:\temp\013_2.jpg
./013.jpg JPEG 2448x3264 2448x3264+0+0 8-bit sRGB 393KB 0.125u 0:00.121
PS C:\Program Files\ImageMagick-7.0.4-Q16>

Am I doing something wrong here? It doesn't seem to be detecting any corruption of this image...
Also is there a way I can avoid specifying an output file? I only want to detect the corruption for now.

Thank you in advance!!

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-21T13:59:40-07:00
by snibgo
troesler wrote:magick -regard-warnings ./013.jpg -identify C:\temp\013_2.jpg
If the image is valid, but mostly gray, that command won't report a problem.

Perhaps you can post a URL to an example.

An image that is mostly gray will average to a colour that is close to gray, with a low standard deviation.

You could also extract the thumbnail (with exiftool) and compare its statistics with the main image.

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-21T15:16:09-07:00
by fmw42
you do not need any output images only input images.

Code: Select all

magick identify image1 image2 image3 ... imageN
should list information about each of the images to the terminal

-regard warning will report warning messages also that often come from TIF meta tags that IM does not show. These are not errors, so you probably do not want to see them.

see http://www.imagemagick.org/script/identify.php

but in IM 7, you have to put magick before identify. (no hyphen)

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-22T08:45:40-07:00
by troesler
Thanks for the very quick response!!
Here is a link to another photo with the same issue:
https://1drv.ms/i/s!Ah9WFE4Q4Ohg_Fgm50fIyAIP3DC5

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-22T09:05:49-07:00
by snibgo
"identify -verbose 029.jpg" or "convert 029.jpg x.png" clearly show that file is corrupt.

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-22T10:55:11-07:00
by troesler
I didn't get an error on my side wh n I tried verbose. Just a whole lot of details about the file/photo.
Would you mind pasting some or all of the error message you see on your side?
I'm away for the next 10 days but will follow up when I return. Thanks for all your help!!

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-22T11:00:28-07:00
by fmw42
I see a lot of message about corrupt JPG at the end

Code: Select all

identify -verbose 029.jpg
Image: 029.jpg
  Format: JPEG (Joint Photographic Experts Group JFIF format)
  Mime type: image/jpeg
  Class: DirectClass
  Geometry: 3264x2448+0+0
  Resolution: 72x72
  Print size: 45.3333x34
  Units: PixelsPerInch
  Type: TrueColor
  Endianess: Undefined
  Colorspace: sRGB
  Depth: 8-bit
  Channel depth:
    red: 8-bit
    green: 8-bit
    blue: 8-bit
  Channel statistics:
    Pixels: 7990272
    Red:
      min: 40 (0.156863)
      max: 255 (1)
      mean: 145.24 (0.569571)
      standard deviation: 40.9405 (0.160551)
      kurtosis: 1.66673
      skewness: 1.76708
      entropy: 0.245574
    Green:
      min: 24 (0.0941176)
      max: 255 (1)
      mean: 135.988 (0.533285)
      standard deviation: 27.5781 (0.10815)
      kurtosis: 6.75665
      skewness: 2.24929
      entropy: 0.264644
    Blue:
      min: 2 (0.00784314)
      max: 242 (0.94902)
      mean: 132.462 (0.519459)
      standard deviation: 22.8442 (0.089585)
      kurtosis: 8.27334
      skewness: 1.86721
      entropy: 0.261402
  Image statistics:
    Overall:
      min: 2 (0.00784314)
      max: 255 (1)
      mean: 137.897 (0.540772)
      standard deviation: 31.8625 (0.124951)
      kurtosis: 5.14931
      skewness: 2.21543
      entropy: 0.257207
  Rendering intent: Perceptual
  Gamma: 0.454545
  Chromaticity:
    red primary: (0.64,0.33)
    green primary: (0.3,0.6)
    blue primary: (0.15,0.06)
    white point: (0.3127,0.329)
  Background color: white
  Border color: srgb(223,223,223)
  Matte color: grey74
  Transparent color: black
  Interlace: None
  Intensity: Undefined
  Compose: Over
  Page geometry: 3264x2448+0+0
  Dispose: Undefined
  Iterations: 0
  Compression: JPEG
  Quality: 95
  Orientation: TopLeft
  Properties:
    date:create: 2017-02-22T09:57:38-08:00
    date:modify: 2017-02-22T09:57:33-08:00
    exif:ApertureValue: 7983/3509
    exif:BrightnessValue: 4674/1219
    exif:ColorSpace: 1
    exif:ComponentsConfiguration: 1, 2, 3, 0
    exif:DateTime: 2014:02:22 17:50:54
    exif:DateTimeDigitized: 2014:02:22 17:50:54
    exif:DateTimeOriginal: 2014:02:22 17:50:54
    exif:DigitalZoomRatio: 68/25
    exif:ExifImageLength: 2448
    exif:ExifImageWidth: 3264
    exif:ExifOffset: 2276
    exif:ExifVersion: 48, 50, 50, 49
    exif:ExposureMode: 0
    exif:ExposureProgram: 2
    exif:ExposureTime: 1/40
    exif:Flash: 0
    exif:FlashPixVersion: 48, 49, 48, 48
    exif:FNumber: 11/5
    exif:FocalLength: 103/25
    exif:FocalLengthIn35mmFilm: 82
    exif:GPSAltitude: 1094/109
    exif:GPSAltitudeRef: 0
    exif:GPSImgDirection: 51612/203
    exif:GPSImgDirectionRef: T
    exif:GPSInfo: 5708
    exif:GPSLatitude: 33/1, 12/1, 338/100
    exif:GPSLatitudeRef: N
    exif:GPSLongitude: 117/1, 23/1, 2306/100
    exif:GPSLongitudeRef: W
    exif:GPSTimeStamp: 1/1, 50/1, 5367/100
    exif:ISOSpeedRatings: 40
    exif:Make: Apple
    exif:MakerNote: 65, 112, 112, 108, 101, 32, 105, 79, 83, 0, 0, 1, 77, 77, 0, 8, 0, 1, 0, 9, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 7, 0, 0, 2, 46, 0, 0, 0, 116, 0, 3, 0, 7, 0, 0, 0, 104, 0, 0, 2, 162, 0, 4, 0, 9, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5, 0, 9, 0, 0, 0, 1, 0, 0, 0, 135, 0, 6, 0, 9, 0, 0, 0, 1, 0, 0, 0, 132, 0, 7, 0, 9, 0, 0, 0, 1, 0, 0, 0, 1, 0, 9, 0, 9, 0, 0, 0, 1, 0, 0, 0, 19, 0, 0, 0, 0, 98, 112, 108, 105, 115, 116, 48, 48, 79, 17, 2, 0, 163, 0, 193, 0, 20, 0, 165, 0, 31, 1, 126, 0, 46, 0, 209, 0, 238, 0, 167, 0, 143, 0, 33, 0, 8, 0, 18, 0, 56, 0, 229, 0, 232, 0, 201, 0, 24, 0, 162, 0, 52, 1, 163, 0, 33, 0, 7, 1, 207, 0, 103, 0, 88, 0, 115, 0, 17, 0, 19, 0, 56, 0, 215, 0, 17, 1, 39, 1, 37, 0, 196, 0, 68, 1, 106, 1, 223, 0, 181, 1, 22, 1, 71, 0, 62, 0, 184, 0, 48, 0, 13, 0, 18, 0, 78, 0, 14, 1, 141, 1, 63, 0, 84, 1, 208, 1, 7, 2, 157, 1, 61, 2, 43, 2, 209, 0, 72, 0, 146, 0, 46, 0, 9, 0, 8, 0, 21, 0, 40, 1, 250, 0, 56, 0, 104, 1, 202, 1, 41, 2, 249, 1, 184, 2, 107, 2, 69, 1, 140, 0, 190, 0, 79, 0, 32, 0, 17, 0, 6, 0, 23, 1, 200, 0, 20, 0, 104, 0, 115, 1, 215, 1, 185, 1, 169, 2, 251, 1, 41, 1, 15, 1, 204, 0, 40, 0, 37, 0, 91, 0, 6, 0, 136, 0, 91, 0, 15, 0, 30, 0, 51, 1, 110, 0, 44, 1, 194, 1, 218, 1, 232, 1, 237, 0, 67, 0, 14, 0, 21, 0, 66, 0, 12, 0, 213, 0, 199, 0, 25, 0, 114, 0, 113, 0, 51, 1, 184, 1, 7, 2, 227, 1, 82, 1, 43, 0, 53, 0, 29, 0, 9, 0, 11, 0, 13, 0, 132, 1, 200, 1, 67, 0, 184, 0, 227, 1, 88, 2, 86, 2, 242, 2, 177, 2, 149, 1, 142, 0, 167, 0, 31, 0, 24, 0, 7, 0, 11, 0, 152, 0, 173, 0, 18, 0, 107, 0, 9, 1, 217, 0, 208, 0, 112, 0, 113, 0, 35, 0, 16, 0, 8, 0, 5, 0, 18, 0, 6, 0, 9, 0, 14, 0, 23, 0, 8, 0, 73, 0, 194, 0, 34, 0, 15, 0, 11, 0, 13, 0, 10, 0, 7, 0, 5, 0, 4, 0, 4, 0, 4, 0, 5, 0, 7, 0, 7, 0, 5, 0, 12, 0, 19, 0, 10, 0, 10, 0, 9, 0, 8, 0, 6, 0, 6, 0, 3, 0, 3, 0, 2, 0, 2, 0, 2, 0, 7, 0, 7, 0, 5, 0, 6, 0, 6, 0, 6, 0, 15, 0, 9, 0, 7, 0, 6, 0, 6, 0, 2, 0, 2, 0, 1, 0, 2, 0, 2, 0, 5, 0, 5, 0, 3, 0, 3, 0, 7, 0, 7, 0, 13, 0, 7, 0, 5, 0, 5, 0, 6, 0, 7, 0, 3, 0, 3, 0, 4, 0, 2, 0, 2, 0, 2, 0, 2, 0, 3, 0, 4, 0, 10, 0, 13, 0, 6, 0, 7, 0, 8, 0, 7, 0, 3, 0, 4, 0, 4, 0, 4, 0, 3, 0, 1, 0, 0, 0, 1, 0, 2, 0, 2, 0, 12, 0, 8, 0, 8, 0, 12, 0, 12, 0, 5, 0, 3, 0, 6, 0, 16, 0, 6, 0, 3, 0, 0, 8, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 12, 98, 112, 108, 105, 115, 116, 48, 48, 212, 1, 2, 3, 4, 5, 6, 7, 8, 85, 102, 108, 97, 103, 115, 85, 118, 97, 108, 117, 101, 89, 116, 105, 109, 101, 115, 99, 97, 108, 101, 85, 101, 112, 111, 99, 104, 16, 1, 19, 0, 0, 27, 243, 221, 208, 130, 116, 18, 59, 154, 202, 0, 16, 0, 8, 17, 23, 29, 39, 45, 47, 56, 61, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63
    exif:MeteringMode: 5
    exif:Model: iPhone 5s
    exif:Orientation: 1
    exif:ResolutionUnit: 2
    exif:SceneCaptureType: 0
    exif:SceneType: 1
    exif:SensingMethod: 2
    exif:ShutterSpeedValue: 2294/431
    exif:Software: 7.0.4
    exif:SubjectArea: 1631, 1221, 1795, 1079
    exif:SubSecTimeDigitized: 298
    exif:SubSecTimeOriginal: 298
    exif:thumbnail:Compression: 6
    exif:thumbnail:JPEGInterchangeFormat: 6006
    exif:thumbnail:JPEGInterchangeFormatLength: 4941
    exif:thumbnail:ResolutionUnit: 2
    exif:thumbnail:XResolution: 72/1
    exif:thumbnail:YResolution: 72/1
    exif:WhiteBalance: 0
    exif:XResolution: 72/1
    exif:YCbCrPositioning: 1
    exif:YResolution: 72/1
    jpeg:colorspace: 2
    jpeg:sampling-factor: 2x2,1x1,1x1
    MicrosoftPhoto:DateAcquired: 2014-03-17T15:21:51.217
    signature: eb77812756accb2035281c6dd447e60ae523e3d82b0fa4e9959b0ae7dc07763b
    unknown: 103/25, 103/25, 11/5, 11/5
  Profiles:
    Profile-exif: 10954 bytes
    Profile-xmp: 2476 bytes
  Artifacts:
    filename: 029.jpg
    verbose: true
  Tainted: False
  Filesize: 263KB
  Number pixels: 7.99M
  Pixels per second: 22.2MB
  User time: 0.280u
  Elapsed time: 0:01.359
  Version: ImageMagick 6.9.7-9 Q16 x86_64 2017-02-20 http://www.imagemagick.org
identify: Corrupt JPEG data: premature end of data segment `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
identify: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/351.
Fred-Weinhauss-Mac-mini:desktop fred$ 

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-22T11:20:55-07:00
by snibgo
troesler wrote:I didn't get an error on my side wh n I tried verbose.
I get no errors, but many warnings.

"identify -verbose 029.jpg 2>x.txt" shows:

Code: Select all

identify.exe: Corrupt JPEG data: premature end of data segment `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST0 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST1 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST2 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST3 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST4 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST5 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST6 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
identify.exe: Corrupt JPEG data: found marker 0xd9 instead of RST7 `029.jpg' @ warning/jpeg.c/JPEGWarningHandler/352.
Note that warnings go to stderr, not stdout.

Re: -identify option is not detecting image corruption(?)

Posted: 2017-02-22T12:21:18-07:00
by fmw42
I got the same messages above in my post without going to stderr.

Re: -identify option is not detecting image corruption(?)

Posted: 2017-04-23T14:06:47-07:00
by troesler
Thank you I now see the corruption messages when I test with that file.
However I have tested with some other known-bad files and no corruption is being reported.

Here is an example - similar to the other example provided it is mostly greyed-out:
https://1drv.ms/i/s!Ah9WFE4Q4Ohg_EvFlBirCrLuZAaH

Re: -identify option is not detecting image corruption(?)

Posted: 2017-04-23T17:20:32-07:00
by snibgo
Your link doesn't work for me; I get a blank page.

Perhaps the file is valid, with an image that is mostly gray. If this is always the same shade of gray, you can easily write a script to detect it. For example, turn all other colours black, and turn this gray into white. Then the mean value of the pixels is the proportion that were gray.

Re: -identify option is not detecting image corruption(?)

Posted: 2017-04-24T08:51:53-07:00
by troesler
Not sure why you can't access the link - I tested it from another system and my phone and it works from both.

I like your suggestion though, since in all the examples of this issue I have looked at (and likely all photos this is happening with) the corruption manifests itself with the exact same grey color taking up some portion of the photo.
Could someone point me in the right direction for how to structure the command line call to detect if the photo has more than say 5% of this specific color?

Grey/corruption color = [Red:128, Green:128, Blue:128, Hue:160, Sat:0, Lum:120]

Re: -identify option is not detecting image corruption(?)

Posted: 2017-04-24T09:14:46-07:00
by snibgo
Windows CMD syntax. Adjust as required for other shells.

Code: Select all

convert input.png -fuzz 1% -fill Black +opaque gray(50%) -fill White -opaque gray(50%) -format "%[fx:mean>0.05?1:0]" info:
This returns "1" or "0".

The fuzz 1% allows for slight rounding errors. 50% gray is turned to white and other colors to black, so "%[fx:mean]" would return 0.0 (no pixels are gray) to 1.0 (all pixels are gray). We compare this to "0.05", so an output result of "1" means "more than 5% are gray".

You can put the result into an environment variable, or directly report it or whatever you want.

EDIT: Today, I can see your picture, but can't download it. Weird.

EDIT2: Now I can download your picture. The problem may be my bad internet connection timing out.

My command works for your image. It is JPG, so the gray isn't a constant colour, so the fuzz is needed. 0.869 of the pixels are 50% gray, and this is more than 0.05, so the command returns "1".