Для меня бесполезно, поскольку молча рубит EXIF. А мне он нужен.
» Image Catalyst
Povor
Цитата:
Ах, вот оно что. А я подозревал, что действительно какой-то прорыв в минимизации jpeg...
Цитата:
Банальный XnView, с теми же настройками качества сжатия, даёт лучший результат
Ах, вот оно что. А я подозревал, что действительно какой-то прорыв в минимизации jpeg...
Cuprume
JPEGMini изменяет качество картинки, за счет этого и происходить оптимизация, ничего нового.
Beaver242
открываем файл Tools\config.ini и изменям параметр на false.
Цитата:
yug78
подтверждаю, Opera имеет проблемы с отображение JPEG обработанные через jpgcrush. Сделал, как ты посоветовал, все нормально работает.
JPEGMini изменяет качество картинки, за счет этого и происходить оптимизация, ничего нового.
Beaver242
открываем файл Tools\config.ini и изменям параметр на false.
Цитата:
de = true ;Strip Exif section (smaller JPEG file, but lose digicam info).
yug78
подтверждаю, Opera имеет проблемы с отображение JPEG обработанные через jpgcrush. Сделал, как ты посоветовал, все нормально работает.
@ lorents,
Sorry for not answering before, but I only had the password on this computer.
I believe that Adobe Photoshop library and Independent JPEG Group cjpeg library are equivalent, because they need to do the same operations to build a JPEG file, with one exception -they are using different quantization tables- cf.:
http://www.impulseadventure.com/photo/jpeg-quantization.html
But you can use the Independent JPEG Group cjpeg library using the -qtables switch and put there the tables from Adobe Photoshop, if you really want.
There is one problem, those two libraries are not adequate for lossless operations on images, such as those done by jpegtran, jpegoptim, jstrip and jpgcrush.
There is another lossless jpeg optimization: use a better Huffman encoding. I believe that it should be relatively straightforward to change jpegtran's source code to use the Vitter's algorithm from Google and gain another 1-2% on average.
@ yug78
I'm reading your post via Google translate, so you can answer in Russian.
I also have found that the images compressed by jpgcrush do not show in older operas. On the other hand, I'm not seeing those old operas in my site logs. So I don't care that much.
From my experience I also see a gain of 1-2% on average.
Are you saying that with your second code, images are displayed on older operas? That's an interesting and welcome find for another site I'm working with, because the owner only cared for opera...
Добавлено:
Thanks for posting it at encode.ru.
I think that Piotr Tarsa got it partially wrong:
1. Yes JPEG decoders do not build Huffman trees on the fly,
2. No, that is not a problem, because once we got the optimized Huffman tree, we use that one instead the classical one to encode the jpg.
Sorry for not answering before, but I only had the password on this computer.
I believe that Adobe Photoshop library and Independent JPEG Group cjpeg library are equivalent, because they need to do the same operations to build a JPEG file, with one exception -they are using different quantization tables- cf.:
http://www.impulseadventure.com/photo/jpeg-quantization.html
But you can use the Independent JPEG Group cjpeg library using the -qtables switch and put there the tables from Adobe Photoshop, if you really want.
There is one problem, those two libraries are not adequate for lossless operations on images, such as those done by jpegtran, jpegoptim, jstrip and jpgcrush.
There is another lossless jpeg optimization: use a better Huffman encoding. I believe that it should be relatively straightforward to change jpegtran's source code to use the Vitter's algorithm from Google and gain another 1-2% on average.
@ yug78
I'm reading your post via Google translate, so you can answer in Russian.
I also have found that the images compressed by jpgcrush do not show in older operas. On the other hand, I'm not seeing those old operas in my site logs. So I don't care that much.
From my experience I also see a gain of 1-2% on average.
Are you saying that with your second code, images are displayed on older operas? That's an interesting and welcome find for another site I'm working with, because the owner only cared for opera...
Добавлено:
Thanks for posting it at encode.ru.
I think that Piotr Tarsa got it partially wrong:
1. Yes JPEG decoders do not build Huffman trees on the fly,
2. No, that is not a problem, because once we got the optimized Huffman tree, we use that one instead the classical one to encode the jpg.
jverne
That images do not show in NEWER Operas (from circa 8.0-8.5, including the latest one 11.51).
And yes, with my second code they are displayed in that Operas.
That images do not show in NEWER Operas (from circa 8.0-8.5, including the latest one 11.51).
And yes, with my second code they are displayed in that Operas.
Nice to see that encode.ru now is accepting new members. I have answered Piotr there.
Xtreme #, где # - от 1 до 4 - кол-во одновременных потоков.
http://www.css-ig.net/png-compression-tools-comparaison.html
lorents, а где 2.1 взять, и что нового? в шапке Image Catalyst 2.0 от 28.08.2011
GoblinNN
Опубликую сегодня ночью, сейчас тестирую на ошибки.
Ты не мог бы скомпилировать jhead 2.93?
Опубликую сегодня ночью, сейчас тестирую на ошибки.
Ты не мог бы скомпилировать jhead 2.93?
lorents, а там вроде есть exe? и вроде без вирусов. ну на если просишь... http://rghost.ru/35622680
Image Catalyst 2.1 от 28.12.2011:
удален CryoPNG и PNGWolf;
изменен интерфейс проекта;
обновлен TruePNG 0.3.5.4 от 25.12.2011;
добавлен JType от 04.11.2011 (спасибо x128);
удалена функция создания файла Images.cvs;
обновлен JHead 2.93 от 02.12.2011 (спасибо GoblinNN);
полностью переписаны алгоритмы оптимизации PNG и JPEG;
полностью переписан "Image Catalyst.bat" (спасибо res2001);
добавлена функция проверки обновления проекта (спасибо res2001);
больше не создаются временные файлы в папках с изображениями (спасибо res2001);
добавлены jpeg_scan_rgb.txt и jpeg_scan_bw.txt (JPGCrush от 29.11.2008) (спасибо yug78);
отредактирована справка (ReadMe.txt);
исправлены некоторые ошибки.
удален CryoPNG и PNGWolf;
изменен интерфейс проекта;
обновлен TruePNG 0.3.5.4 от 25.12.2011;
добавлен JType от 04.11.2011 (спасибо x128);
удалена функция создания файла Images.cvs;
обновлен JHead 2.93 от 02.12.2011 (спасибо GoblinNN);
полностью переписаны алгоритмы оптимизации PNG и JPEG;
полностью переписан "Image Catalyst.bat" (спасибо res2001);
добавлена функция проверки обновления проекта (спасибо res2001);
больше не создаются временные файлы в папках с изображениями (спасибо res2001);
добавлены jpeg_scan_rgb.txt и jpeg_scan_bw.txt (JPGCrush от 29.11.2008) (спасибо yug78);
отредактирована справка (ReadMe.txt);
исправлены некоторые ошибки.
не хочет запускаться для повторной обработки файлов, ругается что уже запущена, пришлось подправить батник и убрать проверку " if exist "%systemroot%\system32\tasklist.exe" "
Цитата:
lorents
нельзя ли вернуть обработку вложенного каталога Images по умолчанию?
vladvertigo
Вы не первый человек, кто жалуется, надо будет изменить механизм.
mrjok
а смысл? у него есть поддержка Drag and Drop, просто перенесите папку с изображениями и наслаждайтесь. Может я что-то не понимаю?
Вы не первый человек, кто жалуется, надо будет изменить механизм.
mrjok
а смысл? у него есть поддержка Drag and Drop, просто перенесите папку с изображениями и наслаждайтесь. Может я что-то не понимаю?
Цитата:
lorents
Drag and Drop предпочитаю работу в файловом менеджере
mrjok
тогда запустите командную строку, запишите путь к "Image Catalyst.bat" и путь к изображению (или к папке с изображениями).
тогда запустите командную строку, запишите путь к "Image Catalyst.bat" и путь к изображению (или к папке с изображениями).
lorents, не. а сложно сделать логику? если в командной строке нет ничего и ничего не перетащили, то ищем в папке Images. если и там нет - выводим инфу что делать. так имхо все довольны будут.
lorents Спасибо за чудесную сборку!
В качестве идеи, было бы неплохо иметь возможность задавать дату изменения оптимизированного файла. Это важно для отимизации фотографий. Из всех exif данных многим важна лишь дата. Для меньшего размера файла лучше, чтобы дата не занимала место в exif, а была в свойствах файла. Было бы замечательно, если бы в ini файле была настройка "выбор даты изменения" создаваемого файла типа: "ставить текущую дату", "оставлять исходную дату", "брать дату из ixif, если ее нет, то исходную". Время обработки и сложность алгоритма это практически не изменит, а вот область применимости сборника увеличит. Я думаю, что практически у каждого где-то валяется папка с фотками, у многих довольно объемная. Плюс бэкапы этих фоток, чтобы не пропали. Уменьшить размер тысяч файлов (и их резервных копий)временами очень хочется. Фото могут быть сняты на разные камеры и информация о дате и времени бывает весьма полезна.
В качестве идеи, было бы неплохо иметь возможность задавать дату изменения оптимизированного файла. Это важно для отимизации фотографий. Из всех exif данных многим важна лишь дата. Для меньшего размера файла лучше, чтобы дата не занимала место в exif, а была в свойствах файла. Было бы замечательно, если бы в ini файле была настройка "выбор даты изменения" создаваемого файла типа: "ставить текущую дату", "оставлять исходную дату", "брать дату из ixif, если ее нет, то исходную". Время обработки и сложность алгоритма это практически не изменит, а вот область применимости сборника увеличит. Я думаю, что практически у каждого где-то валяется папка с фотками, у многих довольно объемная. Плюс бэкапы этих фоток, чтобы не пропали. Уменьшить размер тысяч файлов (и их резервных копий)временами очень хочется. Фото могут быть сняты на разные камеры и информация о дате и времени бывает весьма полезна.
Peace_Maker
jpegtran не поддерживает такие функции, и по этой причине реализовать функции становиться проблематично. Благо с jhead этих проблем нету. Посмотрим, как можно все реализовать.
GoblinNN
я, наоборот, старался убрать папку Images. Выходи, что не стоило.
Могу сделать по другому, в ini добавить переменную, в которой можно указать, какую папку использовать по умолчанию. если в ini ничего не указано, то работаем как сейчас.
jpegtran не поддерживает такие функции, и по этой причине реализовать функции становиться проблематично. Благо с jhead этих проблем нету. Посмотрим, как можно все реализовать.
GoblinNN
я, наоборот, старался убрать папку Images. Выходи, что не стоило.
Могу сделать по другому, в ini добавить переменную, в которой можно указать, какую папку использовать по умолчанию. если в ini ничего не указано, то работаем как сейчас.
lorents Заранее спасибо. Набросал навскидку варианты, как я это вижу.
Функционал изменения даты вроде не сложен.
Его имеют, например, маленькие проги:
FileDate Changer для 32 bit(Windows 95,98,ME,NT,2000,XP)
BulkFileChanger для Windows 2000-Windows 7
Далее более тяжеловесные программы:
Attribute Changer
AttributeMagic Free
Far, Total Commander и т.д.
FastStone Image Viewer при удалении метаданных из файла не изменяет дату и может установить в качестве даты изменения файла дату создания фото из exif. Но он кроме удаления метаданных никак не оптимизирует jpeg файлы.
Функционал изменения даты вроде не сложен.
Его имеют, например, маленькие проги:
FileDate Changer для 32 bit(Windows 95,98,ME,NT,2000,XP)
BulkFileChanger для Windows 2000-Windows 7
Далее более тяжеловесные программы:
Attribute Changer
AttributeMagic Free
Far, Total Commander и т.д.
FastStone Image Viewer при удалении метаданных из файла не изменяет дату и может установить в качестве даты изменения файла дату создания фото из exif. Но он кроме удаления метаданных никак не оптимизирует jpeg файлы.
Peace_Maker
Спасибо, за подбор приложений, но мне кажется лучше сделать все это через VBScript (правда как это сделать, я еще не знаю). jhead полностью поддерживает функцию установки в качестве даты изменения файла дату создания фото из exif.
Спасибо, за подбор приложений, но мне кажется лучше сделать все это через VBScript (правда как это сделать, я еще не знаю). jhead полностью поддерживает функцию установки в качестве даты изменения файла дату создания фото из exif.
lorents
Мне сперва тоже показалось, что через VBScript лучше, но потом посмотрел на структуру файлов в сборке и смутило то, что Вы функционал реализуете набором компактных программ и я решил, что нужно искать программки.
Пример решения через VBScript. Но думаю Вы его и так нашли. Если jhead из комплекта уже поддерживает эту функцию, то изобретать велосипед и правда не стоит.
По сути я так вижу варианты установки даты:
1-установка текущей. Реализуется автоматически, поскольку файлы изменяются.
2-установка даты из exif. jhead этот функционал поддерживает полностью, значит сделать опцией image catalyst это не сложно.
3-не изменять при преобразованиях дату файла. Тут 2 пути.
а. На всех этапах преобразований не изменять дату. Думаю "научить" этому все обработчики из пакета программ слишком трудоемко и не рационально, поэтому скорее:
б. Перед первым преобразовании считать дату и после всех преобразований последним шагом установить ее для измененного файла. Например, через VBScript.
При подготовке файлов для web даты скорее всего никому не важны. Вы ставите во главу угла имеено этот функционал, поэтому логично по умолчанию оставить вариант 1 или 3. Наверное даже 1, поскольку он не требует никаких операций. Выбор 1, 2 или 3 впихнуть в ini файл. Я думаю от этого пакет Image Catalyst только выиграет.
P.S. Еще раз спасибо за удобный и функциональный пакет, желание развивать проект и познавательные статьи тут и на хабре (с удовольствием почитал).
Мне сперва тоже показалось, что через VBScript лучше, но потом посмотрел на структуру файлов в сборке и смутило то, что Вы функционал реализуете набором компактных программ и я решил, что нужно искать программки.
Пример решения через VBScript. Но думаю Вы его и так нашли. Если jhead из комплекта уже поддерживает эту функцию, то изобретать велосипед и правда не стоит.
По сути я так вижу варианты установки даты:
1-установка текущей. Реализуется автоматически, поскольку файлы изменяются.
2-установка даты из exif. jhead этот функционал поддерживает полностью, значит сделать опцией image catalyst это не сложно.
3-не изменять при преобразованиях дату файла. Тут 2 пути.
а. На всех этапах преобразований не изменять дату. Думаю "научить" этому все обработчики из пакета программ слишком трудоемко и не рационально, поэтому скорее:
б. Перед первым преобразовании считать дату и после всех преобразований последним шагом установить ее для измененного файла. Например, через VBScript.
При подготовке файлов для web даты скорее всего никому не важны. Вы ставите во главу угла имеено этот функционал, поэтому логично по умолчанию оставить вариант 1 или 3. Наверное даже 1, поскольку он не требует никаких операций. Выбор 1, 2 или 3 впихнуть в ini файл. Я думаю от этого пакет Image Catalyst только выиграет.
P.S. Еще раз спасибо за удобный и функциональный пакет, желание развивать проект и познавательные статьи тут и на хабре (с удовольствием почитал).
Peace_Maker
Как правильно сказали, есть три варианта выбора даты изменения файла:
1. использовать текущую дату
2. использовать исходную дату
3. использовать дату из exif, если ее нету, то использовать исходную дату.
выбор одного из параметров, будет осуществляться через config.ini (по умолчанию будет первый параметр)
А вот как все это лучше организовать, это у нас решает res2001.
Как правильно сказали, есть три варианта выбора даты изменения файла:
1. использовать текущую дату
2. использовать исходную дату
3. использовать дату из exif, если ее нету, то использовать исходную дату.
выбор одного из параметров, будет осуществляться через config.ini (по умолчанию будет первый параметр)
А вот как все это лучше организовать, это у нас решает res2001.
lorents
Здорово, с возросшим нетерпением буду ждать вашу с res2001 новую версию.
Здорово, с возросшим нетерпением буду ждать вашу с res2001 новую версию.
Несколько бредовая идея-вопрос: а по умолчанию возможен автоматическое восстановление баланса белого?
mrjok
нет. мой проект для других целей, он не редактор изображений
нет. мой проект для других целей, он не редактор изображений
Если кто знает Perl на Windows и желает помочь в развитии проекта, прошу обращаться в личку.
lorents
Спасибо за полезные утилиты и скрипт! Добавил в шапку пару программ, которыми сам постоянно пользуюсь.
Спасибо за полезные утилиты и скрипт! Добавил в шапку пару программ, которыми сам постоянно пользуюсь.
Обнаружен баг в Image Catalyst v2.1.
Проявление: При закидывании в батник ПАПКИ с файлом(ами) с расширением .JPEG скрипт их обрабатывает по ДВА раза (первый подсчёт количества файлов, сама обработка и второй счётчик)
Результат: Сколько файлов .JPEG в папке попалось, на такое количество (в большую сторону) счётчики и будут врать. Обработчик эти файлы обрабатывает ДВАЖДЫ.
Устранение: В коде были найдены те три места (первый подсчёт количества файлов, сама обработка и второй счётчик) которые почему-то неправильно интерпретировались командным языком.
Первое:
Код:
if defined isjpeg (
if not defined isfolder (
set /a "TotalNumJPG+=1"
) else (
for /f "delims=" %%i in ('dir /b %fs% /a-d-h "%%~a\*.jpg" "%%~a\*.jpeg" "%%~a\*.jpe" 2^>nul ^| find /c /v "" ') do set /a "TotalNumJPG+=%%i"
)
XXJ666
Баг подтверждаю, исправлю в новой версии. Спасибо!
Баг подтверждаю, исправлю в новой версии. Спасибо!
Страницы: 123456789101112131415
Предыдущая тема: Эффекты в PowerPoint
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.