Мои собственные любимые эти два:
compare image1 image2 -compose src diff.png
compare image1 image2 -compose src diff.pdf
Единственная разница между двумя вышеуказанными командами: первая показывает визуальное различие между двумя изображениями в виде файла PNG, вторая - в формате PDF.
Результирующий файл diff отображает все пиксели, которые различаются красным цветом. Те, которые остаются неизменными, выглядят белыми.
Коротко и сладко.
Обратите внимание, что ваши изображения не обязательно должны быть одного типа. Вы даже можете смешивать JPEG, TIFF, PNG - при одном условии: изображения должны быть одинакового размера (размер изображения в пикселях). Выходной формат определяется расширением выходного имени файла.
Если по какой-то причине вам требуется более высокое разрешение, чем разрешение по умолчанию (72 dpi), просто добавьте соответствующий -density
параметр:
compare -density 300 image1 image2 -compose src diff.jpeg
Иллюстрированные примеры
Вот несколько иллюстраций результатов для вариантов вышеуказанной команды. Примечание: два сравниваемых файла были даже файлами PDF , поэтому он работает и с ними (если они являются одностраничными)!
Слева: изображение с текстом. Центр: исходное изображение. Справа: различия (= текст) в красных пикселях.
compare \
porsche-with-scratch.pdf porsche-original.pdf \
-compose src \
diff-compose-default.pdf
Это та же команда, которую я предложил ранее выше.
Слева: изображение с текстом. Центр: исходное изображение. Справа: различия в «зеленых» пикселях.
compare \
porsche-with-scratch.pdf porsche-original.pdf \
-compose src \
-highlight-color seagreen \
diff-compose-default.pdf
Эта команда добавляет параметр, чтобы сделать пиксели разницы «seagreen» вместо красного по умолчанию.
Слева: изображение с текстом центра: Оригинал изображения Справа: Голубые дифференциалы (. Но ж определенный контекст фон)
л
compare \
porsche-with-scratch.pdf porsche-original.pdf \
-highlight-color blue \
diff-compose-default.pdf
Эта команда удаляет -compose src
деталь - результатом является поведение по умолчанию, в compare
котором в качестве светлого фона сохраняется первое из двух рассеянных изображений. (На этот раз с добавленным параметром, чтобы пиксели diff отображались синим цветом.)