Кіріспе
Проективті геометрияда қолданылатын координаттар жүйесі. Математикада, Огуст Фердинанд Мёбиус 1827 жылы жариялаған "Барицентристік есептеу" еңбегінде енгізген гомогенді координаттар немесе проективті координаттар – проективті геометрияда қолданылатын координаттар жүйесі, дәл сияқты Евклид геометриясында картезиандық координаттар қолданылады. Олардың ең артықшылығы – нүктелердің координаттарын, соның ішінде шексіз нүктелерді, шекті координаттар арқылы бейнелеуге болады. Гомогенді координаттарды қолданатын формулалар көбінесе олардың картезиандық аналогтарынан қарапайым және симметриялы болады. Гомогенді координаттардың қолданылу аясы кең, оның ішінде компьютерлік графика және 3D компьютерлік көру салаларында, олар аффиндік және жалпы проективтік түрлендірулерді матрица арқылы оңай көрсетуге мүмкіндік береді. Олар сондай-ақ негізгі эллиптік қисық криптография алгоритмдерінде де қолданылады. Егер нүктенің гомогенді координаттарын нөлдік емес санға көбейтсек, нәтижеде алынған координаттар сол нүктені көрсетеді. Гомогенді координаттар шексіз нүктелерге де беріледі, сондықтан осы кеңейтуді жүзеге асыру үшін қажетті координаттар саны қарастырылып отырған проективтік кеңістіктің өлшемінен бірге артық болуы керек. Мысалы, проективтік түзудегі нүктені анықтау үшін екі гомогенді координат, ал проективтік жазықтықтағы нүктені анықтау үшін үш гомогенді координат қажет.
In mathematics, homogeneous coordinates or projective coordinates, introduced by August Ferdinand Möbius in his 1827 work Der barycentrische Calcul, are a system of coordinates used in projective geometry, just as Cartesian coordinates are used in Euclidean geometry. They have the advantage that the coordinates of points, including points at infinity, can be represented using finite coordinates. Formulas involving homogeneous coordinates are often simpler and more symmetric than their Cartesian counterparts. Homogeneous coordinates have a range of applications, including computer graphics and 3D computer vision, where they allow affine transformations and, in general, projective transformations to be easily represented by a matrix. They are also used in fundamental elliptic curve cryptography algorithms. If homogeneous coordinates of a point are multiplied by a non zero scalar then the resulting coordinates represent the same point. Since homogeneous coordinates are also given to points at infinity, the number of coordinates required to allow this extension is one more than the dimension of the projective space being considered. For example, two homogeneous coordinates are required to specify a point on the projective line and three homogeneous coordinates are required to specify a point in the projective plane.
Кіріспе
Нақты проекциялық жазықтықты Евклид жазықтығы ретінде қарастыруға болады, оған қосымша нүктелер қосылады, олар шексіз нүктелер деп аталады және жаңа түзуде, шексіз түзуде жатыр деп есептеледі. Әр бағытқа сәйкес келетін шексіз нүкте бар (сандық түрде түзудің бұрыштық коэффициентімен берілген), бұл бастапқыдан сол бағытта алыстайтын нүктенің лиміті ретінде бейресми түрде анықталады. Евклид жазықтығындағы параллель түзулер олардың ортақ бағытына сәйкес келетін шексіз нүктеде қиылысады. Евклид жазықтығындағы (x, y) нүктесі үшін, кез келген нөлден өзге нақты сан Z үшін, (xZ, yZ, Z) үштігі – бұл нүктенің біртекті координаттары жиыны деп аталады. Осы анықтама бойынша, үш біртекті координатты ортақ нөлден өзге көбейткішпен көбейту, сол нүктенің біртекті координаттарының жаңа жиынын береді. Атап айтқанда, (x, y, 1) – (x, y) нүктесі үшін біртекті координаттар жүйесі. Мысалы, (1, 2) картезиандық нүктесін біртекті координаттармен (1, 2, 1) немесе (2, 4, 2) түрінде бейнелеуге болады. Алғашқы екі координатаны үшінші координатаға бөлу арқылы бастапқы картезиандық координаттарды алуға болады. Демек, картезиандық координаттардан айырмашылығы, бір нүктені шексіз көп біртекті координаттармен бейнелеуге болады. (0, 0) нүктесінен өтетін түзудің теңдеуін 1 = nx + my = 0 түрінде жазуға болады, мұнда n және m екеуі де 0 емес. Параметрлік түрде бұл 1 = x = mt, y = −nt деп жазылуы мүмкін. Z = 1/t болсын, сонда түзудегі нүктенің координаттарын 1 = (m/Z, −n/Z) деп жазуға болады. Лимитте, t шексізге жақындағанда, яғни нүкте бастапқыдан алыстағанда, Z 0-ге жақындап, нүктенің біртекті координаттары (m, −n, 0) болады. Осылайша, (m, −n, 0) түзуінің 1 = nx + my = 0 бағытына сәйкес келетін шексіз нүктенің біртекті координаттары ретінде анықтаймыз. Евклид жазықтығының кез келген түзуі бастапқы нүктеден өтетін түзуге параллель болғандықтан және параллель түзулердің шексіздікте бірдей нүктесі болғандықтан, Евклид жазықтығының әрбір түзуіндегі шексіз нүктеге біртекті координаттар берілген. Қорыта айтқанда:
Проективті жазықтықтағы кез келген нүкте (X, Y, Z) үштігімен бейнеленеді, бұл нүктенің біртекті немесе проективті координаттары деп аталады, мұнда X, Y және Z екеуі де 0 емес. Координаталар ортақ көбейткішпен көбейтілсе, біртекті координаттар жиынымен бейнеленген нүкте өзгермейді. Керісінше, екі біртекті координаттар жиыны бір нүктені бейнелейді, егер және тек егер бірін екіншісінен барлық координаттарды нөлден өзге тұрақтыға көбейту арқылы алуға болады. Егер Z 0 болмаса, бейнеленген нүкте Евклид жазықтығындағы (X/Z, Y/Z) нүктесі болады. Егер Z 0 болса, бейнеленген нүкте шексіз нүкте болады. (0, 0, 0) үштігі алынып тасталады және ешқандай нүктені бейнелемейді. Евклид жазықтығының бастапқы нүктесі (0, 0, 1) арқылы бейнеленеді.
Any point in the projective plane is represented by a triple (X, Y, Z), called homogeneous coordinates or projective coordinates of the point, where X, Y and Z are not all 0. The point represented by a given set of homogeneous coordinates is unchanged if the coordinates are multiplied by a common factor. Conversely, two sets of homogeneous coordinates represent the same point if and only if one is obtained from the other by multiplying all the coordinates by the same non zero constant. When Z is not 0 the point represented is the point (X/Z, Y/Z) in the Euclidean plane. When Z is 0 the point represented is a point at infinity. The triple (0, 0, 0) is omitted and does not represent any point. The origin of the Euclidean plane is represented by (0, 0, 1).
Нөмірлік
Кейбір авторлар гомогенді координаттарды белгілеу үшін әртүрлі жазу тәсілдерін қолданады, бұл оларды декарттық координаттардан ажыратуға көмектеседі. Мысалы, үтірлердің орнына қос нүктелерді қолдану (x:y:z) (x, y, z) орнына, координаттардың қатынастар ретінде қарастырылуын күшейтеді. [x, y, z] сияқты тіктөртбұрышты жақшалар бір нүктеге бірнеше координаттар жиынтығының сәйкес екенін көрсетеді. Кейбір авторлар қос нүктелер мен тіктөртбұрышты жақшаларды бірге қолданады, мысалы [x:y:z].
Басқа өлшемдер
Алдыңғы бөлімде талқыланған мәселелер проекциялық жазықтықтан өзге проекциялық кеңістіктерге де қатысты қолданылады. Сондықтан, проекциялық түзудегі нүктелер (x, y) координаталар жұбымен бейнеленеді, мұнда екеуі де нөлге тең болмайды. Бұл жағдайда, шексіз нүкте (1, 0) болып табылады. Сол сияқты, проективті n-кеңістіктегі нүктелер (n + 1) тізіммен бейнеленеді.
Басқа проекциялық кеңістіктер
Нақты сандарды қолдану, нақты проективті кеңістіктердің классикалық жағдайында нүктелердің біртекті координаттарын қамтамасыз етеді, бірақ кез келген өріс қолданылуы мүмкін, атап айтқанда, күрделі проективті кеңістікте күрделі сандарды қолдануға болады. Мысалы, күрделі проективті түзу екі біртекті күрделі координатаны пайдаланады және Риман шар деп аталады. Басқа өрістер, соның ішінде шекті өрістер де қолданылуы мүмкін. Проективті кеңістіктер үшін біртекті координаттарды бөлу сақинасының (қисайған өріс) элементтерімен де құруға болады. Дегенмен, бұл жағдайда көбейтудің коммутативті еместігін ескеру қажет. Жалпы, А сақинасы үшін А үстіндегі проективті түзу сол жақтан әрекет ететін біртекті факторлармен және оң жақтан әрекет ететін проективті сызықтық топпен анықталуы мүмкін.
Баламалы анықтама
Нақты проекциялық жазықтықтың тағы бір анықтамасын эквиваленттік сыныптар арқылы беруге болады. R3-тің нөлдік емес элементтері үшін, (x1, y1, z1) ~ (x2, y2, z2) дегеніміз, нөлдік емес λ табылатындай 1=(x1, y1, z1) = (λx2, λy2, λz2) дегенді білдіреді. ~ – эквиваленттік қатынас, ал проекциялық жазықтықты R3 \ {0} эквиваленттік сыныптары ретінде анықтауға болады. Егер (x, y, z) эквиваленттік сыныптың бір элементі болса, онда олар p-нің біртекті координаттары деп есептеледі. Бұл кеңістіктегі түзулер 1=ax + by + cz = 0 түріндегі теңдеулердің шешімдері жиынтығы ретінде анықталады, мұнда a, b және c-ның бәрі нөл емес. 1=ax + by + cz = 0 шартының орындалуы тек (x, y, z) эквиваленттік сыныбына ғана байланысты, сондықтан теңдеу проекциялық жазықтықтағы нүктелер жиынтығын анықтайды. (x, y) → (x, y, 1) бейнелеуі Евклид жазықтығынан проекциялық жазықтыққа енгізуді анықтайды, ал бейнелеудің толықтығы 1=z=0 нүктелер жиынтығы болып табылады. 1=z=0 теңдеуі проекциялық жазықтықтағы түзудің теңдеуі (проекциялық жазықтықтағы түзудің анықтамасын қараңыз) және шексіздіктегі түзу деп аталады. Эквиваленттік сыныптар, p, – бастапқы нүктесі алынып тасталған, бастапқы нүкте арқылы өтетін түзулер. Бастапқы нүкте бұрынғы талқылауда маңызды рөл атқармайды, сондықтан оны проекциялық жазықтықтың қасиеттерін өзгертпей қайта қосуға болады. Бұл анықтаманың бір түрін тудырады, атап айтқанда проекциялық жазықтық R3-те бастапқы нүкте арқылы өтетін түзулер жиынтығы ретінде анықталады, ал түзудің нөлдік емес элементінің (x, y, z) координаттары түзудің біртекті координаттары ретінде қабылданады. Бұл түзулер енді проекциялық жазықтықтағы нүктелер ретінде қарастырылады. Бұл талқылау басқа өлшемдерге де сәйкес келеді. Осылайша, n өлшемді проекциялық кеңістік Rn+1-дегі бастапқы нүкте арқылы өтетін түзулер жиынтығы ретінде анықталады.
Lines in this space are defined to be sets of solutions of equations of the form 1=ax + by + cz = 0 where not all of a, b and c are zero. Satisfaction of the condition 1=ax + by + cz = 0 depends only on the equivalence class of (x, y, z), so the equation defines a set of points in the projective plane. The mapping (x, y) → (x, y, 1) defines an inclusion from the Euclidean plane to the projective plane and the complement of the image is the set of points with 1=z = 0. The equation 1=z = 0 is an equation of a line in the projective plane (see definition of a line in the projective plane), and is called the line at infinity. The equivalence classes, p, are the lines through the origin with the origin removed. The origin does not really play an essential part in the previous discussion so it can be added back in without changing the properties of the projective plane. This produces a variation on the definition, namely the projective plane is defined as the set of lines in R3 that pass through the origin and the coordinates of a non zero element (x, y, z) of a line are taken to be homogeneous coordinates of the line. These lines are now interpreted as points in the projective plane. Again, this discussion applies analogously to other dimensions. So the projective space of dimension n can be defined as the set of lines through the origin in Rn+1.
Сызық координаттары мен двойственность
Жобалау жазықтығындағы түзудің теңдеуі 1=sx + ty + uz = 0 түрінде берілуі мүмкін, мұнда s, t және u тұрақты шамалар. Кез келген үштік (s, t, u) түзуді анықтайды, анықталған түзу нөлден өзгеше скалярға көбейтілгенде өзгермейді және s, t және u-дың кем дегенде біреуі нөлден өзгеше болуы керек. Сондықтан, үштік (s, t, u) проективті жазықтықтағы түзудің біртекті координаттары ретінде қарастырылуы мүмкін, яғни нүктелік координаттарға қарама-қарсы түзу координаттары. Егер sx + ty + uz = 0 теңдеуінде s, t және u әріптері айнымалылар, ал x, y және z тұрақтылар ретінде қарастырылса, онда теңдеу жазықтықтағы барлық түзулер кеңістігіндегі түзулер жиынының теңдеуіне айналады. Геометриялық тұрғыдан алғанда, бұл (x, y, z) нүктесі арқылы өтетін түзулер жиынын білдіреді және оны түзу координаттарындағы нүктенің теңдеуі ретінде түсіндіруге болады. Сол сияқты, үш өлшемді кеңістіктегі жазықтықтар төрт біртекті координаттар жиынымен берілуі мүмкін, және одан да жоғары өлшемдерде де осылай жалғасады. Бір қатынас, 1=sx + ty + uz = 0, түзудің немесе нүктенің теңдеуі ретінде қарастырылуы мүмкін. Жалпы алғанда, нүктелердің және түзулердің біртекті координаттары арасында алгебралық немесе логикалық ешқандай айырмашылық жоқ. Осылайша, негізгі элементтері нүктелерден тұратын жазықтық геометриясы және негізгі элементтері түзулерден тұратын жазықтық геометриясы, түсіндіруден басқа, эквивалентті. Бұл проективті геометриядағы дуалдық ұғымына әкеледі, яғни проективті геометриядағы теоремада нүктелер мен түзулердің рөлдерін ауыстыруға болады және нәтиже де теорема болады. Сол сияқты, проективті үш өлшемді кеңістіктегі нүктелер теориясы, проективті үш өлшемді кеңістіктегі жазықтықтар теориясына дуальды, және одан да жоғары өлшемдерде де осы қағида сақталады.
Плюкер координаттары
Жобалық 3 кеңістіктегі түзулерге координаттарды тағайындау күрделірек, себебі барлығы 8 координат қажет болады – түзуде жатқан екі нүктенің координаттары немесе қиылысы түзу болатын екі жазықтықтың координаттары. Юлиус Плюккердің әзірлеген пайдалы әдісі, түзудегі екі нүктенің (x1, x2, x3, x4) және (y1, y2, y3, y4) біртекті координаттарынан 1=xiyj − xjyi (1 ≤ i < j ≤ 4) түріндегі алты координаттан тұратын жиынтық құрайды. Плюккер енгізуі – бұл n өлшемді проекциялық кеңістіктегі кез келген m өлшемді элементтердің біртекті координаттарын жасау арқылы осы әдістің жалпылауы.
Дөңгелек нүктелер
Нақты немесе күрделі проективтік жазықтықтағы шеңбер теңдеуінің біртекті түрі 1=x² + y² + 2axz + 2byz + cz² = 0. Бұл қисықтың шексіз түзумен қиылысуын 1=z = 0 деп қою арқылы табуға болады. Бұл 1=x² + y² = 0 теңдеуін береді, оның күрделі сандар бойынша екі шешімі бар, нәтижесінде күрделі проективтік жазықтықта гомогенді координаттары (1, i, 0) және (1, −i, 0) болатын нүктелер пайда болады. Бұл нүктелер шексіз шеңберлік нүктелер деп аталады және оларды барлық шеңберлердің жалпы қиылысу нүктелері деп қарастыруға болады. Бұл жоғары дәрежелі қисықтарға шеңберлік алгебралық қисықтар ретінде жалпыланады.
Барицентрлік координаттар
Мёбиус гомогенді координаттардың бастапқы формуласында нүктенің орны үшбұрыштың төбелеріне орналасқан үш нүктелік масса жүйесінің масса орталығы (немесе барицентрі) ретінде анықталды. Үшбұрыш ішіндегі нүктелер оң массалармен, ал үшбұрыш сыртындағы нүктелер теріс массалармен көрсетіледі. Жүйедегі массаларды скалярға көбейту масса орталығының орнына әсер етпейді, сондықтан бұл гомогенді координаттар жүйесінің ерекше жағдайы болып табылады.
Үш сызықты координаттар
l, m, n жазықтықтағы үш түзу болсын және p нүктесінің X, Y және Z координаттары жиынтығын p-ден осы үш түзуге дейінгі белгілі қашықтықтар ретінде анықтаймыз. Бұлар осы түзулердің жұптық қиылысуларынан түзілген үшбұрышқа қатысты p-нің трилинейлік координаттары деп аталады. Қатаң айтқанда, бұл координаттар біртекті емес, себебі X, Y және Z мәндері пропорционалдылыққа ғана емес, нақты анықталады. Дегенмен, олардың арасында сызықтық байланыс бар, сондықтан (X, Y, Z) еселенгендері бірдей нүктені білдіретіндей етіп, бұл координаттарды біртекті етуге болады. Көбірек айтқанда, X, Y және Z тұрақтылар p, r және q еселенген l, m және n түзулеріне дейінгі қашықтықтар ретінде анықталуы мүмкін, нәтижесінде бірдей анықтамалық үшбұрышпен ерекшеленетін әртүрлі біртекті координаттар жүйесі пайда болады. Шын мәнінде, ешбір түзу шексіздіктегі түзу болмаса, жазықтықтағы нүктелер үшін бұл біртекті координаттар жүйесінің ең жалпы түрі болып табылады.
Компьютерлік графикада және компьютерлік көруде қолдану
Гомогенді координаттар компьютерлік графикада кеңінен қолданылады, себебі олар трансляция, айналу, масштабтау және перспективалық проекция сияқты векторлық операцияларды векторға көбейтілетін матрица түрінде көрсетуге мүмкіндік береді. Тізбектік ереже бойынша, мұндай операциялардың кез келген тізбегін бір матрицаға дейін жинақтауға болады, бұл қарапайым және тиімді өңдеуді қамтамасыз етеді. Керісінше, Декарт координаттарында трансляциялар мен перспективалық проекцияны матрицалық көбейту арқылы көрсету мүмкін емес, бірақ басқа операцияларды көрсетуге болады. Қазіргі OpenGL және Direct3D графикалық карталары 4 элементтік регистрлері бар векторлық процессорларды пайдалана отырып, vertex shader-ді тиімді жүзеге асыру үшін гомогенді координаттарды пайдаланады. Мысалы, перспективалық проекцияда кеңістіктегі нүкте проекция орталығы деп аталатын белгілі бір нүктеге бағытталған түзумен байланыстырылады. Содан кейін нүкте сол жазықтық пен түзудің қиылысу нүктесін тауып, жазықтыққа проекцияланады. Бұл үш өлшемді нысанның көзге қалай көрінетінін дәл бейнелейді. Ең қарапайым жағдайда проекция орталығы координаталардың бастапқы нүктесі болып табылады және нүктелер 1=z = 1 жазықтығына проекцияланады, бұл сәтте Декарт координаттары қолданылады. Ғарыштағы (x, y, z) нүктесі үшін түзу мен жазықтықтың қиылысу нүктесі (x/z, y/z, 1) болады. Енді қажетсіз z координатын жойып, (x/z, y/z) аламыз. Гомогенді координаттарда (x, y, z) нүктесі (xw, yw, zw, w) арқылы көрсетіледі, ал жазықтықтағы проекцияланған нүкте (xw, yw, zw) арқылы көрсетіледі, сондықтан проекцияны матрица түрінде бейнелеуге болады. Басқа геометриялық түрлендірулерді бейнелейтін матрицаларды осы матрицамен және бір-бірімен матрицалық көбейту арқылы біріктіруге болады. Нәтижесінде, кеңістіктің кез келген перспективалық проекциясын бір матрица түрінде көрсетуге болады.
Matrices representing other geometric transformations can be combined with this and each other by matrix multiplication. As a result, any perspective projection of space can be represented as a single matrix.