Search
Write a publication
Pull to refresh
14
0

User

Send message

Освободи разум от Фотошопа — свежая концепция обработки изображений

Reading time5 min
Views103K
Я люблю Фотошоп. Честно-честно! Я работаю с ним каждый день уже лет десять. Нельзя переоценить влияние Фотошопа на отрасль цифровой графики — которая во многом определяет, как выглядит мир вокруг нас! Я практически уверен, что прямо сейчас в вашей комнате есть как минимум одна вещь, в дизайне которой принимал участие Фотошоп. И, конечно, картинки для этой статьи были подготовлены в Фотошопе!

В своей сфере Фотошоп — лидер. Его можно называть «стандартом» (что скорее хорошо) или «монополистом» (что скорее плохо). Но факт остается фактом — если вы работаете с любым видом цифровой графики, вам приходится мыслить терминологией Фотошопа и следовать идеям его создателей.

Признаться, Фотошоп — это не самая сложная компьютерная программа из существующих (поскольку, будем откровенны, цифровые изображения — это не самая сложная часть компьютерной науки). Однако, он все-таки весьма сложен. Причин несколько. Во-первых, в Фотошопе много функций и, следовательно, возможностей. Во-вторых, он стар (он очень стар, он… ну вы понимаете :-) — почти моего возраста! Такая долгая история разработки означает, что создатели Фотошопа прошли долгую дорогу, и у них не было возможности пересмотреть основные концепции или переделать какие -то вещи заново. Совместимость и все такое. И потом, зачем чинить то, что не сломалось?

image

Images by about.com


Однако, сегодня ночью меня посетила идея… нет, ИДЕЯ! И теперь она сидит у меня в голове, стучится и просится наружу, хочет быть рассказанной, опубликованной и обсужденной. А что может быть лучше интересного обсуждения!

Итак...
Читать дальше →

GIMP Script-fu: быстрое изучение и написание простых скриптов на Scheme (+ пакетная обработка бесплатно)

Reading time8 min
Views25K

Вступление


В статье будет рассказано о том, как в кратчайшие сроки познакомиться с основами скриптинга в GIMP на языке Scheme и приступить непосредственно к решению простых практических задач. Данный материал предназначен лишь для тех, кто собирается автоматизировать рутинную обработку здесь и сейчас, не сильно вдаваясь в тонкости и не жертвуя драгоценным временем. Также, статью не рекомендуется использовать в качестве пособия по Scheme отдельно от Script-fu. Связано это с упрощённым стилем программирования в данном материале и отсутствием освещения других немаловажных фактов, которые нас сейчас волнуют гораздо меньше, чем скорость освоения.

Содержание:
  1. Что нам понадобится?
  2. Коротко о синтаксисе
  3. Переменные
  4. Функции
  5. Списки
  6. Регистрация скрипта в GIMP
  7. Написание кода
  8. Заключение
Читать дальше →

Убираем пыль с 1000 фотографий с помощью Gimp и Script-Fu

Reading time6 min
Views21K
Думаю многим фотографам приходилось чистить отснятые фотографии от пылинок на матрице. Не имея полного Photoshop-a или LightRoom-a быстро обработать большое количество фотографий крайне трудно.
Но у нас есть Gimp и желание написать к нему скрипт.
На Хабре уже было не мало статей про возможность написания скриптов в Gimp.
Вот самый подробные обзор самого языка Script-fu и возможности написания на нём расширений к Gimp
Вот тут статья про пакетную обработку.
По идее, прочитав 2 эти статьи, можно сделать что угодно. Но вот только при решении обозначенной в заголовке проблемы, я столкнулся с многими нюансам, на преодоление которых ушло не мало времени, и которые мало где описаны. Даже в англоязычных Tutorial-ах и Help-ах. О них и пойдёт речь.
Читать дальше →

11 причин быть управленцем

Reading time8 min
Views139K
Поводом для написания этого поста стали замечательные размышления автора TheR о подводных камнях перепрофилирования из программиста/инженера/просто технаря в менеджера. Автор поста обещал написать свой собственный список причин, почему же иногда все-таки стоит это делать, но прошло уже почти полгода, а списка так и не появилось, так что расскажу о своем видении проблемы.

