Машинное обучение и нейронные сети - страница 14

 

Лекция 19: Абсолютная ориентация в закрытой форме, выбросы и надежность, RANSAC



Лекция 19: Абсолютная ориентация в закрытой форме, выбросы и надежность, RANSAC

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

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

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

  • 00:05:00 В этом разделе видео спикер обсуждает преобразование между представлениями кватернионов и ортонормированных матриц. Формула преобразования кватернионов в матрицы включает матрицу четыре на четыре с кососимметричными и симметричными частями. Спикер поясняет, что первая строка и первый столбец не имеют значения, так как они представляют специальный кватернион, то есть вектор с нулевой скалярной частью. Чтобы преобразовать ортонормированную матрицу обратно в кватернион, спикер рекомендует использовать след подматрицы три на три. Этот метод заканчивается уравнением в виде двух членов косинуса, которые позволяют нам найти косинус угла между матрицами.

  • 00:10:00 В этом разделе лектор обсуждает различные способы вычисления матрицы вращения из диагональных элементов матрицы R. Хотя один из подходов основан на следе матрицы вращения, он страдает от проблем, близких к тета, равной нулю. Вместо этого лучше использовать недиагональные элементы, которые все зависят от синуса тета больше двух. Затем в лекции приводится полная формула обращения, которая вычисляет различные суммы и разности и извлекает квадратные корни. Проблема с этим подходом заключается в неоднозначности синуса, но лекция предлагает выбрать наибольшую числовую точность и решить ее.

  • 00:15:00 В этом разделе спикер обсуждает процесс прямого и косвенного преобразования между кватернионом и матрицей вращения, а также то, как учитывать масштаб при преобразовании координат. Они объясняют процесс решения коэффициентов вращения и масштабирования с помощью задачи наименьших квадратов и минимизации суммы четырех сумм. Докладчик подчеркивает важность учета масштаба при соединении фрагментов местности, полученных из последовательных положений камеры, и объясняет, как найти оптимум в таких ситуациях.

  • 00:20:00 В этом разделе спикер обсуждает проблему симметрии вращения, где метод, используемый для вычисления вращения, должен быть инвертирован, чтобы получить обратную матрицу вращения. Докладчик также исследует другой термин ошибки, который предпочтительнее предыдущих методов, потому что он не требует соответствий и может отображать центроид в центроид. Этот метод включает в себя нахождение коэффициента масштабирования путем установки производной члена ошибки по коэффициенту масштабирования, равной нулю, и решения для коэффициента масштабирования, что позволяет избежать мошенничества, делая коэффициент масштабирования немного меньше, чем он должен быть.

  • 00:25:00 В этом разделе лектор объясняет, как работать с переводом, масштабированием и вращением без корреспонденции. Используя метод центроидов, масштабный коэффициент можно рассчитать как отношение размеров двух облаков точек. В части, посвященной вращению, лектор кратко затрагивает исчисление задачи максимизации отрицательного определителя матрицы N по отношению к кватерниону q. Решение можно найти с помощью множителей Лагранжа, но также можно использовать более простой метод, называемый частным Ралля, который делится на длину q, чтобы предотвратить ее бесконечное увеличение. Результирующая функция постоянна вдоль любого массива, задавая направление луча, которое делает его максимально экстремальным.

  • 00:30:00 В этом разделе спикер объясняет, как найти матрицу, которая максимизирует сигму, путем дифференцирования уравнения и установки его равным нулю. Затем, используя формулу отношения для дифференцирования, докладчик показывает, что q является собственным вектором, и объясняет, что матрицу можно максимизировать, выбрав собственный вектор, соответствующий наибольшему собственному значению. Единственным ограничением для этого метода является то, что собственный вектор должен удовлетворять ограничению, полученному из данных соответствия. Однако, в отличие от ортонормированных матриц, с этим ограничением гораздо проще справиться.

  • 00:35:00 В этом разделе лектор обсуждает количество соответствий, необходимых для фотограмметрических задач. Они стремятся найти шесть вещей: поступательное вращение и масштабирование, что означает три ограничения на соответствие, и, следовательно, нужны только два соответствия. Однако при наличии только двух соответствий имеется только пять ограничений; следовательно, для этого требуется три соответствия. Кроме того, лектор упоминает возможность обобщения преобразования для соответствия девяти ограничениям, полученным из трех точек; однако они отмечают, что эти ограничения весьма избыточны.

  • 00:40:00 В этом разделе видео обсуждается концепция общего линейного преобразования в 3D, которое включает 12 элементов, а не шесть, как в 2D, что затрудняет определение с тремя соответствиями. Кроме того, в видео объясняется, что существует два способа сбоя линейного преобразования. Во-первых, если соответствий недостаточно, а во-вторых, если матрица N имеет более одного собственного значения, равного нулю. Далее в видео объясняется, как решить характеристическое уравнение, чтобы найти собственные значения матрицы.

  • 00:45:00 В этом разделе видео лектор объясняет, как вычислить матрицу M с помощью диатического произведения, представляющего собой матрицу три на три, которая используется при вычислении матрицы четыре на четыре N, которая является наиболее эффективный способ получения N. Отмечено, что если определитель M равен нулю, то решить задачу становится особенно легко, поскольку C1 равен нулю, что позволяет решать уравнение без необходимости использования специального учебника. Этот особый случай связан с распределением точек и может иметь место, когда точки компланарны. Лектор показывает, как это одинаково хорошо применимо, если все точки находятся на плоскости, что упрощает решение задачи.

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

  • 00:55:00 В этом разделе лектор обсуждает проблему выбросов и устойчивости при аппроксимации линий и других процессах измерения. Он представляет метод RANSAC (консенсус случайной выборки), который включает в себя случайную выборку точек и использование метода наименьших квадратов для нахождения наилучшего соответствия, затем проверку количества точек, попадающих в полосу, и настройку порога на основе шума и отношение вставок к выбросам. Процесс повторяется до тех пор, пока не будет получена хорошая подгонка. Лектор отмечает, что использование RANSAC позволяет повысить надежность измерений в ситуациях, когда присутствуют выбросы.
  • 01:00:00 В этом разделе видео лектор обсуждает проблему выбросов при наличии реальных данных и как с этим бороться с помощью метода консенсуса, также известного как RANSAC. Метод включает в себя выбор случайных подмножеств, выполнение подборов и поиск ячеек с наибольшим количеством совпадений, что дает меру ориентации объектов, которые могут не иметь решения в закрытой форме. Лектор подчеркивает, что этот подход полезен во многих приложениях и не ограничивается только абсолютной ориентацией. Кроме того, лектор упоминает, что представления сложных объектов, близких к выпуклым, также могут быть полезны для обнаружения вещей и определения их ориентации.

  • 01:05:00 В этом разделе лектор обсуждает трудности выборки точек на сфере для достижения однородности. Равномерное распределение точек не может быть достигнуто путем выборки тета и фи с использованием генератора равномерного распределения из-за того, что полярные области имеют большую концентрацию, чем другие. Предлагаемое решение состоит в том, чтобы вписать сферу в куб и спроецировать случайные точки из куба на сферу. Однако это по-прежнему приводит к более высокой плотности точек, где сфера касается куба. Чтобы решить эту проблему, лектор предлагает тесселяцию поверхности сферы с помощью правильных твердых тел или добавление веса к точкам возле углов, чтобы уменьшить их скопление.

  • 01:10:00 В этом разделе видео лектор рассказывает о способах получения равномерного распределения точек на поверхности сферы. Один из способов состоит в том, чтобы равномерно генерировать точки в кубе и проецировать их на поверхность сферы, отбрасывая точки, расположенные слишком близко к началу координат или слишком далеко от сферы. Другой метод состоит в том, чтобы разделить сферу с помощью правильных многогранников и равномерно генерировать точки на этих формах. Однако этот метод требует подразделения для получения более точных делений, в отличие от первого метода, который дает практически равномерное распределение.

  • 01:15:00 В этом разделе лектор обсуждает, как найти единые способы выборки пространства вращений для различных объектов, что является частью процесса распознавания нескольких объектов в библиотеке. Лектор объясняет, что, чтобы быть эффективными, они не хотят сэмплировать части пространства вращения более плотно, чем другие части, и они стремятся найти единый способ сэмплирования пространства. Они начинают с обсуждения шестигранника, обладающего вращательной симметрией, и его поворотов. Лектор объясняет, что цель состоит в том, чтобы найти методы вращения, которые упрощают поиск точечных соответствий в разных моделях.

  • 01:20:00 В этом разделе спикер обсуждает, как найти количество поворотов, необходимых для выравнивания объекта с самим собой, а затем сгенерировать группу поворотов двумя способами: геометрически и с помощью кватернионного умножения. Обнаружено интересное новое вращение, ось которого равна (1, 1, 1), а угол равен 2π/3, и показано, что оно выравнивает угол куба с самим собой.

  • 01:25:00 В этом разделе спикер предлагает два подхода к проблеме поиска поворотов. Первый способ — просмотреть примеры и сложить их, чтобы получить в общей сложности 24 вращения. Второй способ — реализовать умножение кватернионов и построить таблицу, взяв попарные произведения, чтобы посмотреть, не получится ли в итоге что-то новое. Затем спикер упоминает, что следующее обсуждение будет касаться относительной ориентации, которая больше относится к бинокулярному зрению.
