С течением времени изменяются наши представления о способах взаимодействия с компьютером. На смену «классических» клавиатуры и мыши, в нашу жизнь прочно вошли тачпады и сенсорные экраны. Но это не последняя ступень эволюции для средств ввода информации. С появлением устройств дополненной реальности, например таких, как Google Glass, возникает необходимость в интерфейсах способных гармонично вписываться в данную концепцию. Предпосылки к возникновению таких интерфейсов имеются, так, например, появились такие устройства как Intel Creative Camera, Microsoft Kinect или Leap Motion. Основными управляющими элементами в данных устройствах являются руки пользователя. Поэтому, одной из фундаментальных алгоритмических задач, для взаимодействия с подобными устройствами, является детектирование рук и пальцев пользователя и реконструкция их пространственного расположения.
В данной статье речь пойдет о одном из способов решения задачи детектирования ладоней и пальцев.
Код опубликован Музеем компьютерной истории с разрешения компании Adobe и свободно доступен для некоммерческого использования. Архив содержит 179 файлов, в общей сложности около 128 000 строк кода почти без комментариев. Около 75% написано на языке программирования Паскаль, ещё 15% на ассемблере для Motorola 68000.
Вейвлеты сейчас на слуху. Даже неискушённые в математике люди наверняка слышали, что с их помощью удаётся сжимать изображения и видео сохраняя приемлемое качество. Но что же такое вейвлет? Википедия отвечает на этот вопрос целым ворохом формул за которыми не так-то легко увидеть суть.
Попробуем на простых примерах разобраться, откуда же вообще берутся вейвлеты и как их можно использовать при сжатии. Предполагается, что читатель знаком с основами линейной алгебры, не боится слов вектор и матрица, а также умеет их перемножать. (А во второй части даже попробуем что-то запрограммировать.)
По данной теме очень много холиваров и разрозненных статей, но мне хотелось бы рассказать, как я использую в своей компании только open source ПО.
Началось все с того, что у меня появился принтер KM Bizhub C220 и резак с ламинатором. Занимался я тогда администрированием и разработкой ПО (только под Linux), а так же преподавал программирование (C/C++), и решил попробовать делать хотя бы визитки в inkscape c редким использованием Gimp, эти приложения я уже знал. Сложности начались с выводом на принтер, Bizhub C220 тогда только вышел и PS драйвер для него был очень сырой. Для того чтобы адекватно выводить на печать пришлось использовать или Scribus, или Evince (если это pdf)…
В статье я расскажу небольшую историю про маленькую техническую задачку и о том, как её решали разные люди вокруг. Быть может этот рассказ поможет читателю вынести несколько уроков о том, какие временами встречаются ошибки.
Немножко матана инклудэд.
Идея распознавать людей по радужной оболочке появилась в далёком 1987 у доктора Джона Доугмана и была запатентована в 1989. Примерно тогда же появился прототип. На тот момент это была вершина технологии. Пару лет до первой коммерческой цифровой камеры + алгоритм обработки изображения на компьютерах уровня i386/i486. До сих пор я не представляю, как можно получать на таком оборудовании стабильный результат.
Задачка о которой я хочу рассказать появилась на свет где-то в 2006-2009 годах. Процессоры к этому времени несколько ускорились, появились хорошие камеры, патент 1989 года истёк и системы распознавания по глазам теперь получил право делать каждый. Люди, которые решили сделать клон системы захотели использовать современные технологии и улучшить алгоритм. Самое первое, что бросалось в глаза — старый алгоритм сравнения глаз использовал изображение глаза в близком ИК диапазоне. То, что глаза бывают цветными не учитывалось.
После начала разработки в мае 2012 года прошло долгое время. Сделать камера-модуль для Pi оказалось не так просто, но работа близится к концу. В официальном блоге говорят, что в продаже камера-модули появятся через месяц или чуть позже. Качество фотографий уже «вполне хорошее», а к началу продаж его обещают довести до «прекрасного». Заранее объявлена цена: $25 за модуль.
В то время пока беспилотники заполоняют небо с неимоверной скоростью над полями сражений и университетскими кампусами, правительство Соединённых Штатов проявляет неподдельный интерес по оснащению таких аппаратов современными технологиями наблюдения. Последней из таких является разработка DAPRA — пугающий ARGUS-IS — записывающее устройство с массивом сенсоров в сумме дающим изображение в 1,8 гигапикселей; хватит, к примеру, на пол-Манхэттена. Новейшая разработка для постоянного наблюдения за обширными территориями может обнаруживать и отслеживать движущиеся объекты размером от 15 сантиметров на высотах до 6 километров.
Но мне, как и многим другим, не удавалось достичь особых успехов в ней. Были жалобы на пропадающие призы (подтверждаю), проскальзывающее управление и просто лаги. Обычно я довольно равнодушен к таким вещам, но жесткий диссонанс между теплым и ламповым дизайном и кривой реализацией меня всерьез задел. К тому же, таблица рекордов там постоянно пополнялась, а мне не удавалось достичь и половины.
В итоге я решил измерить кривизну либо своих рук, либо самой игры.
К тому же я недавно заново открыл для себя Matlab. И если уж я в Matlab'e занимаюсь управлением шаговыми двигателями через LPT, то почему бы не попробовать в нем еще более дикую идею написания бота для игры.
Сначала даже мысли не было писать статью, все казалось обыденным и малоинтересным. Но к своему удивлению, занимаясь на новогодних выходных приведением в порядок фотоальбомов, с интересом заметил, что не только я решил посвятить этому полезному делу праздничное время. Соответствующая по тематике статья «Опыт создания каталога и индексации семейного фото-архива. Индексация и оцифровка фотопленок» была и на хабре. Чуть позже появилась еще одна статья «Метаданные для организации хранения фото-архива». Посему решил поделиться каким-никаким опытом, может что по крупицам кому и пригодится.
В общем-то идея отсканировать и упорядочить старые фотографии, конечно же, вынашивалась давно, на такой объем работ по сканированию старых фотопленок (больше сотни) и фотографий (тысячи) решиться непросто. Вообще еще с детства хотел, чтобы у меня были оцифрованные старые фотографии прапрабабушек-прадедушек, и вот наконец спустя 20 лет решил сподвигнуться на это дело.
Сразу скажу, мы потратили массу времени впустую на этом проекте, но зато приобрели некоторый полезный опыт, о котором, я думаю многим будет интересно почитать, чтобы не наступать на те же грабли. Интересующихся работой с большими анимациями под iOS прошу под кат.
Привет, хабр!
Наверное, не ошибусь, если скажу, что у многих пользователей хабра скопился небольшой архив фото- и видео- материалов, которые хранят воспоминания о различных моментах собственной жизни, или жизни близких людей. У некоторых этот архив, возможно, уже занимает не один жёсткий диск. Но многие ли из вас задумывались, как лучше хранить все эти фотографии, как с архивом распорядятся ваши дети? Хочу затронуть скользкую и не очень тематическую тему «организации хранения личного фото-архива», в которой много вопросов и мало ответов, много текста и мало картинок.
Пару лет назад, в процессе выполнения одного проекта, связанного с выделением и сопровождением движущихся объектов, было просмотрено немало алгоритмов вычитания фона, и в итоге одним из самых интересных оказался тот, о котором дальше и пойдет речь. Основной его недостаток — куча патентов, которыми он защищен. Но одно из несомненных достоинств — наличие библиотеки под Linux, которую разрешено использовать в некоммерческих проектах. На странице с его описанием можно найти эту самую библиотеку, а также demo-программы под Windows и Android, ссылки на патенты (где и можно найти основные описания алгоритма) и прочую интересную информацию.
Какой образ Винсента Ван Гога осел в человеческой памяти, если бы он жил в более поздний период, в который уже бы имела распространение цветная фотография? Литовский фотограф и архитектор Тадао Серн попытался ответить на этот вопрос, взяв за основу автопортрет импрессиониста, и посредством ретуши восстановил фотографию художника.
Качество полученного позволяло, и Тадао не преминул воспользоваться возможностью пошутить, что это настоящая фотография, которую он сделал в прошлом, а загадочный фотографируемый, получив снимки, больше с ним на контакт не выходил.
Сравните полученный результат с оригинальным автопортретом:
Среди краудсорсинговых научных программ Интернета пополнение. Добро пожаловать на четвертую планету. NASA предлагает всем желающим принять участие в изучении уникальных для Марса сезонных явлений, подобных которым нет на Земле.
Зачастую при поиске движущихся объектов на видео будь то методом вычитания фона, временной разности, оптического потока, в итоге мы получаем множество точек, которые после действия вышеупомянутых алгоритмов помечены как изменившие свое положение относительно предыдущего кадра и относящиеся к переднему плану.
После такой обработки встает вопрос о сегментации объектов методом кластерного анализа, о котором пойдет речь ниже и собственно его реализация на C++.
Добрый день, эта статья написана для подведения промежуточных итогов моей работы по оцифровке большого количества разных семейных фотографий. Работа не закончена и до конца еще далеко, но многие выводы уже можно сделать и поделиться ими со всеми, кому интересна тема.
Первый шаг — создание каталога в Excel. Сейчас в нем 3 вкладки: Альбомы, Пленки, Слайды. Собираюсь в будущем расширить также на киноматериалы, но оцифровка 8-мм кинопленок — отдельная большая тема.
№
Титул
Прибл.
N страниц
Прибл.N фото
Период от
До
Описание
Внешн.вид
Примечание
1
Студенческий альбом И.М… 3 курс 1975 — Семейный по прибл. 1984 г.
35
120
1975
1985
Много ненаклеенных фоток в конце
Бежевый.Альбом.Ленинград Leningrad.Изобр-е Авроры
4 экрана отсканировано
9
Вставка листов старого альбома 20-40х годов. Родственники и родители Е. Л., фото К.C, И.
20
100
1922
1950
Вставки белых листов. Наклеенные вырезанные цветки из нем. открыток. Омск, Бийск, военные фото, самая старая 22 год, 27 год Омск. Многие вырваны/оторваны, лежат рядом. надписи на обратной стороне
Сиреневый картон. Альбом.Надпись «Альбом» курсивом. Звезда с Кремлем и цветами.
2009-01-10 Отскан. ок. 30 экранов в 400 dpi. Осталось ок. трети.
Альбомы. Перечисляются фотоальбомы, пакеты с фотографиями и отдельные кадры в рамке или иногда без нее. На данный момент 57 штук. Самая старая фотография отмечена на задней стороне карандашом «1922 год». В документе Excel удобно делать фон ячейки «Внешний вид» таким же, как и цвет обложки альбома — потом быстрее находить, просто в Хабре не удалось раскрасить фон в теге td.
Месяц назад я писал об определении моим роботом-грузчиком собственного положения. (Жаль, ту статью я запостил в неудачное время в ночь на субботу, так что её мало кто увидел.) Как я отметил, показания колёсных датчиков позволяют роботу определять своё положение достаточно точно — медленно накапливающаяся ошибка корректируется, как только робот сканирует баркод на любой из полок склада. С другой стороны, накапливающуюся ошибку направления корректировать было нечем.
Я обсудил свои затруднения с девушкой-гуманитарием, и спросил, какие ей известны способы ориентации в пространстве. По её словам, в Лондонском музее науки она застала экспозицию, посвящённую ориентации муравьёв по виду вертикально вверх над головой. Посетителям предлагалось взять зеркало и идти по комнате, разглядывая в это зеркало узоры на потолке и ориентируясь лишь по ним. (Карта потолка прилагалась.)
Я решил проверить: что видит на потолке склада мой робот?
Безусловно одним из разочарований 2012 года оказалась камера Lytro. Отличный концепт получился не такой уж удобный в жизни. Многие владельцы этой уникальной камеры жалуются, что получить эффектные фотографии достаточно сложно. Если вы не знаете в чем заключается фишка этой камеры, можете глянуть эти дваобзора. Если коротко, вы можете выбирать на фотографии нужную резкость для определенных участков. Благодаря стараниям ребят из The Chaos Collective теперь фотографии в стиле Lytro может сделать любой желающий!
В связи с неожиданным успехом совершенно ненаучной публикации о создании фонов за достаточно краткий отрезок времени, и вследствие неожиданного интереса хабрчан к изобразительному искусству я решил продолжить небольшие, но я надеюсь, увлекательные истории посвященные тому, как можно сделать что-либо просто, и тому из чего это простое состоит.
Сказанное выше означает, что данный материал, как и большинство материалов, которые я планирую публиковать далее, будут, интересны как начинающим, так и вовсе незнакомым с графикой людям, как база на будущее. Довольно развязная манера излагать теорию, неуместные шутки и истории из жизни художников помогут сделать эту публикацию полезной и для тех, кто просто хочет отдохнуть, попутно впитывая новую информацию.
У тех матерых спецов, которые рано или поздно всенепременно явятся сюда, чтобы линчевать меня (хотя бы за подобную манеру изложения и отношение к предмету), — я заранее прошу прощения. Каюсь, грешен, но ничего с собой поделать не могу, и графоманию эту намерен и дальше продвигать в массы.
Партия реверансов сделана, тылы прикрыты, паноптикум можно считать открытым.
Уверен, что голая теория вам нужна не более чем собаке пятая лапа. Признаюсь также, что все разы, когда я сталкивался с голой теорией, заканчивались крепким сном. Когда-то давно, когда я только начинал изучать первый пакет трехмерного моделирования, купив пару толстенных книг и проигнорировав при этом известное положение о том, что важен совсем не размер, со мной начали приключаться удивительные вещи. На первых же страницах. Я засыпал. Позорно. В тех позах, в которых меня застигала чертова книга. Везде. Даже в метро.
Я не хочу того же для вас. Хочу, чтобы история была интересной, а посему – долой нудную теорию, долой правила, лекторский тон и никому не нужный апломб. Никаких графиков, таблиц и сравнений. Только эмоции и веселье, по возможности, наподобие этой работы. Один из артов которые я изготовил во время компании в поддержку финансирования разработки игры Wasteland 2.
Что же останется в статье, если убрать особливо техническую информацию, — спросите вы?