Моя карьера стартовала в самом начале нулевых, в течение 6 лет я работал программистом и консультантом разных уровней, а примерно 5 лет назад я полностью перепрофилировался в менеджера. Решение уходить из чисто технической области, как и многие, я принимал под впечатлением иллюзий о том, что у менеджеров намного больше денег, больше возможностей принимать решения и т.д. Как и писал TheR в упомянутом выше посте, многие мои предположения о работе менеджером оказались иллюзией, но некоторое количество очевидных (и не очень) плюшек в этой профессии все же присутствует. Я надеюсь, что эти два поста про плюсы и минусы такого перепрофилирования помогут кому-нибудь из Хабровчан принять взвешенное решение о дальнейшем развитии своей карьеры.
Читать дальше →

Моя поездка во ФРИИ

Reading time9 min
Views11K

Подготовка заявки


ФРИИ – что это?

Про ФРИИ я узнал от бизнес-консультанта и ментора нашего проекта, Олега Мальсагова Hitrusha. Он сказал, что в России создается фонд, в котором в управлении 6 млрд рублей. А теперь на эти деньги нужно найти *цать интернет проектов и инвестировать в них. Жива ещё инициатива перевести экономику страны с сырьевых на инновационные рельсы.
Фонд молодой, в сентябре этого года был их первый отбор, в который и попал мой проект. Об этом подробнее.

Подаём заявку

За неделю до окончания приёма заявок мне написал директор одного из бизнес-инкубаторов Томска: “Посмотри фонд развития интернет инициатив фрии.рф подавай туда заявку, отличная тема, будут вопросы пиши, звони”.
Посмотрел: сайт светлый, лёгкий, понятный — почти хабрастиль. Но мало конкретики. Из описания стало понятно, что, пройдя отбор, стартаперам можно попасть в их акселератор и, возможно, получить инвестиции.
С мыслью «от нас не убудет» регистрируюсь.
Регистрационная форма абсолютно не напрягает – всего пара вопросов. Зато сама заявка увесистая: 8 разделов (как она выглядит, можете посмотреть на iidf.ru, в личном кабинете подайте проект на участие в ТОП-100).
Попыхтел часок, собрал данные в один массив. Заявка подана, меня оповестили письмом, что скоро со мной познакомятся по скайпу. Записываюсь на виртуальную встречу, и в назначенный час мне звонит некто «Сотрудник ФРИИ».
Читать дальше →

Retinafy everything

Reading time2 min
Views3.9K
Почему стоит задуматься о векторной графике уже сейчас?

Retina-дисплеи (спасибо Apple за удобный маркетинговый термин) уже стали частью нашей жизни. Если вы web-разработчик/дизайнер, и вы не учитываете, как ваша работа отображается на экранах с высоким разрешением, то вы серьезно выпадаете из современных трендов.

Читать дальше →

Нелинейное сжатие размерности, используя ограниченную машину Больцмана

