Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » [решено] Задача по автоматизации. Склейка 2х jpg файлов

Ответить
Настройки темы
[решено] Задача по автоматизации. Склейка 2х jpg файлов

Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Сайт | Отправить PM | Цитировать


Добрый день.

Есть более тысячи файлов изображений. Размер маленький, каждый 400-600кб. Файлы одинаковые - ширина, высота, ориентация (книжная) и битность (серый 8bit). Имена файлов последовательно (2011_0001, 2011_0002 ... и т.д.). Склейка - по узкой стороне.

Требуется "взять" первый (нечетный) и снизу приклеить второй (четный) и сохранить в файл 2011_s***. Вместо звездочек нарастающий номер. Идеальный вариант: указать 2 папки - откуда брать и куда складывать. Работа разовая - ПО не критично, поставим, сделаем и снесем.

Какие уважаемое общество может предложить варианты.

Отправлено: 19:11, 22-08-2011

 

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата pzh2393:
А с чем может быть связана ошибка "Could not locate automation class named "WIA.ImageFile"" при запуске указанного выше VBS скрипта? »
С отсутствием данного объекта Automation. На какой ОС была попытка исполнить скрипт?

Цитата pzh2393:
И каким образом там вообще осуществляется склейка изображений, с пережатием или без? »
Полагаю, что первое. Точный ответ может дать только команда разработчиков из Microsoft.

Цитата pzh2393:
Собственно был бы очень благодарен если подскажите решение по объединению двух JPEG файлов (одинаковая ширина и высота, а так же параметры сжатия) в один, »
Излагайте детали. В подробностях.

Цитата pzh2393:
…желательно lossless. »
А это возможно в принципе?! При любых значениях ширины и высоты?

Цитата pzh2393:
А так же прошу подсказать, что необходимо поправить в скрипте, если правому файлу "***.jpg" соответсвует левый "***_.jpg" (имя файла произвольной длинны). »
Например?

Отправлено: 15:13, 27-01-2015 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 93
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Iska:
С отсутствием данного объекта Automation. »
Для работы скрипта нужен дополнительный софт?
Цитата Iska:
На какой ОС была попытка исполнить скрипт? »
Windows XP SP3 x86 RU
Цитата Iska:
Излагайте детали. В подробностях. »
Есть парочка сотен (до тысячи) JPEG картинок в с вое время нарезанных в Фотошоп с одинаковым размером (230х153 пикселей) и сжатыми с одними параметрами (если не ошибаюсь Baseline:Optimized 8/12)
В связи с оптимизацией веб-страниц на которых они располагаются встал вопрос с объединением пар изображений в одно.
Цитата Iska:
Например? »
1.jpg и соответствующая ему пара 1_.jpg объединить например в 1_out.jpg
0909.jpg и соответствующая ему пара 0909_.jpg в 0909_out.jpg

Хотел попробовать приведенный здесь скрипт (т.к. ввариант с "входящей" и "исходящей" папками тоже подходит), но почти сразу появилась вышеуказанная ошибка.
Цитата Iska:
А это возможно в принципе?! »
Всемирный источник знаний однозначно не отвечает на этот вопрос...
Вот пару найденных мной обсуждений данного вопроса:
http://www.programmersforum.ru/showthread.php?t=245229
http://forum.ru-board.com/topic.cgi?forum=36&topic=1429
http://forum.ixbt.com/topic.cgi?id=20:15554
http://sasgis.org/mantis/view.php?id=1203

В ходе поисков так же нашлась и эта когда-то решенная тема.

Отправлено: 15:42, 27-01-2015 | #12


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата pzh2393:
Для работы скрипта нужен дополнительный софт? »
Описания:
Windows Image Acquisition Automation Layer
Windows Image Acquisition (WIA) (Windows)

Ссылка на загрузку библиотеки «Windows Image Acquisition Library v2.0» и SDK: … Упс, убрали с сайта Microsoft. Попробую вечером посмотреть, что можно сделать.
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:35, 27-01-2015 | #13


Пользователь


Сообщения: 93
Благодарности: 2

Профиль | Отправить PM | Цитировать


Спасибо за объяснения, буду пробовать.

Кстати, если я правильно определил и нашел, то скачать можно по этой ссылке:
http://vbnet.mvps.org/files/updates/wiaautsdk.zip

Отправлено: 19:08, 27-01-2015 | #14


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата pzh2393:
Кстати, если я правильно определил и нашел, »
Правильно. Это оно. Я сейчас загрузил архив и сравнил с имеющимся у меня в наличии — полностью совпадает. Описание установки «ручками» приведено в файле «ReadMe.txt» внутри архива.

Выложите для экспериментов штуки три-четыре пары изображений на RGhost, упаковав их в архив.

Отправлено: 19:24, 27-01-2015 | #15


Пользователь


Сообщения: 93
Благодарности: 2

