Рубрика «обработка изображений» - 67

Введение.

image
На той неделе darkk описал свой подход к проблеме распознавания состояния моста(сведён/разведён).

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

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

В последние несколько лет сильную популярность обрели нейронные сети, как алгоритм, который умудряется в автоматическом режиме извлекать признаки из данных и обрабатывать их, причём делается это настолько просто с точки зрения того, кто пишет код и достигается такая высокая точность, что во многих задачах (~5% от всех задач в машинном обучении) они рвут конкурентов на британский флаг с таким отрывом, что другие алгоритмы уже даже и не рассматриваются. Одно из этих успешных для нейронных сетей направлений — работа с изображениями. После убедительной победы свёрточных нейронных сетей на соревновании ImageNet в 2012 году публика в академических и не очень кругах возбудилась настолько, что научные результаты, а также програмные продукты в этом направлении появляются чуть ли не каждый день. И, как результат, использовать нейронные сети во многих случаях стало очень просто и они превратились из "модно и молодёжно" в обыкновенный инструмент, которым пользуются специалисты по машинному обучению, да и просто все желающие.

Читать полностью »

На Хабре у меня уже было две статьи (1 и 2), обе они касались реализации быстрого сжатия изображений по алгоритму JPEG на CUDA. Теперь я бы хотел рассказать о другой, гораздо более масштабной задаче — как мы сделали конвертер и видео плеер для серий DNG изображений на CUDA. При этом мы получили очень высокую скорость работы, потому что вся обработка исходных данных в формате DNG теперь выполняется на видеокарте NVIDIA.

Как мы сделали конвертер и плеер для CinemaDNG на CUDA - 1
Исходное изображение в формате DNG взято с сайта blackmagicdesign.com

Несмотря на то, что в мире уже есть очень большое количество конвертеров RAW, которые работают с форматом DNG, мы решили сделать ещё один, но очень быстрый, который можно было бы использовать в том числе для отбраковки и сортировки. Видео плееры DNG тоже есть, но обычно они работают с уменьшенным разрешением, поэтому просмотреть только что отснятый в формате DNG материал на полном разрешении — это проблема. С помощью нашего конвертера мы сделали попытку обработать картинки настолько быстро, чтобы уметь просматривать серии DNG изображений в реальном времени и при полном разрешении. Естественно, что кроме скорости необходимо было получить приемлемое качество обработки и шумоподавления, и мне кажется, что нам это удалось.
Читать полностью »

Перед тем как начать
Если вы новичок в OpenGL ES, рекомендую сначала изучить уроки №1 и №2, так как данный урок опирается на знания предыдущих уроков.
Основы кода, используемого в этой статье, взяты отсюда:
1. http://andmonahov.blogspot.com/2012/10/opengl-es-20.html
2. http://www.learnopengles.com/android-lesson-two-ambient-and-diffuse-lighting/
В результате мы получим такую картинку на экране устройства или эмулятора.
Изучаем OpenGL ES2 для Android Урок №3. Освещение - 1
Читать полностью »

Некоторое время назад (о, боже, уже год прошёл!) на вопрос, будет ли кому-то интересен обзор по современным методам сегментации изображения страницы документа, я получил положительный ответ (от massimus). И сегодня наконец-то решил этот обзор сделать.

Вот как-то так страницу сегментируемНо для начала – маленькое отступление. Систему распознавания текста в наших продуктах можно описать очень просто. У нас есть страница с текстом, мы разбираем ее на текстовые блоки, затем блоки разбираем на отдельные строчки, строчки на слова, слова на буквы, буквы распознаем, дальше по цепочке собираем все обратно в текст страницы. Задача сегментации ставится примерно так: есть страница, надо её декомпозировать на текстовые и нетекстовые элементы.

Дальше задачу можно уточнять и уточнять (здесь я уже вам поднадоел с разъяснениями, что правильная формулировка задачи — уже полшага к её решению; можете не сомневаться, коллег и начальство я достал этим ещё сильнее). Научные работники из разных стран, авторы приводимых методов, хотят заниматься наукой, а не казуистикой, поэтому формулируют свою задачу попроще:

На странице есть текст и картинки. Требуется разбить на блоки текст и выделить картинки. Читать полностью »

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