Reading time3 min
Views16K
Привет. В этом посте мы продолжим экспериментировать с ограниченной машиной Больцмана. В предыдущем посте о регуляризации в РБМ мы увидели как можно получить более локальные фичи, которые обладают большей обобщающей способностью. Но мы не оценили их робастность по сравнению с более простыми и быстрыми алгоритмами. Для этого эксперимента мы обратимся к линейному методу главных компонент (вы можете ознакомиться с этим методом и глянуть реализацию на c# в моем первом посте). Желающим ознакомиться с первоисточником по теории сжатия размерности с использованием РБМ рекомендую глянуть статьи Джеффри Хинтона тут и тут. Мы же продолжим тестирование на множестве печатных больших букв: обучим РБМ, построим главные компоненты, сгенерируем сжатые представления данных, а из них восстановим первоначальные изображения, и затем оценим разницу между оригинальными изображениями и восстановленными.

Читать дальше →

Исследование метода главных компонент и линейного дискриминантного анализа на изменение ракурса и условий освещенности лица как объект распознавания

Reading time6 min
Views16K
Всем добрый день. Я являюсь аспирантом. Тема моей диссертации «Разработка методов идентификации по изображению для предоставления индивидуального доступа в реальном масштабе времени».
В моем первом посту я написал, не с самого начала. Вот начинаю с самого начала.

Распознавание человека по изображению лица выделяется среди биометрических систем тем что во-первых, не требуется специальное или дорогостоящее оборудование, во-вторых, не нужен физический контакт с устройствами. Однако распознавание человека по изображению лица не обеспечивает 100%-ой надёжности идентификации.

Особенность состоит в том, чтобы распознать человека по изображению лица независимо от изменения ракурса и условий освещённости при съёмке.

Такие задачи не имеют точного аналитического решения. При этом требуется выделение ключевых признаков, характеризующих зрительный образ, определение относительной важности признаков путём выбора их весовых коэффициентов и учёт взаимосвязей между признаками. Изначально эти задачи выполнялись человеком-экспертом, что занимало много времени и не гарантировало качества. В новых методах выделение ключевых признаков осуществляется путём автоматического анализа обучающей выборки, но тем не менее большинство информации о признаках задаётся вручную. Для автоматического применения таких анализаторов выборка должна быть достаточно большой и охватывать все возможные ситуации.

Читать дальше →

Intergeo 2013. Essen. Germany. Лазерное сканирование

Reading time8 min
Views17K
Здравствуйте, уважаемое Хабрасообщество.

Мероприятие, о некоторых аспектах которого я хотел бы вам рассказать, можно отнести к очень широкоизвестному в узких кругах. Позволю себе несколько слов о том, что такое Intergeo.

Это выставка достижений геодезическо-картографического хозяйства, уже более 20 лет ежегодно приводящаяся в Германии. Более крупного мероприятия, которое бы затрагивало такие области как геодезия, картография, фотограмметрия, ГИС и пространственное моделирование, в Мире попросту нет. Есть крупные семинары лидеров, но они обычно базируются вокруг одного бренда (например ESRI).

Именно поэтому на Intergeo можно оценить актуальное развитие многих направлений, посмотреть последние разработки, найти прямые контакты с производителями. Участие же компании на этой выставке можно напрямую оценивать как позиционирование оной на Мировом рынке.
image

Изначально я планировал сделать пост-обзор всех направлений, представленных на выставке, но разобрав собранные на выставке материалы, понял, что для этого мне понадобится несколько недель, настолько разноплановой информацией я сейчас располагаю. Поэтому в этом посте мы поговорим только об одном, молодом и перспективном направлении, которое в последнее время набрало такие обороты, что не обратить на него внимание невозможно. Я предлагаю обсудить актуальное состояние лазерного сканирования (с небольшим уклоном в 3D-моделирование).
Читать дальше →

Будущее игровой индустрии с hi-res 3D сканами людей и Oculus Rift

Reading time2 min
Views86K
Энтузиаст технологий виртуальной реальности Teddy, известный в определённых кругах адаптацией устройства Razer Hydra для работы с Unity Development Kit, помог другому этузиасту 3D сканирования Ли Перри-Смиту (Lee Perry-Smith), известному в определённых кругах своей студией для мгновенного бесконтактного 3D сканирования людей в высоком разрешении.

В результате получилось интересное демо, раскрывающее потрясающие возможности сотрудничества технологий виртуальной реальности и 3D сканирования (местами 16+).



Хочу 18плюс!

Съемка Time Lapse видео под Android

Reading time27 min
Views33K
imageДавайте напишем программу для создания своих собственных фильмов в технике Time Lapse. Завораживающее видео, снятое в этой технике с борта МКС, можно посмотреть здесь, более доступный вариант, который можно повторить с помощью описываемой программы — здесь.

Программа имеет простой интерфейс и несложный принцип работы:
• пользователь задает периодичность снимков встроенной камерой (например, 10 с) и желаемую частоту кадров генерируемого видео (например, 25 кадров в секунду);
• после нажатия кнопки «Старт»  программа каждые 10 секунд делает фотографию и записывает jpg-файл на SD-карту;
• процедура повторяется до нажатия кнопки «Стоп» и «Создать видео», после чего последовательность фотографий превращается в видео файл формата Motion JPEG, который показывает отснятый материал в 250 раз (25 * 10) быстрее реальной скорости происходивших событий.

В программе два основных класса — MainActivity, занимающийся взаимодействием с пользователем и накоплением снимков и MJPEGGenerator, ответственный за превращение последовательности изображений в видео файл.

Класс MJPEGGenerator, взятый с code.google.com, был слегка переделан в связи с тем, что в Android Java отсутствует пакет java.awt.

Процедуры работы с камерой были преимущественно взяты из материала Работа с камерой в Android, где есть хорошее описание примененных решений, проблема «залипаний» камеры после лока/анлока Android-устройства была устранена благодаря stackoverflow.

Программа была отлажена на планшете Prestigio MultiPad 7.0 Prime под Android 4.0.

Читать дальше →

Роботы, проекторы, обработка изображений: видео «Box»

Reading time1 min
Views14K


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

И да, по словам тех же авторов видео, все было снято «на едином дыхании», без дублей (само собой, репетиции были) и склеивания отдельных кадров. Думаю, на Хабре есть специалисты, которые смогут определить, так ли это.

Вот само видео (смотреть, конечно же, лучше всего на большом дисплее/телевизоре в максимальном качестве):



Читать дальше →

JavaScript обработка изображений нативными функциями

Reading time2 min
Views29K

Доброго времени суток, читатель!


Как-то понадобилась мне в проекте, работающем на node.js, обработка изображений. И чтоб скачал файлик, закинул в папку и подключил как модуль. Ан нет, таких в природе не оказалось. По этому тогда пришлось воспользоваться node-imagemagick. Но сейчас пост не о этой библиотеке.

Пост о том, что захотелось сделать такую библиотеку, которую скачал, закинул файлик в проект, подключил модуль и всё работает! Ну и сделал. Правда поддержка gif'ок не реализована, но я надеюсь на огромное сообщество, которое заинтересуется и поможет доделать библиотеку.

Назвал её по простому, imageLib.js, и на github выложил, правда под MIT.
Читать дальше →

PHPShop PriceLoader: пакетная обработка прайс-листов и загрузка изображений в интернет-магазин. Часть 2

Reading time2 min
Views7K
В предыдущей статье мы рассказали про возможность пакетной обработки изображений и прайсов-поставщиков с помощью бесплатной утилиты PriceLoader.

Напомним, что утилита позволяет, на основе прайс-листа Excel, создать sql-файл, для последующей загрузки его в базу данных интернет-магазина. В sql-файле содержатся команды обновления и создания товаров по таким данным, как цена, склад, описание, артикул. В новой версии PriceLoader мы добавили несколько полезных для пользователя опций.
Читать дальше →

Пакетная обработка изображений в GIMP

Reading time4 min
Views29K
Время от времени возникает необходимость выложить в сеть фотоальбом или пакет отсканированных документов. В большинстве случаев изображения предварительно нужно уменьшить, а иногда и произвести дополнительную обработку, добавить надписи. И вот наступил момент, когда выполнять однотипные операции стало совсем лениво. Вспоминаем про замечательные средства автоматизации в замечательном и бесплатном редакторе GIMP.

Допустим, у нас есть куча фотографий разных размеров, с разным соотношением сторон и сохранённых в разных форматах. В общем, тяжёлый случай. Нам нужно весь этот зоопарк выровнять по размерам, учитывая пропорции, и сохранить в JPEG с заданным качеством. Да, и пусть нам иногда захочется задавать размеры не в пикселях, а процентах. Ну и пусть уже тогда захочется файлы выбирать по маске, типа «C:\images\img_01*.jpg».

Садимся, и калякаем на Script-Fu (доступный по умолчанию в GIMP, язык) свой
первый сценарий

Разработка нечеткой нейронной сети NEFClass M

Reading time4 min
Views14K
Анализ недостатков системы NEFClass показывает, что их причиной является несовершенство алгоритма обучения нечетких множеств NEFClass. Для того что бы исправить это, необходимо заменить эмпирический алгоритм обучения на строгий алгоритм численной оптимизации. Как и оригинальная, так и модифицированная модель NEFClass основывается на архитектуре нечеткого персептрона. Архитектурные различия оригинальной и модифицированной моделей состоит в виде функций принадлежности нечетких множеств, функции t-нормы для вычисления активаций нейронов правил, а также в виде агрегирующей функции (t-конормы), определяющей активации выходных нейронов. Применение численных методов оптимизации требует дифференцируемости функций принадлежности нечетких множеств – условие, которому треугольные функции принадлежности не удовлетворяют. Поэтому в модифицированной модели нечеткие множества имеют гауссовскую функцию принадлежности.

Требование дифференцируемости диктует также вид t-нормы (пересечения) для вычисления активации нейронов правил. В системе NEFClass для этого используется функция минимума; в модификации это произведение соответствующих значений. Наконец, вид агрегирующей функции (t-конормы) для модифицированной модели ограничен только взвешенной суммой. Причина состоит в том, что функция максимума, которая используется в оригинальной системе, не удовлетворяет условию дифференцируемости.

Основное изменение, касается алгоритма обучения нечетких множеств. Целевой функцией в модифицированной системе NEFClass выступает минимизация среднеквадратичной ошибки на обучающей выборке по аналогии с классическими нейросетями
Читать дальше →

Заповеди IT-аутсорсера/Сервис провайдера

Reading time4 min
Views23K
Доброго времени суток, уважаемые хабровчане.

Так сложилось, что я начал свою карьеру в IT-аутсорсере, продолжил ее в интеграторе и до сих пор работаю в IT-сервис провайдере. Помимо этого мне приходится оказывать очень много услуг все тем же аутсорсерам, да и самому выступать «специалистом со стороны».

Благодаря этому опыту, а также счастью работать в полностью ITIL-compliant организации, у меня сложился ряд представлений о том, как должна вестись работа (речь скорее о внутренней «кухне»). Хотелось бы ими с Вами поделится. На их правильности я не настаиваю, однако такое «кредо» очень здорово помогает мне (а, соответственно, и моему работодателю) вести успешную работу и не переставать радовать клиентов.

Все остальное — под катом.

Читать дальше →

Несколько мифов об открытом доступе к науке (Open Access)

Reading time6 min
Views63K


4 октября журнал Science опубликовал исследование, посвященное публикации псевдонаучной статьи в 157 рецензируемых журналах открытого доступа (Open Access, OA). Автор исследования “Who’s afraid of peer review?” (“Кто боится рецензирования?”) — биолог Джон Боханнон (John Bohannon) — рассказывает о подготовке статьи, содержащей очевидные методологические ошибки, и ее отправке в несколько сотен журналов открытого доступа.
В результате...

«Фактура убила текстуру?» — мысли о роли текстур, фактур и материалов в играх

Reading time14 min
Views119K


Не то чтобы я был диким фанатом консолей, но есть вещи, которые действительно впечатляют. Понятное дело, что консолям нового поколения без впечатляющих пилотов на рынке делать нечего. Речь идет не о Watch Dogs, который тоже заслуживает внимания, как любая песочница с открытым миром, а о Tom Clancy’s The Division анонсированная для PS4 и Xbox One. Картинка (я оцениваю лишь ее) выглядит действительно хорошо. Игры уже давно стремятся быть не играми. Это уже почти кино. Меня мало волнует сейчас вопрос гейм-плея данной игры. Сейчас я просто потребитель, который готов клюнуть на вкусную обертку.

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

Мне уже давно не удается играть в игры как игроку. Иметь стопроцентное погружение. Это побочный эффект призмы через которую я смотрю на любую игру. Глаз в первую очередь цепляется за знакомые графические артефакты, ищет пути, которыми шли разработчики в создании графического контента. Одобрительно хлопает плюсам, и огорченно хмурит брови там, где все осталось как есть, без изменений. Все это помножено на «взгляд художника», который также аплодирует умелым действиям, и негодующе рычит в тех местах, где неизвестный художник допустил ошибку. Все это множится на еще не добитого геймера, который превыше всего ставит гейм-плей.

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



Что я вижу здесь? Для начала посмотрите трейлер и решите, что видите для себя вы. А потом… лопата?


Читать дальше →

Ранжирование в деталях

Reading time8 min
Views10K
Самым важным процессом поисковых систем для продвижения сайта является ранжирование — процесс выстраивания элементов множества web-страниц в последовательность, определяемую убыванием рангов релевантности этих ресурсов. Для определения ранга релевантности разрабатываются алгоритмы, которые определяют, что должно влиять на позицию, при каких запросах и условиях.

С каждым годом алгоритмы ранжирования совершенствуются: добавляются новые факторы, усложняются механизмы обработки информации – и все для того, чтобы идти в ногу со временем и отвечать на запрос пользователя всегда актуальной и действительно релевантной выдачей. Как спрос определяет предложение, так и алгоритмы ранжирования стимулируют развитие сайта в направлении, востребованном посетителем.
Отсутствие механизма ранжирования привело бы к хаосу в выдаче, когда нужная информация находилась бы далеко за первой десяткой, а наличие собственного сайта не имело бы смысла, кроме как лишний штрих в визитке. Тоже касается и усложнения алгоритмов определения ранга релевантности: если бы определение происходило по индексу цитируемости и ключевым вхождениям, то мы до сих пор бы смотрели на одностраничные сайты без дизайна, не задумываясь о юзабилити.
На определение ранга релевантности влияют различные факторы ранжирования, которых очень много на сегодняшний день и которые можно объединить между собой в группы. Поисковые системы оперируют одними понятиями группировки, оптимизаторы другими. При этом влияние фактора остается неизменным в алгоритме ранжирования. Некоторые факторы могут быть равноценными, что не позволяет линейно сравнивать между собой конкурентов. Однако основные направления задать и определить можно.

В данной статье речь пойдет преимущественно о текстовой и ссылочной составляющей.

Поисковая система Яндекс является наиболее интересным исследуемым объектом в данном плане не только потому, что в ней чаще, чем в других происходят сильные изменения в алгоритме, но и потому, что данная система является первой в Рунете по работе с коммерческими или продающими запросами.
Читать далее

Information

Rating
Does not participate
Registered
Activity