Lecture 19: Absolute Orientation in Closed Form, Outliers and Robustness, RANSAC
Lecture 19: Absolute Orientation in Closed Form, Outliers and Robustness, RANSAC
  • 2022.06.08
  • www.youtube.com
MIT 6.801 Machine Vision, Fall 2020Instructor: Berthold HornView the complete course: https://ocw.mit.edu/6-801F20YouTube Playlist: https://www.youtube.com/p...
 

MIT 6.801 Машинное зрение, осень 2020 г. Лекция 20: Пространство вращений, регулярные замощения, критические поверхности, бинокулярное стерео



Лекция 20: Пространство вращений, регулярные мозаики, критические поверхности, бинокулярное стерео

Этот раздел лекции охватывает такие темы, как регулярное замощение, критические поверхности, бинокулярное стерео и нахождение параметров преобразования в трехмерном пространстве. Лектор объясняет, что наилучший способ тесселяции сферы — использовать двойную треугольную тесселяцию, создавая примерно шестиугольные формы с несколькими пятиугольниками. Они также обсуждают критические поверхности, которые сложны для машинного зрения, но могут быть использованы для создания мебели из прямых палочек. При обсуждении бинокулярного стерео лектор объясняет взаимосвязь между двумя камерами, концепцию эпиполярных линий и то, как найти пересечение двух камер, чтобы определить точку в мире. Они также объясняют, как рассчитать ошибку между двумя лучами, чтобы определить их пересечение и минимизировать ошибку изображения, принимая во внимание коэффициент преобразования между ошибкой в мире и ошибкой в изображении. Наконец, они обсуждают, как найти базовую линию и D, чтобы восстановить положение и ориентацию твердого объекта в пространстве, используя кватернион для представления базовой линии.

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

  • 00:00:00 В этом разделе видео спикер обсуждает тесселяцию поверхности сферы на основе платоновых и архимедовых тел, имеющих равновеликие проекции на сферу. Мозаика поверхности может быть выполнена с использованием правильных многоугольников в качестве граней, причем обычно используются треугольники, квадраты и пятиугольники. Площади полигонов не равны, и в результате мозаичная поверхность имеет множество делений. Этот метод тесселяции актуален при обсуждении вращений, и спикер объясняет группы вращений этих твердых тел. В видео также упоминается использование геодезического купола, основанного на разбиении икосаэдра на множество треугольных областей для создания правильной структуры.

  • 00:05:00 В этом разделе лектор обсудил различные регулярные мозаики, которые представляют собой способы разделения поверхности на фигуры одинакового размера. Хотя квадратные мозаики обычно используются на плоскостях, они не идеальны для сфер, а треугольные мозаики также проблематичны. Лектор выделил лучший вариант: двойную треугольную мозаику, которая имеет примерно шестиугольную и несколько пятиугольных форм. Дополнительно лектор объяснил критические поверхности, которые представляют собой гиперболоиды одного листа. Эти поверхности сложны для задач машинного зрения, но у них есть отличительная черта — линейчатость, и их можно использовать для изготовления мебели из прямых палочек. Наконец, лектор обсудил гиперболоиды двух листов, которые имеют два отрицательных знака в своем уравнении.

  • 00:10:00 В этом разделе лектор обсуждает различные типы поверхностей, которые можно создать с помощью двух листов или трех отрицательных знаков. Он также объясняет различные существующие частные случаи, такие как гиперболоид, конус, параболоид и плоские поверхности. Двигаясь дальше, лектор объясняет проблему вычисления 3D из 2D с использованием двух камер и то, как необходима относительная ориентация для понимания геометрии двух камер. Лекция завершается упоминанием о том, как бинокулярное стерео применимо в автономных транспортных средствах, и может потребоваться повторная калибровка, если базовая линия не является жесткой, но тот же процесс также работает для структуры из движения с изображениями до и после.

  • 00:15:00 В этом разделе лектор объясняет концепцию нахождения пересечения двух камер для определения точки в мире, как выбирается система координат и геометрия, связанная с этой концепцией. Лектор подчеркивает, что базовая линия измеряется в правой системе координат, а штрих указывает, как она преобразуется из левой системы координат. Когда точка соединена с базовой линией, она определяет плоскость, и изображение плоскости в обеих системах камер проецируется на прямую линию, где точка отображается где-то вдоль этой линии. Лекция также знакомит с концепцией эпиполярных линий и тем, как они помогают находить несоответствия, которые приводят к измерению расстояния.

  • 00:20:00 В этом разделе лектор обсуждает взаимосвязь между двумя камерами в бинокулярной стереоустановке, которая включает базовую линию и вращение одной камеры относительно другой. Вращение имеет три степени свободы, но из-за неоднозначности масштабного коэффициента задача сводится к пяти степеням свободы вместо шести, как при абсолютной ориентации. Базовая линия рассматривается как единичный вектор, что дает только две степени свободы для этого компонента. Лектор объясняет, что для определения абсолютной длины базовой линии потребуется дополнительная информация, например, знание размеров изображаемых объектов.

  • 00:25:00 В этом разделе лектор обсуждает, как определить количество соответствий, необходимых для фиксации измерений. Он объясняет механическую аналогию создания провода из точек изображения и пропускания их через ошейник, чтобы ограничить его. Лектор объясняет, что если используются только два соответствия, все равно остаются степени свободы, то есть возможно изменение поворота камеры. Добавление второго соответствия уменьшает степень свободы, но все же недостаточно. Ответ — пять, что дает одно ограничение на соответствие, позволяя обнулить вертикальные несоответствия в ориентации камеры. Глубина резкости обратно пропорциональна горизонтальному несоответствию. Инструмент можно настроить, отстроив вертикальные несоответствия, как оптическое оборудование настраивалось на протяжении десятилетий.

  • 00:30:00 В этом разделе лекции спикер обсуждает процесс нахождения параметров преобразования в трехмерном пространстве с помощью последовательности перемещений и корректировок для сходимости, что может быть болезненным и сложным процессом. Однако на практике важно иметь более пяти точек, чтобы обеспечить точность и минимизировать погрешность измерения положения изображения. Эта нелинейная задача приводит к семи уравнениям второго порядка, которые после решения могут дать от двух до семи (128) решений. Хотя для большинства это любопытно, людям, интересующимся теоретическими приложениями, интересно разобраться. Наконец, в лекции обсуждается компланарный характер трех векторов при нахождении базовой линии и параметров вращения из соответствий.

  • 00:35:00 В этом разделе объясняется концепция построения параллельной пипетки с использованием трех векторов в качестве ребер и определения ее объема через тройное произведение. Когда три вектора компланарны, объект плоский и не имеет трехмерного объема, что делает его ожидаемое значение равным нулю или условием компланарности. Обсуждается возможный метод минимизации суммы квадратов тройного произведения для каждого соответствия для оценки базовой линии и вращения с минимальными ошибками. Однако это ненадежный метод, так как он имеет большое усиление шума и может давать неправильные ответы. Чтобы свести к минимуму ошибки измерения и определить коэффициент пропорциональности, основное внимание уделяется минимизации минимального расстояния между двумя лучами, когда измерения и базовая линия или вращение не идеальны.

  • 00:40:00 В этом разделе лектор обсуждает, как вычислить ошибку между двумя лучами и определить их пересечение. Он объясняет, что минимальное приближение к расстоянию между двумя лучами должно быть перпендикулярно обоим этим лучам, что означает, что оно параллельно векторному произведению. Добавляя векторы и устанавливая их равными нулю, уравнение можно преобразовать в скалярное уравнение с использованием скалярных произведений, обеспечивая три различных ограничения. Затем лектор переходит к обсуждению того, как упростить уравнение, исключив определенные члены, и как рассчитать гамму, бета и альфа, что поможет определить, насколько далеко вдоль лучей находится пересечение или почти пересечение.

  • 00:45:00 В этом разделе спикер обсуждает важность трех величин — альфа, бета и гамма — при расчете трехмерного положения в пространстве вращений. В то время как гамма - это просто ошибка расстояния, альфа и бета могут быть отрицательными, указывая, могут ли пересекающиеся сегменты линий находиться позади зрителя, что обычно физически нецелесообразно. Докладчик упоминает, что решение в закрытой форме в настоящее время невозможно из-за используемого уравнения пятого порядка, но минимизация ошибки изображения все еще достижима. Отбрасывая решения с отрицательной альфой или бета и используя решатель пятой степени, можно свести к минимуму ошибку в изображении.

  • 00:50:00 В этом разделе спикер обсуждает проблему минимизации суммы квадратов ошибок в бинокулярном стерео с учетом коэффициента преобразования между ошибкой в мире и ошибкой в изображении. Это зависит от решения и решается итеративно. Тройное произведение, повернутое из левой системы координат в правую, используется для введения кватернионов. Докладчик объясняет, как кватернионы с нулевыми скалярными частями используются для поворота тройного произведения из правой системы координат в левую. Формула умножения между кватернионами, представляющими векторы, упрощается до скалярного произведения и перекрестного произведения. Лемма сформулирована без доказательства для способа перестановки одного из множителей на другую сторону.

  • 00:55:00 В этом разделе спикер объясняет, как найти базовую линию и восстановить положение и ориентацию твердого объекта в пространстве по двум изображениям объекта, снятым с разных точек зрения. Выступающий определяет новую величину, которая является произведением базовой линии и поворота, и использует кватернион для представления базовой линии, упрощая задачу до нахождения базовой линии и D. Хотя неизвестных 8, степеней свободы всего пять, поэтому говорящий использует различные ограничения. Они также говорят об интересных симметриях, позволяющих менять местами левые и правые координаты. Вес, представляющий собой отношение между ошибкой в трехмерном пространстве и ошибкой в положении изображения, трудно рассчитать, но его можно скорректировать.
  • 01:00:00 В этом разделе спикер обсуждает задачу оптимизации, которая включает в себя вычисление весов на основе хорошего первого предположения, а затем пересчет этих весов и повторное решение задачи. Они также касаются симметрии между левым и правым массивами и того, как это может быть полезно в числовых вычислениях, наряду с симметрией между вращением и перемещением в тройном произведении. В конечном счете, эта симметрия означает, что если у кого-то есть приближенное решение, они могут генерировать другие приближенные решения, используя эту симметрию. Кроме того, в процессе поиска решений можно найти несколько версий, дающих одинаковые результаты, что может помочь ускорить процесс поиска.

  • 01:05:00 В этом разделе инструктор обсуждает вычисление пространства вращений с использованием численного подхода, который требует предположения об одном из неизвестных значений с помощью простого решения методом наименьших квадратов в замкнутой форме. Другой подход заключается в использовании пакета нелинейной оптимизации, такого как метод Марквардта, который настраивает параметры до тех пор, пока уравнения не станут как можно ближе к нулю. Однако считается, что эти подходы не имеют решения этой проблемы в закрытой форме. Более того, инструктор объясняет, что есть проблема с поворотами, потому что из-за метода ортонормированных матриц имеется девять чисел и только три степени свободы, что приводит к сингулярности с вектором Гиббса при тета, равном пи.

  • 01:10:00 В этом разделе спикер обсуждает использование единичных кватернионов для представления вращений, ссылаясь на то, что они имеют четыре числа с тремя степенями свободы. Он рекомендует добавить дополнительные ограничения, чтобы сделать их менее избыточными, и заявляет, что этот пакет позволяет добавлять эти ограничения. Он также касается формулы объединения двух вращений и преобразования вектора, что немного сложнее. Кроме того, спикер подчеркивает, что есть четырехстраничный рекламный ролик, в котором резюмируется все, что вам нужно знать о кватернионах. Наконец, он обсуждает использование мер ошибок и то, как вес необходим при рассмотрении больших значений z, чтобы избежать больших ошибок.

  • 01:15:00 В этом разделе спикер объясняет, что некоторые виды поверхностей могут вызвать проблемы с бинокулярным стереофоническим методом определения ориентации объекта. Эти «критические поверхности» были обнаружены более века назад и могут вызывать неоднозначность и высокую чувствительность к ошибкам. Докладчик приводит пример U-образной долины, в которой углы между различными изображениями особенностей поверхности не меняются по мере движения самолета по поверхности, что делает невозможным различение различных положений. Докладчик отмечает, что гиперболоид одного листа является распространенным примером квадратичной поверхности, которая может вызвать проблемы с бинокулярным стерео, так как имеет правильное количество минусов для одного листа и может быть очень похожа на другие поверхности.

  • 01:20:00 В этом разделе спикер говорит о квадратных поверхностях, а именно о двух пересекающихся плоскостях, составляющих одну версию этой поверхности. Каждая плоскость имеет линейное уравнение, и при перемножении получается комбинация двух плоскостей. Одна из плоскостей проходит через центр проекции, то есть проецируется в линию. Это еще более странно, так как это означает, что плоская поверхность является проблемой, распространенной в искусственных сооружениях. Спикер упомянул, что в следующий раз придется говорить о «бесстрашном размышлении», и было предложено новое домашнее задание.
