Обновить
88.3

Обработка изображений *

Работаем с фото и видео

Сначала показывать
Порог рейтинга
Уровень сложности

Laplace Blur — Можно ли блюрить Лапласом вместо Гаусса, во сколько раз это быстрее, и стоит ли того потеря 1/32 точности

Время на прочтение7 мин
Охват и читатели12K
image

«Блюр» в простонародье — эффект размытия, в цифровой обработке изображений. Бывает очень эффектен и сам по себе, и как составляющее анимаций интерфейса, или более сложных производных эффектов (bloom/focusBlur/motionBlur). При всем этом честный блюр в лоб довольно медленен. И часто реализации встроенные в целевую платформу оставляют желать лучшего. То скорость печальна, то артефакты режут глаза. Ситуация рождает множество компромиссных реализаций, лучше или хуже подходящих для определенных условий. Оригинальная реализация с хорошим качеством достоверности и высочайшей скоростью, при этом нижайшей зависимостью от аппаратной части ждет вас под катом. Приятного аппетита!
Читать дальше →

Следование линии на основе OpenCV

Время на прочтение4 мин
Охват и читатели18K
Сейчас очень популярны курсы по созданию автопилотов для машин. Вот эта нано-степень от Udacity — самый наверное известный вариант.

Много людей по нему учатся и выкладывают свои решения. Я тоже не смог пройти мимо и увлекся.

Разница в том, что курс предполагает разработку алгоритма на основе предоставляемых данных, а я делал все для своего робота.
Читать дальше →

Преобразование цветовой температуры (K) в RGB: алгоритм и пример кода

Время на прочтение7 мин
Охват и читатели20K


Если вы не знаете, что такое цветовая температура, начните отсюда.

Работая над инструментом «Цветовая температура» для PhotoDemon, я целый вечер пытался определить простой и понятный алгоритм преобразования между значениями температуры (в Кельвинах) и RGB. Я думал, что такой алгоритм будет просто найти, ведь во многих фоторедакторах есть инструменты для коррекции цветовой температуры, а в каждой современной камере, включая смартфоны, есть регулировка баланса белого на основе условий освещения.
Читать дальше →

Посмотри на тень

Время на прочтение2 мин
Охват и читатели3.6K


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

Хочу сделать небольшой обзор на эту тему. Думаю что будет познавательно и интересно.
Читать дальше →

Работа с изображениями на Python

Время на прочтение18 мин
Охват и читатели113K
Тема сегодняшнего разговора — чему же научился Python за все годы своего существования в работе с изображениями. И действительно, кроме старичков родом из 1990 года ImageMagick и GraphicsMagick, есть современные эффективные библиотеки. Например, Pillow и более производительная Pillow-SIMD. Их активный разработчик Александр Карпинский (homm) на MoscowPython сравнил разные библиотеки для работы с изображениями на Python, представил бенчмарки и рассказал о неочевидных особенностях, которых всегда хватает. В этой статье расшифровка доклада, который поможет вам выбрать библиотеку под свое приложение, и сделать так, чтобы она работало максимально эффективно.


О спикере: Александр Карпинский работает в компании Uploadcare и занимается сервисом быстрой модификации изображений на лету. Участвует в разработке Pillow — популярной библиотеки для работы с изображениями на Python, развивает собственный форк этой библиотеки — Pillow-SIMD, который использует современные инструкции процессоров для наибольшей производительности.

Решение проблемы обнаружения центральной линии сосуда

Время на прочтение9 мин
Охват и читатели9.8K

Суть задачи


В процессе медицинской диагностики может возникнуть необходимость исследовать сосуды пациента. Такое исследование называется ангиографией. С появлением томографов в дополнение к классической ангиографии появились методы МРТ и КТ ангиографии, которые в отличие от традиционной ангиографии, дающей только плоскую картинку в одной проекции, позволяют получить полное трехмерное представление сосудов. Для проведения таких исследований пациенту в кровь вводится контраст — специальное вещество, делающее сосуды на снимках более яркими. В зависимости от предполагаемого диагноза, врач или оценивает общую картину, или пытается найти конкретные участки сосудов, в которых возникли проблемы. Если участок сосуда сужен и пропускает меньше крови, чем должен, то это место называется стенозом.


