Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Графика - Пакетная проверка кучи jpg/jpeg файлов на предмет повреждений

Ответить
Настройки темы
Графика - Пакетная проверка кучи jpg/jpeg файлов на предмет повреждений

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


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

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


Изображения
Тип файла: jpg jpg_Bad.jpg
(188.8 Kb, 38 просмотров)
На форуме (да и на необъятных просторах сети) поднято множество тем по восстановлению потерянных/поврежденных фотографий, но иногда бывает нужно просто перебрать все графические файлы (наверно 99% - jpg) в каталогах и найти те, что пострадали. Пробовал различные пакетные конверторы (больше всех понравился IrfanView и FastStone), в надежде на получение списка файлов, содержащих ошибки, но все совершенно нормально открывали порченные файлы.

Это расстраивает по 2м причинам:
1. я был уверен, что должно быть великое множество средств диагностики графических файлов
2. может ли быть такое, что явное повреждение данных jpeg-файла не может быть диагностировано?

Собственно можно тупо просмотреть все фотки в виде превьюшек и выловить поврежденные в-ручную, но я уверен, что сдуюсь после первой же сотни фоток и замыленный глаз станет пропускать все подряд, а у меня их почти полный 2тб винт, это несколько сотен тысяч фоток (и моих и от друзей), сам процесс восстановления занимал более недели, а он шел без моего присутствия и все что я знаю - при восстановлении были потери.

Просил одного знакомого программера сделать эксперимент - открыть средствами GDI заведомо битый JPG и посмотреть, возвращает ли библиотечка хоть какую-то ошибку, тогда можно было-бы написать небольшую програмку по проверки файлов из списка, с формированием списков хороших/поврежденных файлов, но тот уперся, сославшись, что если просмотрщик показывает битый JPG и не ругается, то и какой-нить "TJpegImage" не позволит обнаружить повреждение.