Lecture 20: Space of Rotations, Regular Tessellations, Critical Surfaces, Binocular Stereo
Lecture 20: Space of Rotations, Regular Tessellations, Critical Surfaces, Binocular Stereo
  • 2022.06.08
  • www.youtube.com
MIT 6.801 Machine Vision, Fall 2020Instructor: Berthold HornView the complete course: https://ocw.mit.edu/6-801F20YouTube Playlist: https://www.youtube.com/p...
 

Лекция 21: Относительная ориентация, бинокулярное стерео, структура, квадрики, калибровка, репроекция



Лекция 21: Относительная ориентация, бинокулярное стерео, структура, квадрики, калибровка, репроекция

Эта лекция охватывает темы, связанные с фотограмметрией, включая относительную ориентацию, квадратичные поверхности, калибровку камеры и соответствие между точками изображения и известными трехмерными объектами. Лектор объясняет различные методы решения задач искажения и получения таких параметров, как f и tz. Они также подчеркивают важность ортогональных единичных векторов при нахождении полной матрицы вращения и предлагают решения для нахождения k с использованием более стабильной формулы. Лектор подчеркивает важность понимания однородных уравнений, которые имеют решающее значение в машинном зрении.

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

  • 00:00:00 В этом разделе спикер обсуждает относительную ориентацию, вторую из четырех проблем фотограмметрии, и ее отношение к бинокулярному стерео, зрению в движении и структуре из движения. Докладчик предлагает решение, но отмечает, что существуют поверхности, относительная ориентация которых не может быть определена, особенно квадратичные поверхности. Затем лекция углубляется в конкретные типы квадратичных поверхностей, таких как эллипсоиды, гиперболоиды из одного или двух листов и поверхности, имеющие воображаемую форму. Спикер объясняет, что если поверхность не имеет постоянного члена, это означает, что начало правой системы или положение камеры в момент времени два в видении движения находится на поверхности. Кроме того, если подставить минус b вместо r, где b — расстояние между двумя камерами, это также приведет к решению, а это означает, что поверхность проходит через оба глаза.

  • 00:05:00 В этом разделе лекции спикер обсуждает свойства и последствия квадратичного уравнения поверхности, которое симметрично между левым и правым положениями камеры в стереопаре. В уравнении нет постоянного члена, что означает отсутствие масштабирования и вся базовая линия находится на поверхности. Это говорит о том, что поверхность представляет собой линейчатую поверхность и имеет две линейки, что делает ее интересной для изготовления. Уравнение охватывает множество частных случаев, включая плоские поверхности, при этом одна из плоскостей проходит через начало обеих систем координат как эпиполярная плоскость. Изображение этой плоскости представляет собой прямую линию, что не представляет особого интереса, а вот другая плоскость произвольна и может быть какой угодно.

  • 00:10:00 В этом разделе лектор обсуждает проблему неоднозначности при реконструкции топографических карт или восстановлении структуры по движению, так как эти две задачи математически одинаковы. Хотя эта проблема чаще возникает в узких полях зрения, она все же может усугубляться в ситуации с высоким коэффициентом усиления шума. Для решения этой проблемы рекомендуется большое поле зрения, поэтому для аэрофотосъемки были созданы паучьи головы, набор камер, смонтированных вместе для получения широкого поля зрения. Затем лектор переходит к внутренней ориентации, которая по сути является калибровкой камеры. Хотя предыдущий метод калибровки с использованием точек схода работал, он был не очень точным и сложным для учета радиального искажения. Лектор предполагает необходимость более общего метода учета радиальной дисторсии.

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

  • 00:20:00 В этом разделе докладчик обсуждает различные типы искажений, которые могут возникать в изображениях, в том числе бочкообразные искажения и искажения подушечками булавок, а также то, как они связаны со знаком k1. Докладчик также упоминает возможность использования полиномиальной аппроксимации для преобразования искаженных и неискаженных координат и то, как это влияет на окончательную оптимизацию и используемую систему координат. Докладчик отмечает отсутствие тангенциальных искажений в современных системах визуализации, поскольку они, как правило, осесимметричны и испытывают только радиальные искажения.

  • 00:25:00 В этом разделе лектор обсуждает возможные сложности при калибровке камеры, такие как децентрирование искажения и наклон плоскости изображения. Для качественной работы, такой как аэрофотосъемка, необходимо учитывать эти факторы. Лектор объясняет, что возможны небольшие ошибки из-за механического характера изготовления камеры, которые могут повлиять на увеличение и искажение изображения. Это можно компенсировать за счет более сложной модели искажения, а метод калибровки Цая включает использование калибровочного объекта, который может быть плоским или трехмерным. Лектор также объясняет, что в прошлом это было больше вопросом тонкой настройки камеры во время производства, но в настоящее время для борьбы с искажениями используются программные решения и расширения моделей.

  • 00:30:00 В этом разделе спикер обсуждает процесс определения соответствий между точками изображения и известными точками на 3D-объекте. Однако, в отличие от метода точки схода, маловероятно, что мы сможем определить взаимосвязь между объектом калибровки и камерой с помощью рулетки. Поэтому нужно добавить внешнее ориентирование, чтобы решить проблему выяснения, где в пространстве находится калибровочный объект и как он повернут, помимо нахождения параметров камеры. Хотя внешнее ориентирование добавляет больше неизвестных, оно дает более точные результаты. Внутренняя ориентация включает уравнение перспективной проекции, а также главную точку и главное расстояние. Стратегия для этого состоит в том, чтобы исключить сложные параметры и найти метод модификации измерений, чтобы уменьшить зависимость от радиальной дисторсии, а затем найти близкое решение для некоторых параметров, прежде чем прибегать к численным методам.

  • 00:35:00 В этом разделе видео спикер объясняет, как получить хорошее начальное предположение для итеративного решения при расчете относительной ориентации в бинокулярном стерео. Хотя следует помнить об установленных принципах, на данном этапе допускаются некоторые нарушения этих принципов, поскольку первоначальная догадка не является ответом. Докладчик объясняет, что использование номеров строк и столбцов для координат xi и yi и выражение f в размере пикселя удобно для процесса определения начального предположения. Обсуждается также внешнее ориентирование, в том числе точно известное вращение и перемещение калибровочного объекта. Уравнения, которые обычно используются для преобразования положения в объекте калибровки в положение в объекте камеры, инвертируются и используются для попытки восстановить неизвестные параметры вращения и перемещения.

  • 00:40:00 В этом разделе видео спикер обсуждает проблемы борьбы с радиальной дисторсией и получения f и tz. Предлагаемое решение состоит в том, чтобы работать в полярных координатах, где радиальное искажение изменяет только длину, а не угол, и использовать уравнение с меньшим количеством неизвестных. В уравнение входят координатные компоненты объекта калибровки и координаты изображения, которые известны, а также неизвестные компоненты r, tx и ty. Линейное уравнение может быть составлено для аппроксимации положения главной точки, необходимой для решения.

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

  • 00:50:00 В этом разделе спикер обсуждает метод решения однородных уравнений путем фиксации одного из неизвестных и присвоения ему значения по выбору, уменьшая количество неизвестных до семи. Это означает, что требуется не менее семи соответствий, а желательно больше для оценки погрешности. Затем переопределенная система линейных уравнений может быть решена с использованием таких методов, как псевдоинверсия. Наконец, вычисляется масштабный коэффициент, чтобы сделать рассчитанные векторы единичными векторами, что действует как проверка работоспособности для идентифицированных соответствий. Метод дает первую оценку для всех неизвестных, кроме F, Tz, радиальной дисторсии и Tz, что требует дальнейшего анализа.

  • 00:55:00 В этом разделе лекции объясняется процесс нахождения f и tz относительно взаимной ориентации, бинокулярного стерео, структуры, квадрик, калибровки и перепроекции. В лекции подчеркивается важность ортогональных единичных векторов при нахождении полной матрицы вращения. Когда присутствуют два неортогональных вектора, требуется небольшая корректировка, которая приведет к получению пары ортогональных векторов. Затем в лекции объясняется, почему квадратное уравнение может быть проблематичным для нахождения k, поэтому используется другая формула, более устойчивая.
  • 01:00:00 В этом разделе лектор обсуждает формулу решения квадратного уравнения и потенциальную потерю точности, которая может возникнуть при вычислении из-за вычитания величин почти одинакового размера. Лектор знакомит с методом аппроксимации, включающим итерацию, который может обеспечить простое решение. Обсуждается также случай с плоской мишенью, который из-за его высокой точности и простоты использования обычно используется в приложениях калибровки и машинного зрения. Лектор объясняет, что шаблон с точно определенными углами элементов крепится к мишени для измерения вращения компонентов по двум разным осям, что позволяет выполнять высокоточную центровку колес.

  • 01:05:00 В этом разделе лектор обсуждает использование плоской мишени для калибровки, которая позволяет построить систему координат с известными значениями x, y и z. Уравнение для этого подхода имеет меньше неизвестных и требует только пяти соответствий вместо семи, что делает его более эффективным методом. Однако, если перевод y равен нулю, этот метод может стать неточным, и для более точных решений рекомендуется установить tx равным единице. Лекция также затрагивает восстановление двух верхних частей матрицы вращения для плоского случая.

  • 01:10:00 В этом разделе лектор объясняет сложность нахождения соотношения между пропорциями шага в направлениях x и y в старые времена. Был необходим еще один параметр, который масштабировал бы x относительно y, поскольку горизонтальный и вертикальный интервалы контролировались разными вещами. В лекции упоминается использование алгебры, которая создает беспорядок, поэтому для точного определения соотношения сторон можно использовать спецификации производителей. Лектор также объясняет, что с помощью уравнения перспективной проекции и знания неизвестных f и tz можно с помощью одного соответствия вычислить их оба. Однако возникает проблема с изменением глубины при попытке использовать калибровочный планар.

  • 01:15:00 В этом разделе лектор обсуждает неоднозначность калибровки внешнего ориентирования в компьютерном зрении. Невозможно определить фокусное расстояние и смещение отдельно из-за неоднозначности коэффициента масштабирования, поэтому необходимы вариации глубины. Лектор объясняет, что внешнее ориентирование неоднозначно, если калибровочная мишень не установлена под углом 45 градусов. Наконец, обсуждаются главная точка и радиальное искажение, и требуется нелинейная оптимизация для минимизации ошибки между предсказанными и фактическими координатами изображения. Для этой цели рекомендуется пакет LM Diff, встроенный в MATLAB.

  • 01:20:00 В этом разделе лекции ведущий обсуждает проблему избыточности в представлении параметров вращения и предлагает такие решения, как углы Эйлера, вектор Гиббса и единичные кватернионы. Однако единичные кватернионы избыточны четырьмя числами для трех степеней свободы. Докладчик предлагает добавить еще одно уравнение и член ошибки, пропорциональный разнице между размером кватерниона и одного, чтобы обеспечить соблюдение ограничения. В лекции также упоминается проблема усиления шума и использование методов Монте-Карло для решения этой проблемы в отсутствие аналитического метода.

  • 01:25:00 В этом разделе спикер объясняет, как определить статистические свойства данного ответа через коэффициент усиления шума, много раз возясь с входными данными. Это позволяет проанализировать распределение ответов в пространстве параметров и обнаружить, что некоторые факторы, такие как коэффициенты высших порядков радиальной дисторсии, плохо определяются из-за чувствительности к шумовым измерениям. Следующей темой для обсуждения является представление формы и распознавания, а также определение положения в трехмерном пространстве с использованием знаний, накопленных до сих пор в двухмерном распознавании и определении положения в шаблонах.