Одна из задач врача — найти стенозы и оценить, насколько они опасны. Задача же разработчика, как обычно, облегчить работу конечного пользователя. Для этого необходимо построить полную 3D модель стенок сосуда и провести их первичный анализ. Это является большой и интересной задачей, однако, в её основе лежит более простая и известная проблема — построение центральной линии сосуда.
Читать дальше →

iPhone XS: почему это совершенно новая камера

Время на прочтение9 мин
Охват и читатели44K
Отчёт стартапа, занимающегося приложением для улучшения фотосъёмки с iPhone



iPhone XS против iPhone X – изменения в камере на уровне железа

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

Проведя анализ, мы можем выдать более подробный обзор того, что нового можно увидеть в камере iPhone XS, и больше подробностей о её технических возможностях, чем Apple пожелала раскрыть на презентации.

Это именно спецификации железа – притом, что Apple в основном концентрировалась на таких программных улучшениях, как Smart HDR и новый портретный режим.
Читать дальше →

Посылка на луну

Время на прочтение2 мин
Охват и читатели3.4K
Фонд Arch Mission в сотрудничестве с Microsoft, Вашингтонским университетом и компанией Twist Bioscience включит 10 000 изображений, текст 20 книг и другую информацию, закодированную на синтетических молекулах ДНК, в Lunar Library («Лунную библиотеку»).

Любой желающий может предложить свое изображение для кодирования в ДНК и отправки на Луну на сайте.

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

Автоматизация секс-индустрии или госуслуги по-немецки

Время на прочтение3 мин
Охват и читатели41K

С момента, когда мы вслух заявили о распознавании паспорта гражданина РФ на мобильном телефоне прошло уже более трех лет. За это время мы научили наш движок распознавать различные документы, удостоверяющие личность, для более, чем 165 стран мира. Но в этой статье мы решили не писать про высокую важность и сложность технологии, грандиозные масштабы разработки, а сосредоточиться на описании интересного с точки зрения автоматизации народного хозяйства варианта использования нашего движка. Если вам 18+, а также интересны подробности, добро пожаловать под кат.

Обучение и тестирование нейронных сетей на PyTorch с помощью Ignite

Время на прочтение17 мин
Охват и читатели41K

Привет, Хабр, в этой статье я расскажу про библиотеку ignite, с помощью которой можно легко обучать и тестировать нейронные сети, используя фреймворк PyTorch.


С помощью ignite можно писать циклы для обучения сети буквально в несколько строк, добавлять из коробки расчет стандартных метрик, сохранять модель и т.д. Ну, а для тех кто переехал с TF на PyTorch, можно сказать, что библиотека ignite — Keras для PyTorch.


В статье будет детально разобран пример обучения нейронной сети для задачи классификации, используя ignite


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

Ищем быструю универсальную библиотеку для работы с графическими файлами, разбираемся с Google benchmark

Время на прочтение8 мин
Охват и читатели9.8K


В наше время, когда нейронные сети бороздят просторы Big Data, а искусственный интеллект раздумывает, выгодно ли ему получать зарплату за свою работу в Bitcoin, доставшаяся мне задача поиска самой быстрой открытой кросс-платформенной библиотеки для загрузки, сохранения и перекодирования графических файлов выглядела настоящим анахронизмом. Но на самом деле эта задача актуальна как никогда – для всех технологий компьютерного зрения и машинного обучения гигабайты картинок надо обязательно загрузить, а иногда и сохранить промежуточные данные в виде изображений. Так что сделать это самым быстрым способом очень желательно. В этой статье мы найдем искомую библиотеку, а, главное, разберемся с очень полезным продуктом, сильно упрощающим подобные и многие другие задачи — Google Benchmark.
Читать дальше →