* прикладываю пример умышленно "битого" Jpeg`а, может кто чего попробует и посоветует?

Отправлено: 18:54, 17-06-2011

 

-!-


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

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


Окошко вываливается, Windows Script Host: "Требуется объект"

Может чего не так делаю. Скрипт записал в файл run.vbs. Запускаю run.vbs image.jpg

Отправлено: 06:51, 19-07-2011 | #11



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

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


Ветеран


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

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


dascon, Вы установили «ImageMagick»?

Если — да, то проверьте, удачно ли была зарегистрирована библиотека:
Код: Выделить весь код
<Путь, куда был установлен «ImageMagick»>\ImageMagickObject.dll
и наличествует ли в реестре раздел:
Код: Выделить весь код
\HKEY_CLASSES_ROOT\ImageMagickObject.MagickImage.1
Если — нет, то попробовать зарегистрировать её вручную посредством «regsvr32.exe».

P.S. Возможно, Вы брали просто архив («ImageMagick-6.7.1-Q16-windows.zip») и разворачивали из него?! Тогда — да, надо регистрировать библиотеку «ImageMagickObject.dll» самому.

Отправлено: 07:45, 19-07-2011 | #12


-!-


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

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


Скачивал установщик, ImageMagick-6.7.1-0-Q8-windows-dll.exe. Но ImageMagickObject.dll у меня вообще на диске нет.

Отправлено: 08:11, 19-07-2011 | #13


Ветеран


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

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


dascon, при установке приложения нужно установить соответствующий флажок:
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:42, 19-07-2011 | #14


-!-


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

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


Цитата:
а для одиночного файла, одного из тех, что как бы «Corrupted or unknown formats», скрипт из #2 что «говорит»?
Name:[image001.jpg] Type:[JPEG] Dim:[640x480x8]

Отправлено: 06:49, 20-07-2011 | #15


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


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

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


Доклад по предварительным результатм
Возни оказалось в порядок больше, ибо диск совсем начал отваливаться и отследить в растущем отчете, где реальные ошибки, а где тупо нет доступа к файлам - очень сложно.
Кончилось тем, что достал из запасника комплектуху, закупленную еще перед НГ - хотел проапгрейдить домашний сервак и запихнуть его наконец-то на антресоль, но корпусов таких типоразмеров не делают, а самопальный застрял на половине перепиливания (в прямом смысле слова) из другого корпуса. Пришлось собирать в открытом виде, прямо на журнальном столике, потеснив ноут, которому и так было места маловато (теперь для мышей места не осталось совсем, приходится возить их по собственной каленке, или садится дальше на кровать и по покрывалу).
Но и тут оказалась засада - комп глючил, переставал включаться, винда еле встала, но работать так и не начала, провозившись с ней 4 дня - было бросил затею, ибо гарантийный случай налицо, но неисправность еще надо доказать. После пары дней перекура меня толкнула мысль, что глюк больше всего похож на утечку в нескольких местах на массу, но несерьезная такая утечка, чуть-чуть пробивает, ибо ничего не сгорело и пищать об ошибках материнка не собирается, но и работать нормально не хочет. Попробовал держать материнку в руках - и точно, никаких глючков, кладу на родной пакет упаковки - тутже виснет и не грузится, а уходит в бескоенчный цикл включения на пару сек и выключение, пауза и опять включение на пару сек. Серый от злости пошел пить чай и думать, чего бы под материнку подложить - ровного, диэлектрического, но ничего нормального в голову не приходило, а распиливать заначенный лист фанеры 150х150 очень не хотелось (хватит с нас и чиновников-распильщиков)... и тут мой блуждающий взгляд наткнулся на среднюю разделочную доску для мсява... размер оказался почти как раз!
Тутже доустановил винду, нашел дрова, поставил ИмаджМэджик, запустил батник... за час статистика показала, что ждать мне снова 4-5 дней, хотя в первом случае диск был на серваке, а проверка шла по сети с ноута образца 2005г. и время было примерно тем же, разве что нагрузка проца - 25%... разделил ручками исходный список на 4 равные части и загрузил все 4 ядра. Загрузка 98-99%, все тормозит, но через 2 дня проверка закончилась. На выходе 4 файлика со списками "битых" файлов по 3-6 тыс.строк.
Попробовал проверять файлики из списков ручками, по-очечереди, понял, что тут тоже нужна автоматизация. Сейчас трясу сменщика что-нить придумать, обещал помочь. Думаю, скоро выложу его 2й батничек, для обработки логов.

Отправлено: 15:35, 21-07-2011 | #16


Ветеран


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

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


По идее, скриптом должно быть быстрее, нежели N раз запускать процесс из командного файла. Ну, а на С/С++ ещё шустрее .

Отправлено: 16:10, 21-07-2011 | #17


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


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

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


Есть еще такая программка - http://antidupl.narod.ru/russian/ind...=download.html

Помимо поиска одинаковых (по изображению, т.е не обязателньно должны быть одного размера/разрешения и проч.) , в ней есть функция поиска поврежденных изображений.

Правда, с приложенной картинкой не справилась, но можно к авторам попробовать обратиться.

Последний раз редактировалось plvtor, 14-08-2011 в 00:08.


Отправлено: 23:59, 13-08-2011 | #18


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


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

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


Спасибо за решение с ImageMagick.
То же понадобилось проверить кучу файлов на наличие битых.
С текущей версией ImageMagick проблем с кирилицей у меня не возникло (win7 32bit, ImageMagick-6.8.8-4-Q8-x86-dll.exe ).
Немного переделал bat-скрипт под себя. Выкладываю свой вариант - может кому пригодится.
Код: Выделить весь код
@echo off
@setlocal enableextensions enabledelayedexpansion
@SET identify="C:\Program Files\ImageMagick\identify.exe"
@SET workdir=G:\Photos
@SET LOGFILE=C:\test\photo%RANDOM%.log
pushd %workdir%
for /F "tokens=1,2* delims=<" %%a in ('dir *.jpg *.tif /a:-d /b /s') DO (
    echo ***%date% - %time% %%a  >> %LOGFILE%
    %identify% -regard-warnings "%%a"  >> %LOGFILE% 2>&1
    )
popd
Скрипт при работе создает в папке запуска текстовый файл с результатами проверки всех jpg и tif в папке (и подпапках) G:\Photos.
После поиском по этому текстовому файлу по слову corrupt или warn находим или не находим поврежденные файлы.

Отправлено: 22:01, 06-02-2014 | #19



Компьютерный форум OSzone.net » Сфера Microsoft » Программное обеспечение Windows » Графика - Пакетная проверка кучи jpg/jpeg файлов на предмет повреждений

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Вирус зашифровал doc,xls,rar,zip,jpeg,jpg,psd gamber Лечение систем от вредоносных программ 3 05-11-2009 16:49
CMD/BAT - Проверка на предмет установленного SP3 Cibersoft Prolex Скриптовые языки администрирования Windows 1 07-05-2009 09:03
Размеры файлов JPEG в вертикальном и горизонтальном соотношении Absolut Хочу все знать 6 01-08-2005 01:00
преобразование jpg в jpeg strannic2005 Хочу все знать 7 27-12-2004 19:19
Пакетная конвертация или преобразование графических файлов UTU Программное обеспечение Windows 12 09-06-2004 19:55




 
Переход