Lecture 21: Relative Orientation, Binocular Stereo, Structure, Quadrics, Calibration, Reprojection
Lecture 21: Relative Orientation, Binocular Stereo, Structure, Quadrics, Calibration, Reprojection
  • 2022.06.08
  • www.youtube.com
MIT 6.801 Machine Vision, Fall 2020Instructor: Berthold HornView the complete course: https://ocw.mit.edu/6-801F20YouTube Playlist: https://www.youtube.com/p...
 

Лекция 22: Внешнее ориентирование, восстановление положения и ориентации, настройка связки, форма объекта



Лекция 22: Внешнее ориентирование, восстановление положения и ориентации, настройка связки, форма объекта

В лекции исследуется концепция внешнего ориентирования в фотограмметрии, где положение и ориентация камер определяются в трехмерной среде. Лектор рассказывает о различных методах решения задач, связанных с внешним ориентированием, таких как восстановление положения и ориентации объекта по правилу знаков треугольника и правилу косинусов. В видео также рассматривается использование обобщенных цилиндров и сеток для представления трехмерных объектов и их выравнивания в компьютерном зрении. Лектор также знакомит с расширенным изображением Гаусса, методом отображения выпуклых объектов произвольной формы на единичную сферу, и объясняет его ограничения при работе с невыпуклыми объектами. Кроме того, в видео затрагивается нелинейная оптимизация и ее применение для создания точных 3D-моделей для фотограмметрии.