После второго "опоздания" на мосты, я задумался об источниках информации о досрочной сводке мостов. Одним из пришедших в голову вариантов была информация с публичных веб-камер. Вооружившись этими данными и остаточными знаниями со специализации по ML от МФТИ и Яндекса, я решил попробовать решить задачу "в лоб".

0, ДворцовыйЧитать полностью »

Вы заметили, что Фейсбук обрёл сверхъестественную способность распознавать ваших друзей на ваших фотографиях? В старые времена Фейсбук отмечал ваших друзей на фотографиях лишь после того, как вы щёлкали соответствующее изображение и вводили через клавиатуру имя вашего друга. Сейчас после вашей загрузки фотографии Фейсбук отмечает любого для вас, что похоже на волшебство:
Читать полностью »

Как всем известно, жизнь разработчика мобильных игр непроста. Он должен найти свой путь на очень узкой дорожке. С одной ее стороны — требования гейм-дизайнеров, уверенно устремляющиеся к бесконечности. Больше функционала, больше красивой графики, больше эффектов, больше анимаций, больше звуков. А с другой стороны — ограниченные ресурсы мобильного устройства. И раньше всего, как правило, заканчивается оперативная память.

Например, iPad 2 — всего в нем 512 Мб RAM. Однако приложению доступно только примерно 275 Мб. Когда занимаемая приложением память будет приближаться к этой границе, операционная система пришлет так называемое «Memory warning» — мягко, но настойчиво предложит освободить память. И если лимит все же будет превышен, операционная система остановит приложение. Пользователь будет думать, что ваша игра упала и побежит писать гневное письмо в саппорт.

Как оптимизировать игру с помощью полигональных атласов - 1

Главный потребитель памяти — это, конечно, графика. В этой статье мы попробуем рассказать о пусть немного сложном, но эффективном способе, который используется для уменьшения занимаемой текстурами памяти, а также для повышения скорости отрисовки.
Читать полностью »

Еще до Google Maps в 1998 году у пользователей сети Интернет была возможность посетить другой город, страну или континент, не выходя из дома. Это был первый крупнейший в мире онлайн атлас, который сочетал в себе как спутниковые, так и топографические снимки Земли. Проект носил название TerraServer и содержал в себе более 8 ТБ данных с изображениями от Геологической службы Соединенных Штатов (USGS) и СПИН-2 (SPIN-2), которые обрабатывались базой данных SQL. У данного проекта была всего одна цель и она заключалась вовсе не в том, чтобы помогать пользователям сидя перед монитором «перелетать» через горизонт. Нет, задачей TerraServer была демонстрация возможностей Microsoft: программное обеспечение компании могло обрабатывать самую большую базу данных без каких-либо проблем.

TerraServer бесполезный сервис или упущенная возможность? - 1Читать полностью »

Переход от режима Hand в Intel RealSense SDK R4 (v6.0) к режиму Cursor в Intel RealSense SDK 2016 R1 - 1
После появления камеры Intel RealSense SR300 и пакета Intel RealSense SDK 2016 R1 появился новый режим взаимодействия с помощью жестов — режим указателя (Cursor), доступный только при использовании камеры SR300. В этом учебном руководстве описываются изменения кода, необходимые для задействования этой новой функциональности.
Читать полностью »

image

Когда мы подыскиваем для себя новый стиль прически, то всегда стараемся понять, как же мы будем выглядеть после похода к парикмахеру. Иногда и просто хочется представить себя в стиле, характерном для 30-х или 70-х годов прошлого века. Порой появляется и желание узнать, как мы будем выглядеть в будущем — скажем, в 50 или 70 лет. Или как будут выглядеть наши дети в через 10 лет.

Выполнить свое желание, конечно, можно. Но для этого нужно либо обращаться за помощью к специалисту по графическому дизайну, либо тратить собственное свободное время. Сейчас появился третий способ — это сервис Dreambit, который все сделает самостоятельно. Поисковый движок разработан специалистами Вашингтонского университета, и он может заменить практически любое лицо с фотографии из интернета фотографией любого другого лица. Замена здесь не поштучная — загруженная фотография будет подставлена ко всем фотографиям, найденным по запросу «кучерявые волосы» или «люди 30-х годов».
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js