Интродукция: склейка и объединение изображение
Как-то раз в нашу лабораторию постучались соседи и за рюмочкой чая пожаловались на свои беды и несчастья: имеется микроскоп с цифровой камерой, который сканирует некий образец. Происходит всё так: под микроскопом лежит образец, и, участок за участком, производится съёмка поверхности. Выдаётся файл с изображениями участков, и задача - склеить фотографии в одну картину и просмотреть.
Проблема в объединении изображений в том, что они большие и их много. Кроме того, просматривать такое огромное изображение фотошопом не получится - во всяком случае, даже если и получится, то очень небыстро. И тут нам на помощь приходит nip2.
Пример склеивания фотографий в nip2
В nip2 это сделать просто благодаря тому, что отображение картинки ведётся мозаикой - не всё сразу, а лишь частично, что сильно ускоряет работу. Поэтому склеивание изображений будет быстрым; однако к интерфейсу nip2 придётся немного привыкнуть, потому как он есть нечто среднее между Photoshop и Excel. На примерах ниже мы убедимся, что это довольно логичный интерфейс.
Склеить фотографии горизонтально
Открываем последовательно два изображения, которые нужно склеить. Они появятся как две ячейки в таблице nip2. Зажимаем Shift и кликаем последовательно на этих картинках:
From Записки дебианщика |
Дальше, не снимая выделения (не кликаем где попало) идём в меню Toolkits - Image - Join и выбираем пункт Left to Right:
From Записки дебианщика |
Получаем результат - изображение, склеенное в панораму:
From Записки дебианщика |
From Записки дебианщика |
Склейка фотографий вертикально
происходит точно также, но выбираем "соединять сверху вниз" (Top
to Bottom):
From Записки дебианщика |
и неизменно превосходный результат:
From Записки дебианщика |
И другие возможности
А возможностей у nip2 выше крыши, причём о них многие даже не подозревают. Можно, например, просто вставить кусок одного изображения в другое. Достигается это так:
Toolkits - Image - InsertМожно также выровнять яркость на отдельных фрагментах изображений (tilt brightness). Это когда одна часть изображения освещена сильнее другой, то есть яркость меняется от края изображения к середине). Это устраняется так: Tools - Filters - Tilt brightness.
Здесь нестандартный интерфейс nip2, использует своё преимущество: при изменении изображения в ячейках, результаты в других ячейках автоматически перерисовываются.
Больше о склейке изображений, рефлектограммах и прочего Rocket Science можно прочитать в примерах [на английском].
Где взять nip2?
Так как nip2 - свободное программное обеспечение, его запросто можно скачать с официального сайта:
- для Windows
- для Mac OS X
- для Linux (source code или поищите в репозиториях своего дистрибутива по названию nip2).
Кстати: Блог о nip2
У замечательного графического анализатора nip2 теперь появился свой блог, ведёт который John Cupitt - автор проекта. Блог появился не в последнюю очередь благодаря стараниям и активному багрепортингу скромного автора этих строк: ради поддержки матлабовских MAT-файлов и формата FITS автор водрузил на рабочую машину Виртуальный Ящик с Debian Unstable и красноглазил с напильником и поиском библиотек для сборки последней версии.
Блог о nip2 было решено завести для популяризации этой замечательной программы, а также как расширения несколько сухой, хотя местами весьма толковой, документации. На блоге публикуются анонсы по выходу новых версий, а так же планируются интересные посты по обработке изображений.
imagemagick же. лучше graphicsmagick (команда montage)
ОтветитьУдалить@pigritor комментирует...
ОтветитьУдалитьimagemagick же
Оно не интерактивное, а тут можно мышкой всё делать. И результат сразу посмотреть. В общем, это из серии "как с помощью nip2 отстрелить себе ногу". Да, ещё можно выровнять яркость (в разделе tilt brightness).
Как оно дружит с круговыми панорамами, когда до склейки нужно компенсировать искажения?
ОтветитьУдалитьВот чему я у вас в блоге научился, так это писать ковро-посты :-)
ОтветитьУдалить>imagemagick
Я понимаю, что ещё на движке сайта это незаменимо, а на десктопе-то накой? Вот обязательно найдётся мудрец, который скажет, что консоль рулит.
Хотя часто оно так и происходит.
Михаил, поправь:
ОтветитьУдалить"меняя изображения в ячейках, результаты в других ячейках автоматически перерисовываются"
- тогда уж "при изменении изображения в ячейках..." А то получается "подъезжая к городу, с меня слетела шляпа" :)
@. комментирует... 18.10.2011 13:14:00
ОтветитьУдалитьКак оно дружит с круговыми панорамами
Никак. Это просто пример склейки прямоугольных фрагментов изображений в одно очень большое. Иллюстрация возможностей nip2, о которых большинство даже не подозревает.
@fuck_blogspot комментирует...
Вот чему я у вас в блоге научился, так это писать ковро-посты :-)
Хм... ну до гобеленов они по размерам не всегда дотягивают :-) Ну и потом, мы же не хотим быть, как Федорчук, водой из постов которого можно наполнить Аральское море до краёв, верно?
Я понимаю, что ещё на движке сайта это незаменимо, а на десктопе-то накой? Вот обязательно найдётся мудрец, который скажет, что консоль рулит.
Мудрец pigritor высказал своё мнение - в общем, правильное. Можно такое сделать и с помощью imagemagick; другое дело, что в nip2 оно вроде как нагляднее и проще. Тем более, что если панораму нужно склеить одну, а не сотню.
@arcd комментирует...
Михаил, поправь:
Да, коряво получилось. Спасибо.
А то получается "подъезжая к городу, с меня слетела шляпа" :)
На самом деле, я так примерно и хотел. Но не вышло :-/
>Ну и потом, мы же не хотим быть, как Федорчук, водой из постов которого можно наполнить Аральское море до краёв, верно?
ОтветитьУдалитьНе надо, alv - гений, он просто мало пользуется тегом <b
@fuck_blogspot комментирует...
ОтветитьУдалитьНе надо, alv - гений, он просто мало пользуется тегом
Старый, жирный и толстый тролль во мне говорит, что в этом предложении можно вкусно поесть :-) Но я не буду.
Проблема Федорчука в том, что он пытается угнаться и за линуксами (причём всеми сразу), и за *BSD (начиная с DragonFly и заканчивая обычной фрёй). Ему (да и никому, наверное) это не удастся, потому как всё довольно быстро развивается. От того его знания в юниксах поверхностны, если не сказать хуже. Дело усугубляет его витиеватый слог с претензией на учительство, отягчённый явной склонностью к графомании.
Когда я пишу баян, я стараюсь быть настолько кратким, насколько можно - это походит на музыкальный набросок. Федорчук же разражается баянной симфонией - но блин, мы же это уже где-то слышали :-)
А. Федорчук
ОтветитьУдалитьЦикл статей на тему "Использование nip2, настройка и автоматизация":
Вместо предисловия - 14862 знака
Сравнительный анализ свободных конвертеров, анализаторов и редакторов изображений - 12645 знаков и 42 скриншота
История возникновения nip2 и попытки интеграции в системах BSD - 44865 знаков и 56 скриншотов
.....
.....
и т.д.
После положительных откликов в комментариях решено перенести весь цикл на отдельный сайт под наванием "Ниптуада"....
@fuck_blogspot комментирует...
ОтветитьУдалитьА. Федорчук Цикл статей на тему "Использование nip2, настройка и автоматизация"
Ох мать! Вот старик разошёлся-то! :-)
и т.д.
Да-да, и так далее.
отдельный сайт под наванием "Ниптуада"
Я выше про баянную симфонию именно это и имел в виду: его тянет на графоманию с претензией на эпичность. Федориада, Ниптуада... Гомер курит за углом.
Ладно, тролль во мне уже наелся. Спасибо, было вкусно :-)
А если серьёзно: мне просто хотелось показать, что возможности nip2 не ограничиваются анализом изображений. Конечно, при работе с ним нужно знать матчасть - это, в общем, исследовательское приложение. Это не фотошоп с кнопками типа "сделай мне зашибись". Документация по нему есть, но автор - научный сотрудник университета, так что он предполагает в пользователе наличие мозгов изначально. Отсюда такая краткость вики и несколько фрагментарная (хотя приличная) официальной документации.
ОтветитьУдалитьP.S.> И да, если у тов. @fuck_blogspot закралось подозрение, что я копирую федорчуковские посты, то спешу его [подозрение] развеять. Чужих мемуаров я не чтец и тем паче не копипастер. Но это так, a propos.
>Спасибо, было вкусно :-)
ОтветитьУдалитьДа не за что -)
>Это не фотошоп с кнопками типа "сделай мне зашибись".
Хочу такой фотошоп, в моём (лицензионном!) под вайном (федора) таких кнопКов нет :(
>А если серьёзно: мне просто хотелось показать, что возможности nip2 не ограничиваются анализом изображений
Хороший материал, хорошее оформление, где надо акцентировано, всё путём.
>И да, если у тов. @fuck_blogspot закралось подозрение, что я копирую федорчуковские посты, то спешу его [подозрение] развеять.
Не надо спешить, мне даже это в голову не пришло, тем более, что Федорчука (вроде как) никогда дебиан и отдельные спо-шки не интересовали.
Хэй! Что-то комментариев маловато — слишком практичный пост, что-ли? :)
ОтветитьУдалитьСпасибо, virens: два раза в год, за несколько дней до начала очередного семестра, я прихожу в корпус и фотографирую доску с расписанием. А так как камера телефона имеет всего лишь 2 мегапикселя, фотографировать приходится кусками. Естественно, искать потом в месиве фотографий нужный день не так уж удобно (что каждый раз подталкивает стряхнуть пыль со своих LaTeX'овских навыков и забацать-таки неземной красоты таблицу с расписанием). Короче, теперь можно будет обходиться панорамкой :)
И как всегда — парад придирок:
> Получаем результат - склеенное изображение в панораму:
Лучше было бы «склеенное в панораму изображение» или «изображение, склеенное в панораму».
> Можно так же выровнять яркость на отдельных фрагментах изображений
> а так же как расширения несколько сухой, хотя местами весьма толковой, документации
Я уже говорил, что эту ошибку можно юзать заместо копирайта? :)
Опечатки в названиях программных продуктов: должно быть Hugin вместо Hudgin, Excel вместо Excell
ОтветитьУдалить@Minoru комментирует...
ОтветитьУдалитьЧто-то комментариев маловато — слишком практичный пост, что-ли
А так всегда: пишешь что-нибудь нужное - соберёшь два с половиной комментария от полутора анонимусов. Напишешь безделицу типа МСВС - полторы сотни комментов и толпы троллей разной степени жирности и зелёности (включая автора :-)).
Спасибо, virens: два раза в год, за несколько дней до начала очередного семестра, я прихожу в корпус и фотографирую доску с расписанием.
Ну да, это в самый раз. Ко мне в своё время пришли соседи из другой лаборатории - они пытались фотошопом склеить фотографии с электронного микроскопа, когда снимали большой и длинный участок какой-то важной им поверхности. Так что пост написан давно...
Естественно, искать потом в месиве фотографий нужный день не так уж удобно
Никаких проблем с этим в nip2 нет - просто заменяешь элемент в таблице другой фотографией и всё, оно само пересчитает.
что каждый раз подталкивает стряхнуть пыль со своих LaTeX'овских навыков и забацать-таки неземной красоты таблицу с расписанием
Это адский труд. По моему скромному мнению, таблицы в латехе - самый ад.
И как всегда — парад придирок:
Дык, разумеется.
Лучше было бы «склеенное в панораму изображение» или «изображение, склеенное в панораму».
Второй вариант нравится. Исправлено.
Я уже говорил, что эту ошибку можно юзать заместо копирайта?
Ушёл регистрировать торговую марку :-))
@Анонимный комментирует...
Опечатки в названиях программных продуктов: должно быть Hugin вместо Hudgin, Excel вместо Excell
Спасибо, Анонимус! Поправил. Просто ни тем, ни другим не пользуюсь, поэтому названия подзабыл :-)
@pomosh комментирует...
ОтветитьУдалитьМожет так же подскажите какой программой можно зделать 3Д панораму? И как это происходит?
Pomosh, а ты сам понял, что спросил!? Я вот тоже не знаю, как это происходит.
Да, предыдущие комментарии снёс за рекламу в подписи.
Из 3D панорам я видел только обычные круговые нарезки из фото и "двухслойные". Последние знаю, как заделать для уеб-страниц руками, а вот насчёт ленивого софта - донт ноу.
ОтветитьУдалитьПри горизонтальной склейке фотографий есть опция горизонтального выравнивания. А что делать в случае, когда дополнительно требуется вертикальное выравнивание?
ОтветитьУдалить@fuck_blogspot комментирует...
ОтветитьУдалитьИз 3D панорам я видел только обычные круговые нарезки
Ну так это ж не тридэ, а баловство.
@OMI комментирует...
При горизонтальной склейке фотографий есть опция горизонтального выравнивания. А что делать в случае, когда дополнительно требуется вертикальное выравнивание?
Честно говоря, не задавался таким вопросом. Кстати, можно автору стукнуть на электропочту - он общительный парень, отвечает быстро.
Да, OMI, этот nip2 не есть специально заточенный под FITS анализатор - к нему просто прикрутили возможность работы с FITS. Но возможностей по анализу изображений там много.