В лекции обсуждается параметризация кривых и вычисление кривизны как в 2D, так и в 3D сценариях. В 2D замкнутая выпуклая кривая может быть представлена на единичной окружности углом eta и плотностью, пропорциональной кривизне, которая является обратной величиной радиуса кривой. В лекции показано, как интегрировать эта и использовать уравнения xy, чтобы получить выпуклый объект для круглого изображения, и распространить представление на другие формы, такие как эллипсы. В 3D понятие отображения Гаусса вводится для соединения точек на поверхности с точками на единичной сфере, а кривизна поверхностей обсуждается с гауссовой кривизной, которая является удобной единственной скалярной величиной, измеряющей кривизну. Лекция заканчивается обсуждением отношения двух площадей, k и g, и того, как оно связано с кривизной сферы.

  • 00:00:00 В этом разделе обсуждается понятие внешнего ориентирования в фотограмметрии. Это демонстрируется с помощью дрона с камерой, летящего над местностью с подробной моделью. Внешняя ориентация включает в себя определение того, где находится камера дрона и под каким углом она видит объекты в трехмерной среде. Для этого требуется шесть степеней свободы, в том числе три для вращательного движения и три для поступательного движения. Модель требует трех или более точек в данных изображения, чтобы обеспечить достаточное количество ограничений для решения проблемы.

  • 00:05:00 В этом разделе лектор объясняет, как найти длину ножек штатива, чтобы определить R1, R2 и R3. При построении лучей и вычислении углов единственными неизвестными факторами являются длины трех палочек. Как только эти длины найдены, P0 может быть обнаружен путем пересечения трех сфер. В решении есть вероятность неоднозначности, но ее можно устранить с помощью зеркального отображения или циклического порядка изображений. Лектор объясняет, что раньше в книгах было полно формул для решения этой задачи, но теперь этот процесс можно осуществить с помощью настройки пакета.

  • 00:10:00 В этом разделе лектор обсуждает использование различных правил и уравнений для решения задач, связанных с внешним ориентированием, а именно восстановления положения и ориентации объекта. Использование этих правил было важно в навигации и геодезии, но в наши дни они используются не так часто. Правило знаков треугольника и правило косинуса — это единственные два необходимых правила, но для удобства могут быть полезны и другие правила. Обсуждаемая проблема включает определение угла и расстояния в треугольнике и решение для r1 и r2 с помощью трех нелинейных уравнений. Как только положение плоскости найдено, можно построить векторы для определения ориентации объекта относительно наземной системы координат. Методы наименьших квадратов и методы RANSAC также можно использовать для поиска решений и обработки выбросов.

  • 00:15:00 В этом разделе лектор обсуждает внешнюю ориентацию камер и то, как связать три вектора в системе координат камеры с векторами в мировой системе координат через матрицу вращения. Лектор объясняет, что мы можем представить эту систему уравнений как матричное уравнение 3x3 для решения матрицы вращения, которую мы можем представить как ортонормированную матрицу. Если у нас больше соответствий, мы можем использовать метод наименьших квадратов, чтобы минимизировать ошибку в плоскости изображения и получить более точное решение. Лектор также упоминает, как этот метод можно использовать для групповой настройки, когда несколько камер снимают один и тот же объект или сцену с разных позиций, и как он обеспечивает решение связанной с этим проблемы, связанной с сотнями камер.

  • 00:20:00 В этом разделе спикер обсуждает проблему нелинейной оптимизации в фотограмметрии и ее решения с помощью таких методов, как Левенберг Маркарт. В этой оптимизации есть неизвестные параметры среды, такие как точки в среде, расположение камер, свойства камеры и радиальное искажение. Используя множество ограничений и изображений, исследователи смогли создать точные 3D-модели различных объектов, иногда даже используя одну камеру дрона, летящего над вулканом. Спикер также упоминает интересные моменты на снимках, описывает онлайн-ресурс Лоу для их выявления и вкратце затрагивает настройку пучков, которая представляет собой целую индустрию внутри фотограмметрии.

  • 00:25:00 В этом разделе спикер обсуждает различные представления 3D-объектов, включая многогранники и сетки. Многогранники относительно легко описать, но для искривленных поверхностей лучшим вариантом являются сетки. Однако выравнивание мешей не имеет особого смысла, поскольку вершины не имеют какой-либо конкретной метки или значения. Спикер предлагает использовать расширенные гауссовские изображения, онлайн-ресурс, который может помочь восстановить положение и ориентацию 3D-объектов.

  • 00:30:00 В этом разделе видеолекции спикер исследует концепцию поиска хорошего представления объектов в компьютерном зрении, которое удовлетворяет определенным условиям инвариантности, таким как перенос и вращение. Докладчик обсуждает ограничения, связанные с некоторыми попытками найти такое представление, и переходит к рассмотрению одного представления, в частности, обобщенного цилиндра. Это представление включает в себя взятие генераторной формы и перемещение ее вдоль линии для создания более сложных форм со свойством, что поперечное сечение одинаково в любом месте по длине. Докладчик обсуждает, как это представление удовлетворяет определенным условиям инвариантности и может помочь в распознавании и выравнивании объектов.

  • 00:35:00 В этом разделе лектор обсуждает использование обобщенных цилиндров для представления объектов и то, как их можно комбинировать для создания 3D-модели. Однако у этого метода есть свои ограничения, поскольку трудно добиться уникального представления, когда существует бесконечное количество способов описания одного и того же объекта. Поэтому лекция возвращается к многогранникам в качестве отправной точки для трехмерного представления, используя список вершин с трехмерными координатами и структуру графа для описания связей между вершинами и гранями.

  • 00:40:00 В этом разделе докладчик обсуждает, как представить объект, рисуя единичные векторы, перпендикулярные граням объекта, а затем умножая их на площади. Это представление может быть уникальным для выпуклых объектов или сложных многогранников, если сумма этих векторов равна нулю. Докладчик отмечает, что такое представление полезно для распознавания и выравнивания объектов, а не реконструкции. Несмотря на то, что это неконструктивное доказательство, представление не является сдерживающим фактором, как объясняет спикер.

  • 00:45:00 В этом разделе лекции спикер обсуждает, как аппроксимировать не многогранный объект, такой как цилиндрическая и коническая форма с плоской частью, путем разрезания его на срезы и построения единичного вектора с учетом область. Затем говорящий строит единичную сферу и размещает массы в соответствующих точках сферы, которые представляют собой поверхность объекта. Цилиндрическая поверхность соответствует большому кругу на сфере, коническая поверхность соответствует маленькому кругу на сфере, а пластина на конце соответствует большой массе в одной точке. Докладчик объясняет, что это представление можно использовать по-разному для решения поставленной задачи.

  • 00:50:00 В этом разделе лектор обсуждает использование представления для выравнивания и распознавания объектов. Представление включает в себя вычисление плотности ориентации для каждого объекта, где каждой точке объекта соответствует точка на единичной сфере. Лектор объясняет, что представление инвариантно к перемещению и вращению, что упрощает его реализацию. Плотность можно использовать для определения кривизны, где высокая плотность соответствует низкой кривизне, а низкая плотность соответствует высокой кривизне. Затем лектор представляет расширенное изображение Гаусса, в котором используются нормали к поверхности для определения соответствующей точки на сфере для данной точки на объекте. Лектор предлагает начать с 2D-версии, чтобы понять концепцию, прежде чем переходить к 3D.

  • 00:55:00 В этом разделе объясняется метод отображения выпуклых объектов произвольной формы на единичную сферу. Гаусс предложил этот метод, который отображает точку объекта в точку на сфере с тем же направлением нормали. Этот метод используется, потому что легко определить северный небесный полюс или посмотреть, где находится солнце и какое время года, чтобы измерить угол. Это отображение обратимо, поэтому возможно соответствие точки с одинаковой ориентацией со сферы на предмет. Однако ограничение этого метода заключается в том, что он имеет некоторые проблемы с невыпуклыми объектами.
  • 01:00:00 В этом разделе спикер обсуждает параметризацию единичного круга на плоскости углом eta и плотностью массы, пропорциональной кривизне. Кривизна - это скорость поворота выпуклой замкнутой кривой, которая является скоростью изменения направления или обратной величиной радиуса кривой. Плотность обратна кривизне, и это представление на единичной окружности уникально для замкнутой выпуклой кривой в 2D. Докладчик объясняет, как разделить кривую на маленькие грани, которые вносят вклад в плотность кривой, что приводит к непрерывному случаю представления кривой на единичной окружности. Хотя в 3D нет инверсии, докладчик иллюстрирует инверсию и интеграцию, чтобы объяснить идеи дальше.

  • 01:05:00 В этом разделе лектор обсуждает интегрирование эта и использование уравнений x и y для получения выпуклого объекта для круглого изображения в 2D случаях. Однако этот же процесс нельзя использовать в 3D-сценариях. Затем лектор вводит понятие центроида распределения массы и отмечает, что он должен находиться в начале координат замкнутой выпуклой кривой. Он также объясняет ограничение, заключающееся в том, что законными являются только определенные типы массовых рассылок. Для иллюстрации теории лектор использует пример окружности радиуса r для определения кривизны.

  • 01:10:00 В этом разделе лекции профессор объясняет, как рассчитать радиус кривизны для круга и любой другой изогнутой формы, даже если она не круглая. Кривизна - это просто обратная величина радиуса кривизны, причем радиус представляет собой радиус наиболее подходящей окружности в определенном положении. Профессор демонстрирует, как использовать математику для представления эллипса в виде сплющенного круга для простоты, и объясняет, что существует множество различных способов математического представления кривых. Однако профессор отмечает, что для определения ориентации этот метод не годится, поскольку симметрия слишком неоднозначна.

  • 01:15:00 В этом разделе лекции спикер объясняет, как представить круги параметрически, используя уравнение (x/a)^2 + (y/b)^2 = 1. Они демонстрируют, как создать круг, используя это уравнение, что является более удобным способом, чем попытка перебора всех возможных значений x и y. Затем спикер объясняет, как это параметрическое представление связано с Землей, которую можно рассматривать как сферу, сплющенную в вертикальном направлении. Они также рассказывают, как сопоставить окружность с поверхностью сферы путем вычисления нормали к кривой с использованием дифференцирования, перестановки x и y и изменения знака. Последний шаг включает в себя сопоставление направления нормали с направлением касательной.

  • 01:20:00 В этом разделе кривизна, или кривизна над k, эллипса анализируется относительно эта, угла на единичной окружности. Экстремумы, или максимальное и минимальное значения, возникают при эта, равном нулю, и пи больше двух, которые соответствуют концам полуосей. Кривизна изменяется непрерывно и зависит от полуосей a и b. После вычисления непрерывного распределения экстремумов для эллипса, который не выровнен с системой координат, его можно повернуть, чтобы он соответствовал другому эллипсу для распознавания объектов. При хорошем совпадении объект представляет собой эллипс; в противном случае это не так.

  • 01:25:00 В этом разделе спикер обсуждает применение 2D внешнего ориентирования и интересные операции фильтрации, которые можно сделать с помощью свертки на окружностях. Однако основное внимание уделяется внешней трехмерной ориентации, и вводится концепция отображения Гаусса для соединения точек на поверхности с точками на единичной сфере на основе ориентации нормали к поверхности. Эта концепция распространяется на формы, и обсуждается кривизна поверхностей, причем гауссова кривизна является удобной единственной скалярной величиной, которая измеряет кривизну. Для выпуклых поверхностей считается положительная кривизна, а для невыпуклых – отрицательная.

  • 01:30:00 В этом разделе спикер обсуждает отношение двух площадей, k и g, которые равны 1 на r в квадрате и r в квадрате соответственно. Отношение согласуется с кривизной сферы, где маленькая сфера имеет большую кривизну, и наоборот для большой сферы. Затем обсуждение касается кривизны Гаусса и того, как она тесно связана с выполняемыми вычислениями. Также упоминается интегральная кривизна, которая применяется к негладким поверхностям и будет обсуждаться в следующей лекции о том, как она используется для распознавания и выравнивания.
 

