Преобразование JPG в BMP с точными спецификациями

#image #imagemagick #jpeg #image-manipulation #bmp

#изображение #imagemagick #jpeg #обработка изображений #bmp

Вопрос:

Я пытаюсь изменить отображаемую заставку загрузки устройства AMLogic (используя этот инструмент: https://github.com/steeve/aml-imgpack ). У меня есть JPG, который я конвертирую в BMP, в зависимости от потребностей устройства (скажем https://unsplash.com/photos/SnXIF8_2oPw ) но цвета совершенно неправильные, изображение разбито на «линии», а некоторые части слева расположены справа (немного похоже на повторение изображения, но не полностью).

Исходное изображение имеет следующие атрибуты:

 $ magick identify -verbose ../original/bootup.bmp
Image:
  Filename: ../original/bootup.bmp
  Format: BMP (Microsoft Windows bitmap image)
  Class: DirectClass
  Geometry: 1920x1080 0 0
  Resolution: 28.34x28.34
  Print size: 67.7488x38.1087
  Units: PixelsPerCentimeter
  Colorspace: sRGB
  Type: TrueColor
  Base type: Undefined
  Endianness: Undefined
  Depth: 8-bit
  Channel depth:
    Red: 8-bit
    Green: 8-bit
    Blue: 8-bit
  Channel statistics:
    Pixels: 2073600
    Red:
      min: 0  (0)
      max: 255 (1)
      mean: 4.64305 (0.018208)
      standard deviation: 31.5717 (0.12381)
      kurtosis: 47.4739
      skewness: 6.93758
      entropy: 0.0513943
    Green:
      min: 0  (0)
      max: 255 (1)
      mean: 3.77976 (0.0148226)
      standard deviation: 26.4192 (0.103605)
      kurtosis: 55.8096
      skewness: 7.40689
      entropy: 0.0502694
    Blue:
      min: 0  (0)
      max: 239 (0.937255)
      mean: 1.81429 (0.00711485)
      standard deviation: 13.2764 (0.0520643)
      kurtosis: 84.5432
      skewness: 8.63456
      entropy: 0.0528362
  Image statistics:
    Overall:
      min: 0  (0)
      max: 255 (1)
      mean: 3.41236 (0.0133818)
      standard deviation: 23.7558 (0.0931598)
      kurtosis: 67.5353
      skewness: 8.07788
      entropy: 0.0515
  Rendering intent: Perceptual
  Chromaticity:
    red primary: (0,0)
    green primary: (0,0)
    blue primary: (0,0)
    white point: (0.3127,0.329)
  Matte color: grey74
  Background color: white
  Border color: srgb(223,223,223)
  Transparent color: none
  Interlace: None
  Intensity: Undefined
  Compose: Over
  Page geometry: 1920x1080 0 0
  Dispose: Undefined
  Iterations: 0
  Compression: Undefined
  Orientation: Undefined
  Convex hull: 931,391 932,391 1111,432 1223,484 1230,488 1247,544 1247,549 1244,551 1015,623 919,623 704,551 688,471 688,448 696,432 931,391
  Minimum bounding box: 1247,391 1247,623 688,623 688,391
  Properties:
    date:create: 2020-10-31T22:40:38 00:00
    date:modify: 2020-10-31T22:40:38 00:00
    minimum-bounding-box:_p: 931,391
    minimum-bounding-box:_q: 932,391
    minimum-bounding-box:_v: 1015,623
    minimum-bounding-box:angle: 0
    minimum-bounding-box:area: 129688
    minimum-bounding-box:height: 559
    minimum-bounding-box:unrotate: -0
    minimum-bounding-box:width: 232
    signature: 31151e021e5d4cdde8d345165d8eb9cd6489f307272c8ca455d038002885d405
  Artifacts:
    verbose: true
  Tainted: False
  Filesize: 3.95515MiB
  Number pixels: 2073600
  Pixels per second: 79.4977MP
  User time: 0.020u
  Elapsed time: 0:01.026
  Version: ImageMagick 7.0.10-30 Q16 x86_64 2020-09-20 https://imagemagick.org
  

Я попытался преобразовать, используя:

 $ mogrify -format bmp ../new_bootup.jpg
$ mogrify -format bmp -type TrueColor ../new_bootup.jpg
$ mogrify -format bmp -define bmp:subtype=RGB565 ../new_bootup.jpg
  

но изображение отображалось некорректно. Вопрос в том, какие флаги я должен использовать (или какой инструмент я должен использовать) для достижения максимально близкого соответствия исходным атрибутам?

Комментарии:

1. Какое ваше входное изображение по ссылке? Возможно, опубликуйте его или ссылку на него. Это цвет ввода или оттенки серого? Является ли входной JPG в формате CMYK или RGB? Если в CMYK, это может быть проблемой. Какая у вас версия и платформа для обмена мгновенными сообщениями? Вы пробовали использовать convert, а не mogrify. convert image.jpg img.bmp или для вывода вы можете попробовать BMP3: img.bmp или BMP2: img.bmp. Возможно, ваш IM поврежден. Попробуйте установить еще раз, если вышеуказанное не помогло. Также убедитесь, что в вашем временном каталоге достаточно места.

2. Если это черно-белое изображение, я могу легко преобразовать его, используя IM 6.9.11.34 или IM 7.0.10.34 на Mac OSX Sierra. Я могу нормально просматривать его с помощью нескольких инструментов, включая отображение мгновенных сообщений. Я не вижу полос или смещений. convert photo-1568876694728-451bbf694b83.jpeg photo-1568876694728-451bbf694b83.bmp . Поэтому я подозреваю проблему с вашей версией или установкой IM.