Робототехника.Фу, Ли, Гонсалес (962794), страница 8
Текст из файла (страница 8)
Пример. Координатные оси О(У, 01' и О)Р повернуты на угол сс вокруг оси ОХ. Определить координаты единичных векторов в направлении осей абсолютной системы отсчета относительно повернутой системы отсчета О(У(У)Г. Решение, Единичные векторы в направлении повернутых координатных осей в повернутой системе отсчета имеют координаты 1, =(1, О, 0) )в =(О, 1, 0)", 1см =(О, О, 1) Тогда исходные единичные векторы имеют вид 1„ = Н„ + 0)„ + 0)с = (1, О, О), !я — — 01„+ сова)„— з!и а14„=(0, сова, — з!п а)г, 14,=01„+ э!па)„+ сов ай„=(0, вйп а, сова)г.
Используя свойство 1 и рассматривая эти векторы как строки матрицы поворота, можно воссоздать матрицу Й, , котораЯ бу- 4! дет иметь следующий вид: 1 0 0 й, „= 0 сояа я!па 0 — я)п а соз а что совпадает с результатом транспонирования матрицы, входя- щей в равенство (2.2-12). 2.2.6. Однородные координаты и матрицы преобразований Поскольку трехмерная матрица поворота не несет информации о поступательном перемещении и используемом масштабе, вектор координат р=(р„р, р,)' в трехмерном пространстве дополняют четвертой координатой (илн компонентой) так, что он принимает вид р =(шр„, игр„, игр„ш)'. В этом случае говорят, что вектор р выражен в однородных координатах. В этом разделе для обозначения того, что евклидов вектор выражен в однородных координатах, мы будем его записывать в виде р. В дальнейшем, если это не приведет к путанице, такие «крышкнь над буквами будут опущены.
Описание точек трехмерного пространства однородными координатами позволяет ввести в рассмотрение матричные преобразования, содержащие одновременно поворот, параллельный перенос, изменение масштаба и преобразование перспективы. В общем случае изображение У-мерного вектора вектором размерностью гч'+ ! называется представлением в однородных координатах, Прн таком представлении преобразование гУ-мерного вектора производится в (гч'+ 1)-мерном пространстве, а физический гч'-мерный вектор получается лелением однородных координат на (Лг+ 1)-ю компоненту аг. Так, вектор р =(р., р„, р,)' положения в трехмерном пространстве в однородных координатах представляется расширенным вектором (игр, юр„, шр„ю) т.
Физические координаты связаны с однородными следующим образом; мРк ~Рц Рк= ~ рд= Представление трехмерного вектора положения в однородных координатах не единственно. Например, р, = (игр„ иггр„, югр„шг) ' и р, =(пзрк, юзрю шзр„игз) ' являются различными однородными представлениями одного и того гке вектора положения р = (р„ р,, р,)'. Таким образом, четвертую компоненту ю вектора однородных координат можно рассматривать как масштабирующий множитель, Если эта компонента равна 1 (иг =!), то однородные координаты вектора положения совпадают с его физическими координатами. В робототехнике масштабирующий 42 множитель всегда выбирается равным 1, а в задачах машинной графики он принимает любые положительные значения.
Однородная матрица преобразования представляет собой матрицу размерностью 4 гс', 4, которая преобразует вектор, выраженный в однородных координатах, из одной системы отсчета в другую. Однородная матрица преобразования может быть разбита на четыре подматрицы: Поворот : 'Сдвиг Преобразование:, Маспгтаби- . (2.2-20) перспективы ! рование Йзхз ! Рзх г Верхняя левая подматрица размерностью Зк,'3 представляет собой матрицу поворота; верхняя правая подматрица размерностью Згс 1 представляет собой вектор положения начала координат повернутой системы отсчета относительно абсолютной; нижняя левая подматрица размерностью 1гс 3 задает преобразование перспективы; четвертый диагональный элемент является глобальным масштабирующим множителем.
Однородная матрица преобразования позволяет выявить геометрическую связь между связанной системой отсчета ОУЛ«» и абсолютной системой ОХУЯ. Если вектор р трехмерного пространства выражен в однородных координатах (т. е. р =(рк, р,, р,, ! ) т), то, используя понятие матрицы преобразования, можно сформировать однородную матрицу преобразования Т„., задающую преобразование поворота и имегощую размерность 4»с',4. Однородная матрица поворота получается соответствующим расширением обычной матрицы поворота, имеющей размсоность 3 гс',3. Так, однородное представление для матриц (2.2-!2) и (2.2-13) имеет следующий вид: соя ф 0 я(п ф 0 0 1 0 Π— я!и ф О соя ф О 0 0 0 1 1 О 0 0 0 сова — я!п а 0 0 я!па соя а 0 Т„ Т», а 0 0 0 1 соя Π— я!гг 0 0 О я!и 0 соя 0 0 0 (2.2-21) 1», я О 0 ! 0 0 0 0 1 Эти матрицы размерностью 4 гс',4 называются однородными матрицами элементарных поворотов.
Верхняя правая подматрица однородной матрицы преобразования, имеющая размерность 3;гс', 1, задает параллельный пе- 43 1 0 0 йх 0 1 0 йу 0 0 1 йг (2.2-22) и„ э, а, р„ 000! Пе Э а„Р„ Пг 85 и5 Р5 0 О 0 1 0 0 0 1 а 0 0 0 х ах 0 Ь 0 0 0 0 с 0 Ьу (2. 2-23) 0 0 0 1 1 1 0 0 0 х 0 1 0 0 0 0 1 0 (2.2-24) 0 0 0 э 1 э 45 ренос системы координат ООУ(р относительно абсолютной сиь стемы ОХУ2 на вектор (йх, иу, йг) '. Эта матрица размерностью 4)5',4 называется однородной матриией элементарного сдвига. Левая нижняя подматрица однородной матрицы преобразования размерностью 1 Х 3 определяет преобразование перспективы, используемое, как показано в гл.
7, в задачах машинного зрения и при калибровке изображений. Здесь элементы этой подматрицы нулевые, что соответствует нулевому преобразованию перспективы. Диагональные элементы однородной матрицы преобразования определяют локальное и глобальное изменения масштаба. Первые трн диагональных элемента задают локальное растяжение, или изменение масштаба: Легко видеть, что значения координат претерпевают изменение масштаба, определяемое соответственно скалярами а, Ь и с. Заметим, что матрицы элементарных поворотов Т„., не да|от эффекта локального изменения масштаба. Четвертый диагональный элемент определяет глобальноепреобразование масштаба где 5 ) О.
Физические декартовы координаты вектора будут равны Х У 5 5 р,= —, р = ~, р,= —, ю= — =1. (2.2-26) Таким образом, четвертый диагональный элемент однородной матрицы преобразования определяет глобальное сжатие координат, если з ~ 1, и растяжение, если 0 ( 5 ( 1 Итак, однородная матрица преобразования переводит вектор, заданный однородными координатами в системе отсчета О(УУ(Г', в абсолютную систему координат ОХУ2, т. е. при п5 = 1 Рхе5 = 1риов (2,2-26а) 2.2.7.
Геометрический смысл однородной матрицы преобразования В общем случае однородная матрица преобразования векторов трехмерного пространства может быть представлена так, как в равенстве (2.2-26б). Выберем в системе координат О(5'У(У точку р, имеющую однородные координаты (О, О, О, 1)', т. е.
р.. совпадает с началом системы координат 0(1У(Р. В этом случае верхняя правая подматрица размерностью 3'х, ! характеризует положение точки начала системы координат О(эУ(Р в абсолютной системе отсчета ОХУ2. Далее, выберем точку р равной (1, О, О, 1)', т. е. р .„= 1„. Кроме того, предположим, что начала обеих систем отсчета совпадают и расположены в точке О.
Это приводит к тому, что все элементы верхней правой подматрицы, имеющей размерность 3)5', 1, равны О. Тогда первый столбец (или вектор п) однородной матрицы преобразования определяет координаты единичного вектора в направлении оси О(У системы ООУР' в системе отсчета ОХУ2. Аналогично, полагая р равным (О, 1, О, 1)' и (О, О, 1, 1)г, легко видеть, что второй столбец (или вектор э) и третий столбец (или вектор а) элементов однородной матрицы преобразования определяют соответственно координаты единичных векторов в направлении осей ОУ и О(Р системы ОИГ(Р в абсолютной системе отсчета. Таким образом, если задана абсолютная система отсчета ОХУ2 и однородная матрица преобразования Т, то векторы-столбцы подматрицы поворота представляют собой единичные векторы в направлении основных осей системы О(/У(Р, заданные своими координатами в абсолютной системе отсчета, т.
е. задают ориентацию основных осей системы отсчета О(УУ(Р относительно абсолютной системы координат. Четвертый вектор-столбец однородной матрицы преобразования задает положение начала координат системы отсчета ОПУРЯ относительно абсолютной системы координат. Другими словами, однородная матрица преобразования в геометрическом смысле определяет расположение повернутой системы координат (положение и ориентацию) по отношению к абсолютной системе отсчета.
Поскольку операция обращения подматрицы поворота совпадает с операцией транспонирования, то векторы-строки подматрицы поворота задают положение основных осей абсолютной системы координат относительно повернутой системы координат О(/)т!)т. Однако для однородной матрицы операции обращения и транспонирования не совпадают. Положение начала абсолютной системы координат относительно системы координат О!т')тйт можно определить лишь после того, как определена матрица, обратная матрице однородного преобразования. В общем случае такая матрица имеет следующий вид: т -и р т — Б т Йзкз — а Р 0 0 0 1 — и 7' т — Б т — ар не пт ех зе зг а„ае а, 0 О 0 Т (2.2-27) Таким образом, из равенства (2.2-27) видно, что векторы-столбцы матрицы, обратной к однородной матрице преобразования, определяют положение основных осей абсолютной системы отсчета относительно повернутой системы координат ОО)т!!т, Верхняя правая подматрица размерностью 3Х 1 характеризует положение начала абсолютной системы координат относительно системы О(/)т)ут.