MIT 6.801 Машинное зрение, осень 2020 г. Лекция 23: Гауссово изображение, тела вращения, гистограммы направлений, правильные многогранники



Лекция 23: Гауссово изображение, тела вращения, гистограммы направлений, правильные многогранники

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

В лекции 23 курса информатики лектор объясняет, как использовать изображение Гаусса для распознавания и выравнивания объектов, а также как создать гистограмму направления для представления истинной формы объекта в библиотеке. Они также обсуждают проблемы объединения гистограмм, деления сферы и выравнивания тела вращения, а также обычных фигур и тел. Лекция дает представление о том, как представлять объекты с использованием распределения массы на сфере, избегать скрытых элементов поверхности и понимать влияние кривизны на распределение массы. Также обсуждаются преимущества и недостатки использования различных форм для группирования гистограмм, а также важность регулярных шаблонов и форм для хорошего качества.

  • 00:00:00 В этом разделе расширенное изображение Гаусса обсуждается как представление трехмерных объектов, которые не могут быть представлены в виде многогранников. Гауссово изображение — это соответствие между поверхностью объекта и точками единичной сферы, основанное на равенстве нормалей поверхности. Построив обратную кривизну Гаусса в зависимости от положения на сфере, ее можно использовать для определения того, какая часть поверхности имеет нормаль, указывающую в этом направлении. Интегрирование гауссовой кривизны по участку на объекте дает площадь соответствующего участка на сфере, которая называется интегральной кривизной. Напротив, интегрирование гауссовой кривизны по k на сфере приводит к тому, что площадь объекта соответствует той, которая является более важной величиной.

  • 00:05:00 В этом разделе спикер обсуждает концепцию интегральной кривизны и то, как она связана с пятном на поверхности фигуры. Они объясняют, что, взяв интеграл кривизны по некоторой площади, можно зафиксировать полное изменение ориентации в этом участке, и именно это вычисляет интеграл. Затем спикер применяет эту концепцию к кубу и объясняет, что интегральная кривизна угла куба равна числу пи на два. Они также обсуждают распределение на сфере (обозначаемое как «g»), которое зависит от ориентации и того, как оно может иметь некоторые ограничения, подобные тем, которые наблюдаются в многогранниках.

  • 00:10:00 В этом разделе лекции спикер обсуждает видимую площадь выпуклого объекта при взгляде с определенного направления, исходя из косинуса угла. Докладчик объясняет, что под этим углом видны только грани с положительным скалярным произведением, и отмечает, что сумма всех граней равна нулю. Это приводит к выводу, что центроид находится в начале координат, а эги — распределения на единичной сфере с центром масс в центре.

  • 00:15:00 В этом разделе концепция EGI (Расширенное изображение Гаусса) обсуждается в абстрактных и дискретных реализациях. Центроид EGI соответствует замкнутой поверхности объекта и началу сферы. EGI также может быть точно рассчитан для геометрически определенных объектов, таких как пример сферы, где EGI просто равен R в квадрате из-за симметричного характера. Более сложные объекты, такие как эллипсоид, могут быть представлены с помощью неявного уравнения поверхности, что нецелесообразно для создания визуализаций или интегрирования по поверхности, но можно использовать альтернативные способы описания одной и той же поверхности.

  • 00:20:00 В этом разделе лектор обсуждает метод получения параметрического описания поверхности с использованием тета и фи в качестве параметров. Дифференцируя уравнение по этим параметрам, он получает касательные, которые затем может использовать для вычисления нормали к поверхности. Он также показывает, как определить кривизну. Затем лектор объясняет способ параметризации единичной сферы с использованием координат широты и долготы. Это включает в себя нахождение величины вектора, нормального к единичной сфере, а также определение другого вектора. В лекции дается подробное объяснение процесса деривации.

  • 00:25:00 В этом разделе исследуется концепция расширенного гауссовского изображения эллипсоида. Кривизна по нормали включает в себя нахождение точек пересечения полуосей на поверхности объекта. Хотя ответ заключается не в том, к чему относятся координаты тета-фи, они используются для распознавания и ориентации. Внутри модели есть максимумы и минимумы, и они распределены по сфере. Есть три ортогональных направления, которые симметричны другой стороне. С помощью экспериментальных данных изображение Гаусса может помочь в определении положения объекта в пространстве.

  • 00:30:00 В этом разделе лекции основное внимание уделяется телам вращения, которые являются объектами, которые легче вычислить, чем более сложные формы, такие как эллипсоиды. Тела вращения, такие как цилиндры, конусы, сферы, гиперболоиды из одного или двух листов, имеют генератор, который вращается вокруг оси для создания объекта, который затем может быть отображен на сфере для вычисления эги. Учитываются нормаль к поверхности объекта и угол с экватором, а полоса объекта используется для получения соответствующей полосы на сфере, что сводит трехмерную форму объекта к двумерной. Площадь полосы объекта равна 2 пи, умноженным на радиус объекта, умноженный на ширину полосы, а радиус сферы зависит от широты, где чем выше широта, тем меньше радиус.

  • 00:35:00 В этом разделе лектор обсуждает нахождение кривизны тела вращения по формуле k=cos(eta)/r*kg, где kg - кривизна образующей. Лектор объясняет, что кривизна — это скорость изменения направления нормали к поверхности при ее движении по дуге, которая представляет собой двумерную кривизну генератора. Лектор также показывает, что формула имеет разные версии в зависимости от того, задана ли кривая в неявном виде или как функция от s или высоты z. Наконец, лекция дает удобную формулу для нахождения кривизны тела вращения, когда задано r как функция s.

  • 00:40:00 В этом разделе спикер описывает два способа получения гауссовой кривизны тела вращения. Первый метод включает определение генератора кривой как функции r от длины дуги с помощью одного из 12 наиболее распространенных способов задания кривой. Второй метод смотрит на другую указанную переменную, z, и использует тригонометрические термины, чтобы получить кривизну. Докладчик показывает пошаговый процесс дифференцирования по z и его связь с тангенсом и секущей. Приведена окончательная формула для гауссовой кривизны, которая оказывается немного более запутанной, чем первый метод, но все же полезна для случаев, когда образующая кривая задается как r как функция z.

  • 00:45:00 В этом разделе спикер обсуждает, как генерировать расширенные гауссовы изображения тел вращения, и работает на примере с использованием тора или пончика. Они объясняют, что в случае невыпуклых объектов, таких как тор, на объекте может быть более одной точки с одинаковой ориентацией поверхности, что делает отображение необратимым. У тора есть две такие точки, одна выпуклая, а другая седловая, что представляет собой собственный набор проблем.

  • 00:50:00 В этом разделе спикер обсуждает вычисление расширенного гауссовского изображения невыпуклого объекта с использованием формул для радиуса и второй производной. Они наблюдают, что кривизна поверхности меняется с положительной на отрицательную в определенных точках, разделяя объект на две части с разной кривизной. Докладчик предлагает два варианта решения этой проблемы: либо вычислить гауссову кривизну во всех точках с одинаковой ориентацией поверхности и сложить их, либо использовать формулу суммы гауссовых кривизн, сокращающую некоторые члены.

  • 00:55:00 В этом разделе спикер обсуждает расширенное изображение Гаусса (EGI) и то, как его можно использовать для выравнивания. Докладчик поясняет, что ЭГИ для тора меняется плавно и имеет сингулярность на полюсе, которую можно визуализировать, вложив единичную сферу в единичный цилиндр. Этот вариант можно использовать для согласования модели объекта с данными машинного зрения, объединив две сферы с распределением, которое плавно меняется, но имеет быстрый рост к полюсам. Однако это не дает полного отношения, так как объект все еще можно вращать вокруг оси, ничего не меняя, что подходит для тела вращения. Спикер также упоминает, как люди пытались итеративно реконструировать EGI для случая дискретного многогранника.
  • 01:00:00 В этом разделе спикер объясняет, что восстановление объекта по его гауссовскому изображению — сложная задача, требующая большого процесса поиска или оптимизации с расстояниями всех плоскостей от начала координат в качестве параметров. Однако этот подход не является необходимым для распознавания и совмещения с использованием гауссовых изображений, поскольку метод включает сравнение распределений на сфере и вращение одной сферы относительно другой до получения хорошего совпадения. Докладчик также представляет новый способ понимания полос на сфере, который позволяет рассчитать кривизну и описать эффект сжатия вблизи полюсов.

  • 01:05:00 В этом разделе лектор обсуждает площадь тора и то, как она связана с гауссовым образом. Он объясняет, что два пончика разной формы, но одинаковой площади имеют одинаковый EGI, что является недостатком разрешения невыпуклых объектов. Эта потеря уникальности может иметь или не иметь значения в приложении, но она показывает, что когда мы распространяем это на невыпуклые объекты, все не так хорошо. Кроме того, существуют проблемы со скрытыми поверхностными элементами в невыпуклых объектах, а при построении EGI с использованием числовых данных могут быть внесены небольшие ошибки.

  • 01:10:00 В этом разделе лектор обсуждает, как численно обрабатывать несовершенные реальные объекты и помещать их в библиотеку на основе их истинной формы. Они объясняют, как рассчитать нормаль к поверхности и площадь треугольного пятна на поверхности объекта, используя фотометрические стереоданные или модели сетки. Затем они описывают, как создать распределение массы на сфере на основе нормали к поверхности, которая представляет собой гистограмму направления. Этот метод дает возможность понять влияние кривизны на распределение массы и понять, почему добавление массовых вкладов вместо их вычитания является выгодным. В целом, этот метод позволяет создавать гистограммы направлений и представлять объекты в библиотеке на основе их истинной формы.

  • 01:15:00 В этом разделе спикер обсуждает концепцию гистограмм направлений, которые включают разделение сферы на прямоугольники и подсчет вхождений в каждой ячейке. Этот метод используется для обозначения сильной концентрации в определенном направлении в таких вещах, как параллельные мышечные волокна и направления потока воды в головном мозге. Он также применяется в таких областях, как визуализация опухолей, где равномерное распределение гистограмм ориентации указывает на неравномерность ткани. Недостатки использования квадратов для разделения плоскости объясняются тем, что более округлые формы, такие как шестиугольник, более выгодны, чем треугольники.

  • 01:20:00 В этом разделе лектор обсуждает проблемы выбора ячеек для бинирования гистограмм и способы учета случайного шума при сравнении гистограмм. Вводится концепция наличия второй сдвинутой гистограммы, но это решение становится более дорогим по мере увеличения размерности. Другим решением является свертка распределения с помощью функции спреда, и это может быть дешевле, чем предыдущее решение. Затем в лекции рассматривается проблема разделения сферы и желаемые свойства тесселяции, такие как равная площадь, одинаковые формы, закругленные формы, регулярный узор и простота объединения. Отмечается, что эти желаемые свойства легко достигаются в плоских случаях, но становятся более сложными на искривленной поверхности, такой как сфера.

  • 01:25:00 В этом разделе лектор обсуждает проблему совмещения тела вращения с самим собой после поворота и преимущества совмещения при вращении. Он объясняет, как можно разделить сферу на двенадцать частей, спроецировав на ее поверхность додекаэдр, и каждая из этих частей может быть представлена числом. Если сфера вращается, числа, представляющие секции, будут просто переставлены местами, и потери качества не будет. Однако, если бы секции перекрывались после вращения, необходимо было бы перераспределить вес в каждой секции, что привело бы к потере качества. Затем лектор кратко упоминает правильные узоры и правильные сплошные тела в качестве отправных точек для гистограмм ориентации, но отмечает, что это будет обсуждаться более подробно в следующей лекции.
