Калибриране на камерата
Съдържание
Опции на модела на камерата
Като правило колонен вектор от формата [u\,v\,1]^\top се използва за представяне на 2D координатите на точка в равнината, а [x_w\, y_w\, z_w\,1]^\top се използва за указване на позицията на 3D точка в световните координати. Трябва да се отбележи, че тези изрази са записани в разширената нотация на хомогенни координати, която е най-често срещаната в роботиката и проблемите на трансформацията на твърди тела. По-специално, в модела камера обскура, матрицата на камерата се използва за проектиране на точки от триизмерното пространство върху равнината на изображението:
u\\ v\\ 1\end=A \begin R & T\end\begin x_\\ y_\\ z_\\ 1\end където Zc е произволен мащабен фактор
Вътрешни опции за калибриране
\alpha_ & \gamma & u_\\ 0 & \alpha_ & v_\\ 0 & 0 & 1\край
Вътрешната матрица за калибриране A съдържа 5 значими параметъра. Тези параметри съответстват на фокусното разстояние, ъгъла на наклон на пиксела и основната точка (точката на пресичане на равнината на изображението с оптичната ос, която съвпада с центъра на снимката. В реалните камери, като правило, тя е леко изместена поради оптични изкривявания). По-специално, \alpha_ и \alpha_ съответстват на фокусното разстояние, измерено в ширина и височина на пиксела, u_ и v_ съответстват на координатите на основната точка и \gamma = *\tan \varphi , където \varphi е ъгълът на наклон на пиксела [2] . Нелинейните параметри на вътрешното калибриране, като коефициентите на изкривяване, също са важни, въпреки че не могат да бъдат включени в линейния модел, описан от вътрешната матрица за калибриране. Повечето съвременни алгоритми за калибриране на камерата ги определят заедно с параметрите на линейната част на модела. Вътрешните параметри за калибриране са специфични само за камерата, а не за сцената, така че тесе променят само когато се променят съответните настройки на камерата.
Опции за външно калибриране
\textbf R,T (където \textbf R е вектор 1 × 3 или ротационна матрица 3 × 3, \textbf T е транслационен вектор 3 × 1) — параметри навъншно калибриране, които дефинират координатната трансформация, която преобразува координатите на точките на сцената от световната координатна система в координатната система, свързана с камерата [2] . Или, еквивалентно на предишната дефиниция, външните параметри за калибриране задават позицията на камерата в световната координатна система. Външните настройки за калибриране са пряко свързани със сниманата сцена, така че (за разлика от вътрешните настройки за калибриране) всяка снимка има свой собствен набор от тези настройки.
Модел на камерата
Когато използвате камерата, светлината от сниманата сцена се фокусира и улавя. Този процес намалява броя на измеренията на данните, получени от камерата, от три на две (светлината от 3D сцена се преобразува в 2D изображение). Следователно всеки пиксел в полученото изображение съответства на лъч светлина в оригиналната сцена. По време на калибрирането на камерата има търсене на съвпадение между триизмерните точки на сцената и пикселите на изображението. В случай на идеална камера обскура, една проекционна матрица е достатъчна, за да зададе такова съответствие. Въпреки това, в случай на по-сложни камери, изкривяването, въведено от лещите, може значително да повлияе на резултата. Така проекционната функция става по-сложна и често се записва като последователност от трансформации, например: x = I \times Dist(E \times X) , където
- X = [x_w\, y_w\, z_w\,1]^\top — координати на началото на сцената;
- x = [u\,v\,1]^\top — пикселни координати на изображението;
- E=\left[ >
\end> \десен] -матрица за външно калибриране (където R е 3 × 3 ротационна матрица, T е 3 × 1 трансферен вектор);
- Dist - функция за прилагане на изкривяване;
- Аз=\започвам
\alpha_ & \gamma & u_\\ 0 & \alpha_ & v_\\ 0 & 0 & 1\end е вътрешната матрица за калибриране.
Алгоритми за калибриране на камерата
Има няколко различни подхода за решаване на проблема с калибрирането.
- Класическият подход е алгоритъмът на Roger Y. Tsai [3] . Състои се от два етапа, първият от които определя параметрите на външното калибриране, а вторият - вътрешното калибриране и изкривяването.
- „Нова гъвкава технология за калибриране на камерата“ [4], която е разработена от Zhengyou Zhang и се основава на използването на плосък обект за калибриране на шахматна дъска.
- Автоматично калибриране - получаване на данни за калибриране директно от изображения, а сцената не изисква наличието на специални обекти за калибриране.
Алгоритъмът за калибриране на една камера, както и алгоритъмът за стерео калибриране, са внедрени в библиотеката OpenCV.
Автоматично калибриране
Основните стъпки на този метод:
- Търсете ключови точки във всички изображения. За тази цел може да се използва например ъглов детектор на Harris.
- Намиране на съвпадения на точки между изображения. За да направите това, можете например да използвате сравнение на SIFT дескрипторите на намерените сингулярни точки. В резултат на това всяко изображение съдържа набор от пиксели, които съответстват на едни и същи триизмерни точки на сцената.
- След това, използвайки алгоритъма за настройка на пакета, въз основа на данните за съответствие на точките, се извършва едновременно търсене както на параметрите на калибриране, така и на 3D координатите на тези специални точки в сцената.
Напишете отзив за статията"Калибриране на камерата"
Бележки
- ↑[graphics.cs.msu.ru/ru/node/898 Безплатен софтуер за премахване на изкривяване]
- ↑12Антон Конушин[cgm.computergraphics.ru/content/view/141 Геометрични свойства на множество изображения] // Компютърна графика и мултимедия (онлайн списание). - 2006. - № 4 (3) .
- ↑[www.cs.cmu.edu/
rgw/TsaiDesc.html Алгоритъм на Роджър Й. Цай]
- [graphics.cs.msu.ru/ru/science/research/calibration/cpp Програма с отворен код за калибриране на камера и коригиране на изкривяването, която прилага метода Zhengyou Zhang]
- [www.vision.caltech.edu/bouguetj/calib_doc/ Инструмент за калибриране на камера, проектиран да работи в MATLAB]
- [robot-develop.org/archives/2026 Калибриране на камера на OpenCV в C++]
Откъс, описващ калибрирането на камерата
- Какво да правя! На кого не се е случвало това? - каза синът с нахален, дързък тон, докато в душата си се смяташе за негодник, негодник, който цял живот не можеше да изкупи престъплението си. Той искаше да целува ръцете на баща си, на колене да го моли за прошка, а той небрежно и дори грубо каза, че това се случва на всеки. Като чу тези думи на сина си, граф Иля Андреич сведе очи и забърза да търси нещо. - Да, да - каза той, - страхувам се, че е трудно да се свържеш ... с никого! да, с кого не се е случвало... - И графът хвърли поглед към лицето на сина си и излезе от стаята... Николай се готвеше да отвърне на удара, но това изобщо не очакваше. - Татко! па ... коноп! — извика той след него, ридаейки; Извинете ме! И като хвана ръката на баща си, той долепи устни до нея и заплака.
Докато бащата се обясняваше със сина си, между майката и дъщеря й се случваше също толкова важно обяснение. Наташа, развълнувана, изтича при майка си. – Мамо!… Мамо!… той ми направи… – Какво направи той? – Направено, направено предложение. Майко! Майко! — изкрещя тя. Графинята не можеше да повярва на ушите си. Денисов направи предложение. На кого? Това мъничко момиченце Наташа, което доскоро играеше с кукли, а сега все още взема уроци. - Наташа, пълни глупости! - каза тя, все още надявайки се, че е шега. – Е, глупости! — На теб говоря — каза ядосано Наташа. - Дойдох да питам какво да правя, а ти ми казваш: "глупости" ... Графинята сви рамене. - Ако е вярно, че мосю Денисов ви е предложил, тогава му кажете, че е глупак, това е всичко. - Не, той не е глупак - каза Наташа обидено и сериозно. – Е, какво искаш? Всички сте влюбени тези дни. Е, влюбен, така че се омъжи за него! — каза графинята, смеейки се сърдито. - С Божията благословия! - Не, майко, не съм влюбена в него, трябва да не съм влюбена в него. – Е, кажи му. – Мамо, ядосана ли си? Не се ядосвай мила, какво съм виновен аз? – Не, какво има, приятелю? Ако искаш, ще отида и ще му кажа - каза графинята, усмихвайки се. – Не, аз самият, просто ме научи. Всичко е лесно за теб - добави тя, отговаряйки на усмивката й. „И ако видяхте как ми каза това!“ В крайна сметка знам, че той не искаше да каже това, но случайно го каза. - Е, все пак трябва да откажем. – Не, не е нужно. Много ми е мъчно за него! Той е толкова сладък. – Е, приемете предложението. И тогава е време да се оженим - каза майката гневно и подигравателно. – Не, мамо, много ми е жал за него. Не знам как ще кажа. „Да, нямате какво да кажете, аз сама ще го кажа“, каза графинята, възмутена от факта, че се осмелиха да гледат на тази малка Наташа като на голяма. - Не, за нищо, аз самият, а вие слушате на вратата - и Наташа изтича през хола в залата, където Денисов седеше на същия стол, на клавикорда, покривайки лицето си с ръце. Той подскочи при звука на леките й стъпки. - Натали - каза той, приближавайки се към нея с бързи стъпки, - решете моята съдба. Тя е във вашите ръце! - Василий Дмитрич, толкова ми е жал за теб! ... Не, но ти си толкова хубав ... но недей ... това ... но винаги ще те обичам така. Денисов се наведе над ръката й и тя чу странни, неразбираеми звуци за нея. Тя го целуна по черната му сплъстена къдрава глава. В този момент се чу забързаният шум от роклята на графинята. Тя се приближи до тях. - Василий Дмитрич, благодаря ви за честта - каза графинята със смутен глас, но който изглеждаше строг за Денисов, - но дъщеря ми е толкова малка и си помислих, че вие, като приятел на сина ми, първо ще се обърнете към мен. В такъв случай не бихте ме поставили в нужда от отказ. - G'affinya, - каза Денисов със сведени очи и виновен поглед, искаше да каже още нещо и се спъна. Наташа не можеше спокойно да го гледа толкова нещастен. Тя започна да ридае силно. „Г-н, аз съм виновен пред вас“, продължи Денисов с прекъснат глас, „но знайте, че аз идолизирам дъщеря ви и цялото ви семейство толкова много, че ще дам два живота ...“ Той погледна графинята и, забелязвайки строгото й лице ... „Е, сбогом, g’affine“, каза той, целуна ръката й и, без да поглежда към Наташа, с бързи, решителни стъпки напусна стаята.
След обяснението си със съпругата си, Пиер отиде в Петербург. На гарата в Торжок нямаше коне или гледачът не ги искаше. Пиер трябваше да чака. Без да се съблича, легна на кожен диван пред кръгмаса, сложи големите си крака в топли ботуши на тази маса и се замисли. - Ще наредиш ли да донесат куфарите? Оправи легло, искаш ли чай? — попита камериерът. Пиер не отговори, защото не чу и не видя нищо. Той беше мислил на последната станция и продължаваше да мисли за едно и също нещо - за толкова важно нещо, че не обръщаше никакво внимание на това, което ставаше около него. Той не само не се интересуваше дали ще пристигне по-късно или по-рано в Петербург и дали ще има или няма да има място за почивка на тази гара, но все пак, в сравнение с мислите, които го занимаваха сега, дали ще прекара няколко часа или целия си живот на тази гара. Пазачът, гледачът, камериерът, жена с шиене на Торжков влезе в стаята, предлагайки услугите си. Пиер, без да променя позицията на повдигнатите си крака, ги гледаше през очилата си и не разбираше от какво може да се нуждаят и как могат всички да живеят, без да решават проблемите, които го занимават. И той беше зает със същите въпроси от същия ден, когато се върна от Соколники след дуела и прекара първата, мъчителна, безсънна нощ; едва сега, в самотата на пътуването, те го овладяха с особена сила. За каквото и да започнеше да мисли, той се връщаше към същите въпроси, които не можеше да разреши и не можеше да спре да си задава. Сякаш главният винт, на който се крепеше целият му живот, се беше завил в главата му. Винтът не влизаше повече, не излизаше, а се въртеше, без да хваща нищо, всичко в същия жлеб и беше невъзможно да спре да го върти. Пазачът влезе и смирено започна да моли негово превъзходителство да изчака само два часа, след което той ще даде куриер за негово превъзходителство (каквото ще бъде, ще бъде). Пазачът очевидно е излъгал и само е искал да получи допълнителни пари от пътника.„Лошо ли беше или добро?“, попита се Пиер. „За мен е добре, за друг минаващ е лошо, но за него е неизбежно, защото няма какво да яде: каза, че един полицай го е пребил за това. И офицерът го прикова, защото трябваше да отиде по-рано. И аз застрелях Долохов, защото се смятах за обиден, а Луи XVI беше екзекутиран, защото беше смятан за престъпник, а година по-късно тези, които го екзекутираха, бяха убити, също за нещо. Какво не е наред? Какво добре? Какво трябва да обичаш, какво да мразиш? Защо живея и какво съм аз? Какво е животът, какво е смъртта? Каква сила управлява всичко?“, запита се той. И нямаше отговор на нито един от тези въпроси, освен един, нелогичен отговор, изобщо не на тези въпроси. Този отговор беше: „Ако умреш, всичко ще свърши. Ще умреш и ще знаеш всичко, или ще спреш да питаш.” Но беше и страшно да умреш.