«Цифровое книгопечатание» или мой опыт в мобильной оцифровке книг

Время на прочтение6 мин
Охват и читатели40K

Любите ли вы книги так, как люблю их я...


Детство и юность, проведенная в маленьком городе, где в районной библиотеке из энциклопедий был лишь "Большой энциклопедический словарь" приучила к бережному, практически благоговейному отношению к любой технической книге. Я понимаю, почему люди пережившие блокаду все время держали дома запас продуктов. Первое время, получив доступ к более или менее скоростному интернету все время хотелось скачивать новые книги и сохранять их на жестком диске, сохранять, сохранять :). Потом появился twirpx и я понял, что книги, как и знания, должны участвовать в постоянном круговороте, иначе они мертвы. Стоило один раз отсканировать монографию своего научного руководителя и услышать десятки отзывов скачавших, как лавину уже было не остановить. Я заметил, что сегодня поделившись редкой книгой, завтра я увижу две, а то и три не менее редких, которыми поделились другие.


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

Восстановление смазанных и расфокусированных изображений с помощью фильтра Винера. Реализация на C++ OpenCV

Время на прочтение2 мин
Охват и читатели28K

В продолжении статьи про восстановление расфокусированных и смазанных изображений хочу поделиться своими результатами восстановления реальных изображений с помощью фильтра Винера. В качестве библиотеки обработки изображений использовалась OpenCV 3.4. Фотокамера – Nikon D320, объектив Nikon DX AF-S NIKKOR 18-105mm, расфокусировка осуществлялась вручную, съёмка осуществлялась без штатива.

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

Ближайшие события

Быстрый ресайз джипегов на видеокарте

Время на прочтение9 мин
Охват и читатели9.3K
В приложениях по работе с изображениями довольно часто встречается задача ресайза джипегов (картинок, сжатых по алгоритму JPEG). В этом случае сразу сделать ресайз нельзя и нужно сначала декодировать исходные данные. Ничего сложного и нового в этом нет, но если это нужно делать много миллионов раз в сутки, то особую важность приобретает оптимизация производительности такого решения, которое должно быть очень быстрым.


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

Новая наука заглядывания за угол

Время на прочтение10 мин
Охват и читатели24K

Исследователи компьютерного зрения обнаружили имеющийся у нас в распоряжении скрытый мир визуальных сигналов, где есть незаметные движения, выдающие то, что было сказано, и расплывчатые изображения того, что находится за углом




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

«Эти изображения скрыты от нас, — сказал он, — но они постоянно нас окружают».

Цукерберг финансирует: Как «подружить» оптические технологии и биомедицину

Время на прочтение7 мин
Охват и читатели2.4K
Чтобы ускорить биомедтех, создатель Fаcebook решил профинансировать Imaging Scientists (ученые, занимающиеся наукой о сборе, хранении, поиске и обработке визуальной информации).

image

Конфокальная микроскопия фибробластов, которые важны в соединительной ткани. Ядра отмечены синим, актинические волокна красным, а тубулины зеленым. Фото: iStock.com.

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

Chan Zuckerberg Initiative (CZI) в прошлом году провели три семинара по теме обработки изображений, которые были направлены на вычислительные инструменты для микроскопии, клеточную и субклеточную визуализацию и визуализацию в мезомасштабе и макромасштабе, соответственно. Мы также посетили семь различных центров обработки изображений в США и Европе. В полученных нами отзывах мы увидели возможность ускорения прогресса в области обработки изображений за счет использования технологической экспертизы, которая стала основой нашего запроса на предоставление информационных систем для ученых, занимающихся наукой о сборе, хранении, поиске и обработке визуальной информации (RFA)
Читать дальше →