Lecture 23: Gaussian Image, Solids of Revolution, Direction Histograms, Regular Polyhedra
Lecture 23: Gaussian Image, Solids of Revolution, Direction Histograms, Regular Polyhedra
  • 2022.06.08
  • www.youtube.com
MIT 6.801 Machine Vision, Fall 2020Instructor: Berthold HornView the complete course: https://ocw.mit.edu/6-801F20YouTube Playlist: https://www.youtube.com/p...
 

MIT 6.0002 Введение в вычислительное мышление и науку о данных, осень 2016 г. Лекция 1. Введение, проблемы оптимизации



1. Введение, проблемы оптимизации (MIT 6.0002 Введение в вычислительное мышление и науку о данных)

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

  • 00:00:00 В этом видеоролике представлен курс «1. Введение, проблемы оптимизации (MIT 6.0002 Введение в вычислительное мышление и науку о данных)», а также обсуждаются предпосылки и цели курса. Основное внимание в курсе уделяется использованию вычислительных моделей для понимания мира и прогнозирования будущих событий.

  • 00:05:00 В видео обсуждаются модели оптимизации, которые представляют собой простой способ решения задач, связанных с целями и ограничениями. В видео также обсуждается конкретная проблема оптимизации, называемая проблемой рюкзака, которая представляет собой проблему, в которой человек должен выбрать, какие объекты взять из конечного числа объектов.

  • 00:10:00 В этом видео объясняется непрерывная или так называемая дробная задача о рюкзаке и описывается жадный алгоритм. Проблема выбора лучшего в первую очередь более сложная, и показана ее формализация.

  • 00:15:00 Жадный алгоритм решает задачу оптимизации, помещая лучший доступный предмет в рюкзак по мере его заполнения. Этот алгоритм эффективен, но не гарантируется нахождение наилучшего возможного решения.

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

  • 00:25:00 В этом видео обсуждается эффективный алгоритм распределения ресурсов, называемый "жадным по значению". Алгоритм учитывает вес и потребности ресурса и способен эффективно распределять ресурсы для больших количеств.

  • 00:30:00 В видео обсуждается использование лямбда-выражений для создания анонимной функции. В нем объясняется, что лямбда-выражения можно использовать для создания функции, которая вычисляет выражение для последовательности параметров. Также показано, как вызвать функцию лямбда-выражения.

  • 00:35:00 В видео обсуждается, как жадные алгоритмы могут приводить к разным результатам в зависимости от порядка сортировки, и как это может быть проблемой при восхождении на холм. Также показано, как модифицировать жадный алгоритм, чтобы всегда получать наилучший результат.

  • 00:40:00 В видео обсуждается, как жадный алгоритм иногда может привести к лучшим решениям, чем более оптимальный, но требующий больше времени алгоритм.
 

Лекция 2. Проблемы оптимизации



2. Проблемы оптимизации

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

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

  • 00:05:00 В видео обсуждается обход дерева, объясняя, что самый левый узел имеет наибольшее количество возможных элементов, а самый правый узел — наименьшее количество возможных элементов. Алгоритм прост и асимптотичен по сложности.

  • 00:10:00 В этом видео объясняется, как работает рекурсивный алгоритм решения оптимизационных задач. Алгоритм начинает с изучения левой ветви дерева, если текущий элемент нельзя взять, а затем переходит к правой ветви, если можно. Если ни одна из ветвей не может быть выбрана, алгоритм возвращает максимальное значение списка toConsider.

  • 00:15:00 В этом видео автор показывает, как улучшить производительность алгоритма поиска, используя действительно оптимальный алгоритм.

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

  • 00:25:00 Динамическое программирование — это способ избежать многократного повторения одних и тех же вычислений. Он используется в задаче Фибоначчи, в которой ответ на число Фибоначчи вычисляется путем сложения двух предыдущих чисел Фибоначчи.

  • 00:30:00 В этом видео автор обсуждает преимущества использования мемоизации — метода, при котором результаты сохраняются в таблице, а не рекурсивно вычисляются. Они показывают, как это можно использовать для повышения производительности функции Фибоначчи, сначала решая меньшие подзадачи, а затем объединяя результаты.

  • 00:35:00 В видео обсуждаются проблемы оптимизации и то, как в некоторых случаях можно найти решения, решая одну и ту же проблему несколько раз. Также обсуждается задача о рюкзаке, которая имеет оптимальную подструктуру, то есть два узла, решающих одну и ту же задачу. Тем не менее, видео также указывает на то, что в некоторых случаях решения проблем можно найти, решая разные проблемы — в данном случае два узла решают одну и ту же проблему, беря разные сорта пива из меню.

  • 00:40:00 В видео обсуждается, как можно решить проблемы оптимизации с помощью решения динамического программирования. Дерево в примере показывает, как различные варианты выбора в каждом узле (что брать и не брать) приводят к решению одной и той же проблемы, даже если отдельные решения могут выглядеть по-разному. Обсуждается памятная реализация функции maxVal и показывается, что количество вызовов медленно растет для решения динамического программирования.

  • 00:45:00 В этом видео обсуждается сложность решения задач оптимизации, но динамическое программирование часто может дать адекватное, хотя и не оптимальное решение.
 

Лекция 3. Теоретико-графовые модели



