Храмы России

Проект посвящен православным и старообрядческим храмам России, уничтоженным и сохранившимся до наших дней, забытым и действующим.
Текущее время: 19 апр 2024, 07:47

Часовой пояс: UTC + 3 часа




Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: "Ремонт" поврежденных JPG файлов
СообщениеДобавлено: 27 янв 2009, 05:03 
Не в сети

Зарегистрирован: 15 июл 2008, 19:30
Сообщений: 10
Откуда: Москва
В конце прошлого лета, одна из моих флешек на которой были фотографии церквей Вологодской области взяла и "грохнулась". Компьютер ее видел, определял степень занятости и свободного места, даже показывал некоторые папки, а вот файлов в папках уже не видел. Пришлось прибегнуть к программам-восстановителям информации. В конце-концов, сняв образ диска и получив файлы формата JPG, я обнаружил, что лишь 3 кадра из 68 нормально открываются, остальные открывались в виде одноцветного фона или виден был лишь фрагмент фотографии. Были перепробованы все программы-просмотровщики на всех системах (Windows, BSD, Linux, Mac OS). Безуспешно! Все оставалось таким же неполноценным. Сбой флешки привел к нарушению кода самих изображений. При этом в виде превьюшек все фотографии показывались полностью любым компьютером. Началось долгое выяснение вопроса в интернете. Выяснилось, что именно формат JPG наиболее сложно поддается восстановлению. Битые файлы обычно "джипеги" ремонтируют в программе WinHEX путем восстановления кода в ручную. Но увы, слишком далек я от программирования. Стал искать готовые программы призванные поправить код изображения. Пару нашел. Не помогло.
И вот, уже почти отчаявшись, я нашел на форуме ixbt.com целую ветку обсуждения проблемы битых JPG'ов, очевидно проблема флешек распостранена :)
В этой ветке я прочитал очень внятные рекоммендации человека с ником Overquantum. Помимо дельных советов, он написал программу JPGscan. Это я вам скажу чудо для чайников типа меня! Я испросил разрешения автора разместить на форуме "Храмы России" ссылку на программу и краткое руководство по работе с ней. Что и делаю, так как проблема рухнувшего носителя цифровых фотографий может коснуться каждого.
Программу качаем отсюда: http://overquantum.zelnet.ru/downl/JPGscan.zip Она бесплатная, весит 73кБ. Автор программы планирует сделать полноценный сайт посвященный ей, но пока его нет, копирую из форума iXBT его самоличное краткое руководство по работе с ней (свои комментарии выделю курсивом):

Выполняем сканирование файла - В меню "Main" есть пункт "Scan file for JPEG", нужно указать пострадавший файл.
Отобразится графическая оценка пригодности файла к ремонту (чёрный прямоугольник с узором из разноцветных точек в окне программы), а также текстовая оценка в виде всплывающего сообщения.
Текстовая оценка содержит проценты данных - похожих на JPEG (JPEG data), явно не JPEG (Not JPEG data) и непонятных (Unknown data).
"Непонятные" могут оказаться как JPEG так и нет, но если их много - они не JPEG.
Какая часть изображения уцелела - вам примерно подскажет процент JPEG data.
После текстовой оценки даётся предварительный вывод:
1) "LOOK LIKE CORRECT JPEG" - либо правильный JPEG-файл, либо что-то очень на него похожее, не более 10% повреждений;
2) "DAMAGED JPEG" - до 30% файла пострадало, но остальное, скорее всего, подлежит восстановлению;
3) "SERIOUSLY DAMAGED JPEG" - до 60% файла пострадало;
4) "SMALL FRAGMENTS OF JPEG" - от JPEG осталось от 10% до 40%, может быть, из них удастся что-то собрать;
5) "Possibly NOT A JPEG" - от JPEG осталось не более 10%, вряд ли что-то можно восстановить;
(примечание - оценка заточена под большие JPEG-файл, для файлов меньше 200кб оценка может оказаться хуже, чем дело обстоит на самом деле)

Если программа выдает более или менее обнадеживающую оценку, ну хотя бы определяет что это JPG, то пытаемся открыть файл с помощью JPEGscan - Меню "Main"->"Load JPEG" - указать пострадавший файл.
JPGscan постарается загрузить и отобразить картинку, соблюдая стандарт JPEG, но не спотыкаясь на простых ошибках, как спотыкается большинство программ просмотра.

В моем случае, программа смогла открыть битый файл!!! Не совсем корректно, но уже вполне достаточно для работы в Фотошопе и получения довольно приличного результата.


После загрузки изображения, как описано выше, надо выбрать меню "Main"->"Load scan data" и снова указать этот же пострадавший файл.
JPGscan загрузит весь файл как поток данных JPEG (scan data), используя заголовок загруженный ранее. Это позволяет обойти любые повреждения информации, однако при таком подходе иногда искажается цвет изображения даже непострадавших фрагментов (а в редких случаях - непострадавшие фрагменты могут не отобразиться совсем).
Весь файл может не влезть в отображаемое окно, имеет смысл вызвать меню "Main"->"Next page", при этом декодирование с того места, где оно остановилось внизу окна - отобразится как бы следующая страница. Так можно "листать" даже очень большой файл, например, образ флешки или лазерного диска.
Во время декодирования появляется индикатор Loading (%), если он доходит до 100% и исчезает - файл декодировался до конца. Если не доходит до 100% - можно продолжать жать "Next page".

Навигация по изображению:
JPGscan поддерживает масштабы просмотра 1:8, 1:4, 1:2 и 1:1. По умолчанию он подбирает масштаб для наилучшего отображения.
В меню "Draw", пункты "Redraw ..." - выполняют отрисовку изображения в указанном масштабе. Пункты "Show ..." - только переключают между отрисованными изображениями разного масштаба.
Изображение можно двигать стрелками на клавиатуре и возвращать на центр окна через меню "Draw"->"Center Image". Я выбрал 100% и сохранил открывшийся файл. Сохраняется через Main - Save displayed as BMP.

Будьте внимательны! Программа сохраняет фотографию в таком размере, в котором она отображается на мониторе!

Теперь еще одна попытка улучшить результат: Нужно найти непострадавший файл с изображением, которое максимально похоже на пострадавшее. Если пострадал фотоснимок - нужно найти снимок сделанный по возможности тем же фотоаппаратом, с тем же качеством сжатия, размером кадра (в пикселях), ориентацией и балансом белого, как и пострадавший. Если пострадало изображение, сохранённое из графического редактора - желательно найти изображение, сохранённое этим же редактором с такими же настройками сжатия.
Загрузить непострадавший файл через меню "Main"->"Load JPEG"
После этого загрузить уже пострадавший файл через меню "Main"->"Load scan data".
JPGscan загрузит весь файл как поток данных JPEG (scan data), используя заголовок загруженный из непострадавшего файла. Это позволяет обойти повреждения заголовка в пострадавшем файле, однако при таком подходе нет строгой уверенности, что заголовок из непострадавшего файла подойдёт для декодирования пострадавшего.

Примеры своих фотографий "до" и "после" выложу завтра. Также выложу ссылку на ветку форума iXBT, в которой обсуждается проблема битых графических файлов.


Вернуться наверх
 Профиль Отправить личное сообщение  
Сообщение №8045 [ссылка на это сообщение] Ответить с цитатой  
Показать сообщения за:  Сортировать по:  
Форум закрыт Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Православное христианство.ru. Каталог православных ресурсов сети интернет