Профиль | Отправить PM | Цитировать


Теперь все сработало, но видимо все же придется искать другое решение.
С таким уровнем компрессии по умолчанию - мне никак не подходит.
Жаль что lossless склейка JPG похоже до ума так и не доведена.
Я так до конца и не понял, может ли эта утилита соединять.
http://jpegclub.org/jpegtran/
Все попытки её вызова так ни к ему и не привели, у меня постоянно пишет какую-нибудь ошибку синтаксиса командной строки.

Цитата Iska:
Выложите для экспериментов штуки три-четыре пары изображений на RGhost, упаковав их в архив. »
http://rghost.ru/8WhBJn5t8

Последний раз редактировалось pzh2393, 27-01-2015 в 20:32.


Отправлено: 20:23, 27-01-2015 | #16


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


pzh2393, это те реальные файлы, что требуется объединить? Я что-то сомневаюсь. Как Вы их ранее могли «нарезать» из одной картинки, если это и есть одна и та же картинка, только разных форматах?

Так же не представляю, как Вы вообще предполагали без пересжатия объединить изображения в разных форматах:
Скрытый текст
Код: Выделить весь код
                             Common
File name            : E:\Песочница\0427\sample\woman.jpg
File size            : 6542 bytes
Image type           : image/jpeg
Width                : 153 px
Height               : 200 px
Pixel format         : 8 bpp, indexed
Color space          : Grayscale
                              EXIF
GDI+.Luminance Table : 10

и
Скрытый текст
Код: Выделить весь код
                             Common
File name              : E:\Песочница\0427\sample\woman_.jpg
File size              : 9044 bytes
Image type             : image/jpeg
Width                  : 153 px
Height                 : 200 px
Pixel format           : 24 bpp, RGB
Color space            : YCBCR
                              EXIF
GDI+.Luminance Table   : 10
GDI+.Chrominance Table : 11

Поясните этот вопрос.

Отправлено: 06:58, 28-01-2015 | #17


Пользователь


Сообщения: 93
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Iska:
это те реальные файлы, что требуется объединить? Я что-то сомневаюсь. »

Да, вы меня подловили - это не именно те файлы.
Дело в том, что руководитель категорически запретил выкладывать какие-либо файлы проекта, пришлось выкручиваться.
Мне, как дизайнеру, не пришло в голову, что могут быть такие технические отличия, мне просто было так проще обозначить отличия.
Суть "истинных" файлов почти такая же - два состояния одного и того же изображения, правда действительно обе картинки 24 bpp, RGB.
Если вам действительно интересна эта задача - можно попытаться объединить 1_.jpg c 0909_.jpg, обе картинки цветные, и уж точно сжаты с одними параметрами.

P.S. Собственно говоря это моя личная инициатива по автоматизации склейки старых изображений, задача изначально поставлена - сделать с "нуля" заново.

Последний раз редактировалось pzh2393, 28-01-2015 в 12:49.


Отправлено: 12:42, 28-01-2015 | #18


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


pzh2393, посмотрел, почитал… Полагаю, с Вашими изображениями — фокус не удастся.

Но почему Вам категорически не нравится простое склеивание:
Код: Выделить весь код
"C:\Program Files\ImageMagick-6.8.0-Q16\convert.exe" 1_.jpg 0909_.jpg +append Result.jpg
?
Скрытый текст

Отправлено: 02:48, 01-02-2015 | #19


Пользователь


Сообщения: 93
Благодарности: 2

Профиль | Отправить PM | Цитировать


Да, это один из возможных вариантов, я даже пробовал ключ позволяющий указать "качество" выходного JPEG.
Но для своих нужд, методом проб, так и не подобрал оптимальный вариант.
Либо выходной файл получается намного большим (примерно в 1,5, иногда в 2 раза) по "весу" (в килобайтах) чем суммарно два его "прародителя", либо уровень искажений при повторном сжатии практически уничтожает все мелкие элементы изображения, что так же нельзя принять как приемлемый результат.

P.S. Кстати, lossless склеивание с этими изображениями все равно не получился бы, поскольку выяснилось что для такой операции необходимо чтобы сторона была кратна 16.

Отправлено: 16:09, 01-02-2015 | #20



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » [решено] Задача по автоматизации. Склейка 2х jpg файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Графика - Пакетная проверка кучи jpg/jpeg файлов на предмет повреждений Jr.Janitor Программное обеспечение Windows 18 06-02-2014 22:01
CMD/BAT - Перемещение файлов (jpg) по их количеству dark-------13 Скриптовые языки администрирования Windows 3 27-04-2011 16:20
Разное - Задержка после закрытия файлов txt, jpg nikon161 Microsoft Windows 2000/XP 4 06-01-2010 23:58
[решено] Склейка частей изображения dzekka Хочу все знать 2 13-03-2004 12:54




 
Переход