Доброго времени суток!
Нужна программа для склейки изображений в одно большое. Размеры где-то такие: 17 кусочков, каждый 60000x2500, итоговое изображение будет 60000x40000. montage из ImageMagick не предлагать, по нескольким причинам:
1) Он работает крайне медленно, с утра включил до вечера нифига не сделал.
2) Жрет нереально много места на диске. Откуда столько, непонятно. Даже если записать все изображения в RGB(по 3 байта на пиксель) это будет где-то 6.7GiB, а он 40+GiB есть и это не предел!
Хотел написать свою программу, мол считываем первую строку пикселей, пишем в большой файл и т.д., но в libpng не обнаружил ничего для этого пригодного.
Склейка PNG изображений
Модератор: /dev/random
-
Bizdelnick
- Модератор
- Сообщения: 21528
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Склейка PNG изображений
Попробуйте последовательно сконвертить в формат без сжатия, потом склеить и сконвертить обратно в PNG (convert - montage - convert).
Хотя неясна цель таких манипуляций. Работать с итоговым изображением всё равно будет нереально.
Хотя неясна цель таких манипуляций. Работать с итоговым изображением всё равно будет нереально.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
BratSinot
- Сообщения: 812
- ОС: Slackware64
Re: Склейка PNG изображений
Bizdelnick писал(а): ↑31.08.2011 21:58Попробуйте последовательно сконвертить в формат без сжатия, потом склеить и сконвертить обратно в PNG (convert - montage - convert).
montage один черт будет работать по хрен знает каким алгоритмам.
Хотя неясна цель таких манипуляций. Работать с итоговым изображением всё равно будет нереально.
Это уже моя проблема =)
-
MrClon
- Сообщения: 838
- ОС: Ubuntu 10.04, Debian 7 и 6
Re: Склейка PNG изображений
Разжать в BMP, а дальше «ручками». На сколько я помню формат BMP для этого достаточно отрезать от начала второго файла «вводную часть» и приклеить то что останется к концу первого файла. И так далее.
Изврат конечно, но должно выйти достаточно дёшево в плане потребления машинных ресурсов.
Изврат конечно, но должно выйти достаточно дёшево в плане потребления машинных ресурсов.
-
eddy
- Сообщения: 3321
- Статус: Красный глаз тролля
- ОС: ArchLinux
Re: Склейка PNG изображений
Хм, мне тоже интересно: неужели такой утилиты нет? Ее же написать (для конкретного случая, конечно, а не для общего) - полчаса работы для хорошего программиста, или вечер для бездаря, вроде меня.
По сути нужно лишь открыть все эти файлы, а затем построчно считывать и объединять в "широкую" строку, которую тут же записывать (со сжатием) в результирующий файл.
Хм, только сейчас это заметил:
Гуглите, да обрящете: png_get_rowbytes() (отсюда)
Запрос был элементарным: read png by line
По сути нужно лишь открыть все эти файлы, а затем построчно считывать и объединять в "широкую" строку, которую тут же записывать (со сжатием) в результирующий файл.
Хм, только сейчас это заметил:
Гуглите, да обрящете: png_get_rowbytes() (отсюда)
Запрос был элементарным: read png by line
RTFM
-------
KOI8-R - патриотичная кодировка
-------
KOI8-R - патриотичная кодировка
-
BratSinot
- Сообщения: 812
- ОС: Slackware64
Re: Склейка PNG изображений
-
eddy
- Сообщения: 3321
- Статус: Красный глаз тролля
- ОС: ArchLinux
-
BIgAndy
- Сообщения: 1923