Рубрика «Алгоритмы» - 49

Сортировка «Американский флаг» - 1


Чтобы понять принцип действия этой «многополосной» сортировки проще для начала разобраться на примере флага с тремя полосами. А чтобы легко разобраться с трёхцветным флагом, лучше сначала посмотреть, как это работает на примере двухцветного. А чтобы разобраться с двухцветным...Читать полностью »

image

Введение

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

Блокнот Mathematica для воспроизведения результатов можно найти здесь, а pdf-версия находится здесь.

Что такое дизеринг?

Дизеринг (Dithering) можно описать как намеренное/осознанное внесение в сигнал шума для предотвращения ошибок большого масштаба/низкого разрешения, возникающих вследствие дискретизации или субдискретизации.

Если вы когда-нибудь работали с:

  • Аудиосигналами,
  • Палитровыми форматами изображений 90-х

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

Однако я обнаружил в Википедии довольно удивительный факт о том, как впервые был определён и использован дизеринг:Читать полностью »

Робомобиль DeLorean научили дрифтить - 1

Источник: Stanford

Инженеры из Стэнфордского университета в США обучили робомобиль, собранный из автомобиля DeLorean 1981 года выпуска, управляемому заносу. Исследователи утверждают, что их разработки должны помочь беспилотникам избегать аварий.

Инженеры оснастили DeLorean автоматическим управлением и бортовыми компьютерами ещё в 2015 году. Робомобиль, который они назвали MARTY в честь главного героя фильма «Назад в будущее» Марти Макфлая, совершенствовался последние четыре года. Для обучения MARTY исследователи использовали записи дрифта профессиональных водителей. Все механические системы DeLorean были заменены на электронные, которые управляются бортовыми компьютерами. Компьютеры, в свою очередь, получают данные о движении робомобиля с GPS-датчиков. Читать полностью »

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

В данной статье мы разберемся, как откалибровать робота, чтобы иметь возможность переходить между Системой Координат робота и СК 3D-камеры.
Добавляем роботу глаза - 1
Читать полностью »

VACUUM может «зачистить» из таблицы в PostgreSQL только то, что никто не может увидеть — то есть нет ни одного активного запроса, стартовавшего раньше, чем эти записи были изменены.

А если такой неприятный тип (продолжительная OLAP-нагрузка на OLTP-базе) все же есть? Как почистить активно меняющуюся таблицу в окружении длинных запросов и не наступить на грабли?

Когда пасует VACUUM — чистим таблицу вручную - 1
Читать полностью »

image

Журналисты The Guardian, которая одной из первых раскрыла использование данных десятков миллионов пользователей Facebook британской компанией Cambridge Analytica, не могли добиться интервью с главой соцсети Марком Цукербергом. В итоге они пообщались с нейросетью Цукербот, которую обучили отвечать на вопросы с помощью интервью и публичных выступлений главы Facebook.

Алгоритм создала студия Botnik. Цукербота обучали с применением интервью, речей и публикаций в блогах Цукерберга за последние три года. В итоге нейросеть может оперировать 200 тысячами слов. The Guardian готовила вопросы для интервью совместно с Observer. Читать полностью »

Вторая часть: Принципы работы видеокодека


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

Если рассматривать итоговый цвет как комбинацию т.н. основных цветов (красного, зеленого и синего), в нашей трёхмерной матрице определяем три плоскости: первая для красного цвета, вторая для зеленого и последняя для синего.

3D матрица RGB


Будем называть каждую точку в этой матрице пикселем (элементом изображения). Каждый пиксель содержит информацию об интенсивности (обычно в виде числового значение) каждого цвета. Например, красный пиксель означает, что в нём 0 зеленого цвета, 0 синего и максимум красного. Пиксель розового цвета может быть сформирован с помощью комбинации трех цветов. Используя числовой диапазон от 0 до 255, розовый пиксель определяется как Красный = 255, Зелёный = 192 и Синий = 203.Читать полностью »

Первая часть: Основы работы с видео и изображениями


Kodek's History

Что? Видеокодек — это часть программного/аппаратного обеспечения, сжимающая и/или распаковывающая цифровое видео.

Для чего? Невзирая на определённые ограничения как по пропускной способности так
и по количеству места для хранения данных, рынок требует всё более качественного видео. Припоминаете, как в прошлом посте мы подсчитали необходимый минимум для 30 кадров в секунду, 24 бита на пиксель, с разрешение 480x240? Получили 82,944 Мбит/с без сжатия. Сжатие — это пока единственный способ вообще передавать HD/FullHD/4K на телевизионные экраны и в Интернет. Как это достигается? Сейчас кратко рассмотрим основные методы.Читать полностью »

Последний учебный год, апрель месяц. Студента все чаще и чаще начинают посещать мысли о том, что надо бы заняться дипломной работой. Заняться — в смысле придумать, как быстро состряпать нечто, что будет хотя бы созвучно той теме, которую, вроде как, утверждали с научным руководителем. А, да, надо хотя бы на 80 страниц, еще и соблюсти ГОСТы там всякие… Понятное дело, самому столько связного текста уже не успеть набрать (да еще и могут начать в суть работы вникать, ну его!). Очевидно — надо брать готовую работу, которую уже защитили, работу качественную, проверенную и одобренную. Знакомая всем нам ситуация. Открытым остается единственный вопрос — как сделать так, чтобы работа прошла проверку на заимствования… Поиск в интернете и общение с коллегами по несчастью приводят студента к следующим вариантам решения проблемы:

  • Написать работу самому;
  • Перефразировать текст (дорого и сложно);
  • Обхитрить систему с помощью «технических обходов».

Так Систему не обойти - 1

Давайте посмотрим, какими бывают технические обходы, как мы их отлавливаем и почему их применение — не самая хорошая идея…
Читать полностью »

Индексируем миллиарды текстовых векторов - 1

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


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