3. Теоретико-графовые модели.

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

  • 00:00:00 Это видео-лекции по теории графов — разделу математики, изучающему структуру и динамику сетей. Теория графов позволяет легче разрабатывать и изучать модели оптимизации, а также понимать, как данные проходят через сети. Теория графов делится на две категории: графы и графы с ребрами. Графы обычно состоят из двух элементов: узлов и ребер. Узлы представляют точки данных, а ребра представляют связи между ними. Графы с ребрами более распространены и используются для моделирования отношений между двумя объектами. Мы увидим два способа создания графов с ребрами: неориентированный и направленный. Мы также изучим, как добавлять к ребрам информацию, например веса. Наконец, мы познакомимся с методом навигации по графикам, известным как минимизация стоимости или кратчайший путь.

  • 00:05:00 Графики состоят из ребер или дуг, и их можно использовать для моделирования отношений между объектами. Их можно использовать, среди прочего, в транспортных сетях, финансовых сетях и социальных сетях.

  • 00:10:00 Это видео знакомит с теорией графов — математической областью, используемой для понимания сетей взаимосвязей. Графики можно использовать для представления реальных ситуаций, а также для получения такой информации, как кратчайший путь и последовательность взаимодействий между элементами в сети. В этом видео показано, как использовать теорию графов для решения таких задач, как поездки на работу и навигация.

  • 00:15:00 Теория графов — это область математики, изучающая структуру и взаимодействие сетей. Это видео следует простому объяснению того, как теория графов используется для решения задач поиска кратчайшего пути.

  • 00:20:00 Автор представляет теоретико-графовую модель, представляющую собой ориентированный граф с узлами и ребрами, и способ хранения узлов и ребер в словаре. Модель позволяет легко представить граф, но это не самый эффективный способ сделать это. Автор вводит список смежности, который является более эффективным способом представления графа, и использует его, чтобы показать, как добавить ребро и получить все дочерние элементы узла.

  • 00:25:00 В этом видео объясняется, как создавать, искать и печатать графики с помощью языка программирования Python. Графы могут быть созданы как подклассы класса орграфов, что позволяет использовать ориентированные и неориентированные графы. В видео показан пример добавления ребра между двумя узлами в графе.

  • 00:30:00 В видео представлены три теоретико-графовые модели: задачи о кратчайшем пути, маршрутная навигация и коммуникационные сети. Первая модель, задачи кратчайшего пути, представляет собой задачу навигации, целью которой является поиск маршрута между двумя городами. Вторая модель, маршрутная навигация, представляет собой задачу, целью которой является поиск пути между двумя точками на графе. Третья модель, коммуникационные сети, представляет собой задачу, целью которой является поиск кратчайшего пути между двумя узлами в сети. Видео знакомит с двумя алгоритмами решения задач поиска кратчайшего пути: поиск в глубину и разделяй и властвуй.

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

  • 00:40:00 В этом видео представлена теоретико-графовая модель, позволяющая понять, как можно найти решения проблем. Модель основана на идее, что путь представляет собой список узлов, и что для поиска решения можно использовать поиск в глубину. Модель проиллюстрирована двумя примерами. В первом примере показано, как найти путь из Бостона в Чикаго, а во втором примере показано, как найти путь из Финикса в Нью-Йорк. После знакомства с моделью видео демонстрирует, как использовать поиск в глубину для поиска решения проблемы.

  • 00:45:00 В этом видео показано, как можно использовать теоретико-графовые модели для решения задач оптимизации. В видео сначала показано, как можно изменить алгоритм поиска в глубину, чтобы минимизировать сумму весов на ребрах, а затем показано, как можно использовать поиск в ширину для поиска кратчайшего взвешенного пути.

  • 00:50:00 В этом видео представлены теоретико-графовые модели, которые используются для изучения взаимосвязей между переменными.
 

Лекция 4. Стохастическое мышление



4. Стохастическое мышление

Профессор Гуттаг знакомит со стохастическими процессами и основами теории вероятностей.

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

4. Stochastic Thinking
4. Stochastic Thinking
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: John GuttagPro...
 

Лекция 5. Случайные блуждания



5. Случайные блуждания

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

  • 00:00:00 В этом разделе Гуттаг объясняет, почему случайные блуждания важны, и в качестве примера вводит концепцию блуждания пьяного. Он ставит вопрос о том, существует ли интересная связь между количеством шагов, которые делает пьяница, и тем, насколько далеко они от исходной точки. Чтобы проиллюстрировать это, он приводит небольшой пример и просит аудиторию провести опрос о том, чем больше шагов делает пьяница, тем дальше он, вероятно, окажется, или не имеет значения, сколько шагов он сделает. Гуттаг также упоминает, что изучение случайных блужданий полезно для моделирования процессов в различных научных и социальных дисциплинах, а также для демонстрации того, как моделирование может помочь в понимании окружающего мира при обучении важным темам, связанным с программированием.

  • 00:05:00 В этом разделе видео о случайных прогулках спикер начинает с анализа среднего расстояния, которое пьяный человек будет от исходной точки, сделав один или два шага. Используя теорему Пифагора, они определяют, что в среднем пьяный человек будет дальше от исходной точки, сделав два шага. Затем они переходят к анализу того, что происходит после 100 000 шагов, и прибегают к моделированию для расчета среднего расстояния от начала n прогулок. Чтобы подготовиться к симуляции, говорящий определяет некоторые полезные абстракции, такие как местоположение, поле и пьяный человек. Класс Drunk служит базовым классом, который используется для определения двух подклассов, включая обычный подкласс пьяных.

  • 00:10:00 В этом разделе мы узнаем о предвзятом случайном блуждании, когда пьяный может сделать шаг, либо увеличивая y, либо уменьшая y, либо увеличивая x, либо уменьшая x, и возвращая только один случайный шаг. Пьяный-мазохист является подклассом обычного пьяного и предпочитает двигаться на север, но делает 1,1 шага по сравнению с одним шагом вперед и только 9/10 шага при движении на юг. Хотя это предполагает предвзятое случайное блуждание, существует неизменность, поскольку пьяницы и местоположения остаются неизменными. Однако поля изменяемы, потому что они сопоставляют пьяные со своим местоположением в поле через словарь. Чтобы проверить, есть ли пьяный, или получить местоположение поля, мы используем сообщения об ошибках значения. При вызове moveDrunk расстояния в x и y получаются из функции takeStep, и self.drunk присваивается этому новому расстоянию.

  • 00:15:00 В этом разделе ведущий объясняет, как моделировать случайные блуждания и как с их помощью отвечать на вопросы о том, как передвигаются разные типы пьяных. Симуляция включает в себя создание поля и добавление в него пьяных, где пьяные делают разное количество случайных шагов по полю. Ведущий показывает, как имитировать одну прогулку, а затем показывает, как имитировать несколько прогулок, чтобы ответить на вопросы о поведении пьяных. Усредняя расстояния, взглянув на среднее, минимальное или максимальное значение, мы можем увидеть, как далеко различные типы пьяниц оказываются от исходной точки. Затем ведущий обсуждает результаты моделирования и спрашивает, выглядят ли они правдоподобно.

  • 00:20:00 В этом разделе профессор Джон Гуттаг подчеркивает важность проверки работоспособности при построении симуляции. Он проводит простую проверку вменяемости, используя пример пьяного мужчины, делающего шаги, который выявляет программную ошибку в коде симуляции, которая не была сразу очевидна. После исправления ошибки Гуттаг снова запускает симуляцию, чтобы перепроверить результаты и заверяет зрителей, что прохождение проверки работоспособности не гарантирует правильность симуляции, но является хорошим признаком того, что она в хорошем состоянии.

  • 00:25:00 В этом разделе спикер описывает эксперимент, сравнивающий обычного пьяного с пьяницей-мазохистом, где первый делает шаги наугад, а мазохистская версия чаще делает шаги в направлении, противоположном предыдущему. Эксперимент показывает, что пьяные-мазохисты добиваются значительно большего прогресса, чем обычные пьяницы, а это означает, что их движение смещено в одном направлении. Чтобы понять, почему, спикер использует Pylab для построения линии тренда для каждого типа пьяных, чтобы визуализировать расстояние с течением времени, при этом PyLab объединяет библиотеки NumPy, SciPy и MatPlotLib, чтобы предоставить возможности построения графиков, подобные MATLAB. Докладчик также объясняет основной синтаксис функции plot и ее аргументы для Python.

  • 00:30:00 В этом разделе спикер демонстрирует, как создавать графики с помощью PyLab с помощью различных аргументов, которые можно использовать с функциями графика и легенды. Он также высказывает свое мнение, что овладение искусством составления сюжетов является ценным навыком. Далее спикер исследует и показывает графики тенденций дистанции между обычным пьяницей и пьяницей-мазохистом. Говорящий обнаруживает, что обычный пьяный человек перемещается примерно на квадратный корень из числа шагов, в то время как мазохистский пьяный человек движется со скоростью numSteps, умноженной на 0,05. В заключение докладчик демонстрирует новый тип графика, в котором точки данных разделены линиями.

  • 00:35:00 В этом разделе спикер обсуждает, как визуализация может дать представление о данных. Нанося локации в конце случайных прогулок, он демонстрирует, как ведут себя разные типы пьяниц и чем они отличаются. Он подчеркивает важность использования графиков для понимания данных, а не просто представления электронных таблиц конечных точек. Спикер также представляет OddField, подкласс Field с червоточинами, которые телепортируют местонахождение пьяного в другое место. Он создает словарь червоточин со случайными местами, куда можно телепортировать пьяного, что обеспечивает большую вариативность моделирования.

  • 00:40:00 В этом разделе видео инструктор объясняет, как случайные блуждания используются для имитации движения пьяницы и как червоточины оказывают сильное влияние на то, где пьяница оказывается. Он также подчеркивает важность поэтапного построения моделирования, начиная с определения классов, построения функций, соответствующих одному и нескольким испытаниям, и сообщения результатов. Далее он демонстрирует, как он использует простые команды построения графиков для создания различных типов графиков, которые помогают лучше понять симуляцию.

  • 00:45:00 В этом разделе спикер рассказывает об общей парадигме, где он раз и навсегда настраивает итератор стиля, определяя n стилей, поэтому, когда он хочет построить новый вид пьяницы, он просто вызывает итератор стиля чтобы получить следующий стиль. Стили включают в себя маркер, линию, цвет и размер, среди прочего, которые он любит изменять по умолчанию, чтобы сделать график более удобным для чтения. Спикер подчеркивает гибкость этого подхода, поощряя эксперименты для достижения разных стилей сюжета. В следующей лекции он углубится в моделирование других явлений и обсудит правдоподобность моделирования.
5. Random Walks
5. Random Walks
  • 2017.05.19
  • www.youtube.com
MIT 6.0002 Introduction to Computational Thinking and Data Science, Fall 2016View the complete course: http://ocw.mit.edu/6-0002F16Instructor: John GuttagPro...