Как Яндекс применил компьютерное зрение для повышения качества видеотрансляций. Технология DeepHD

Время на прочтение7 мин
Охват и читатели73K
Когда люди ищут в интернете картинку или видео, они часто прибавляют к запросу фразу «в хорошем качестве». Под качеством обычно имеется в виду разрешение — пользователи хотят, чтобы изображение было большим и при этом хорошо выглядело на экране современного компьютера, смартфона или телевизора. Но что делать, если источника в хорошем качестве просто не существует?

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



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

Губозакаточная машинка для этикеток — разворачиваем цилиндрическое искажение программно

Время на прочтение3 мин
Охват и читатели20K
В данной статье описывается шеститочечный метод разворачивания этикеток. Этот метод — обратная задача рендерингу, т.е. по ключевым точкам определяется геометрия бутылки, и высчитывает исходная плоскость изображения. Все манипуляции делаются при помощи библиотеки OpenCV. Добро пожаловать под кат!


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

Как нарисовать чёрную дыру. Геодезическая трассировка лучей в искривлённом пространстве-времени

Время на прочтение14 мин
Охват и читатели52K
«Это легко. Берём метрику Шварцшильда, ищем символы Кристоффеля, вычисляем их производную, записываем геодезическое уравнение, меняем некоторые декартовы координаты (чтобы не страдать), получаем большое многострочное ОДУ — и решаем его. Примерно так».



Теперь ясно, что чёрные дыры меня засосали. Они бесконечно увлекательны. В прошлый раз я разбирался с визуализацией геометрии Шварцшильда. Меня поглотила проблема точного представления, как кривизна такого пространства-времени влияет на внешний вид неба (поскольку фотоны из удалённых источников движутся вдоль геодезических линий, изогнутых чёрной дырой) для создания интерактивного моделирования. Вот результат (работает в браузере). Хитрость в максимально возможном предрасчёте отклонения световых лучей. Всё работает более-менее нормально, но конечно, такая симуляция далека от идеала, потому что в реальности там не производится никакой трассировки (для неспециалистов: восстановление назад во времени местонахождения световых лучей, падающих в камеру).

Мой новый проект исправляет этот недостаток, отказавшись от эффективности/интерактивности самым простым образом: это рейтрейсер чисто на CPU. Трассировка выполняется максимально точно и максимально долго. Рендеринг изображения вверху занял 15 5 минут (спасибо, RK4) на моём ноутбуке.
Читать дальше →

Google объявляет конкурс атак на алгоритмы машинного зрения

Время на прочтение3 мин
Охват и читатели13K
Распознавание изображений с помощью нейросетей становится лучше, но до сих пор исследователи не побороли некоторые его фундаментальные недостатки. Там, где человек четко и ясно видит, например, велосипед, даже передовой натренированный ИИ может увидеть птицу.

Часто причина в так называемых «вредных данных» (или «соревновательных элементах», или «вредоносных экземплярах» или еще куче вариантов, поскольку «adversary examples» так и не получили общепринятого перевода). Это данные, которые обманывают классификатор нейросети, подсовывая ему признаки других классов — информацию не важную и не видную для для человеческого восприятия, но необходимую для машинного зрения.

Исследователи из Google опубликовали в 2015 году работу, где проиллюстрировали проблему таким примером:


На изображение панды наложили «вредный» градиент. Человек на полученной картинке, естественно, продолжает видеть панду, а нейросеть распознает ее как гиббона, поскольку в те участки изображения, по которым нейросеть научилась определять панд, специально намешали признаки другого класса.

В сферах, где машинное зрение должно быть предельно точным, а ошибка, взлом и действия злоумышленников могут иметь тяжелые последствия, вредные данные — серьезная помеха развитию. Прогресс в борьбе идет медленно, и компания GoogleAI (подразделение Google занимающееся исследованием ИИ) решила привлечь силы сообщества и устроить соревнование.
Читать дальше →

Вклад авторов