<<

#286 ; Azena ponto nin fine konduku ĝis bona 3D-geometrio

>>

Ekzistas ebleco eĉ en malgranda arbara mirtelo. Malgrandaj multe signifas. Eĉ eta libelo estas bela. Malgranda povas kreski. Ekzistas bona ebleco en eĉ eteta. Malgranda povas sukcesi. El dika grasa larvo povas ion tagon kreski bela insekto. Ni amu malgrandecon.

Nia mikronacio Mueleja Insulo estas certe bela sed provizore nur eta, tamen oni ja ne scias pri futuro. Eventuale ni estontece estus tre signifaj?

La vera celo de ĉi tiu artikolo estas rakonti pri 3D-geometrio, sed ni uzu konvenan "ponton de azeno" por akiri la veran temon. Ĉi tion iom malestiman esprimon oni uzas - almenaŭ en la finna lingvo - por indiki ke oni saltas iom artefarite (kvazaŭ trans ia vorta "ponto") el unu afero al tute alia.

Mi tamen ne estas ia azeno, mi estas honesta inĝeniero. Temas pri fotoj kaj tekniko. La tuta rakonto kredeble estos longa. Espereble la fotoj konvene nin kondukos al la temo.

Vere mi volus almenaŭ komenci por paroli pri la temo kiu nomiĝas angle Epipolar geometry kaj Stereopsis. Tre centraj temoj por la 3D-fotilo. Ni tamen devas unue progresi malrapide.

Oni povus deziri ke la ambaŭ fotiloj de 3D-fotilo estus similaj kaj tute samdirektaj. En praktiko tia supozo tamen estas tro optimisma. Ĝenerale oni ne povas realisme supozi ke la du fotiloj estus tute samdirektaj. Eĉ tre malgranda eraro en direkto inter du fotiloj jam havus signifon. Tion mi volas pruvi dum ĉi tiu artikolo.

Ni progresu multe pli malrapide ol la iom timemaj, hastaj kaj tre rapidaj junaj akvbirdoj en la suba foto. Iliaj akvbirdaj gepatroj aperas multe pli trankvilaj. Kiel oni trafe diras : Juneco kaj frenezeco, maljuneco kaj prudenteco! Estas tamen bone se la idoj diligente sin ekzercas kaj jam frue lernas por flugi. Kelkaj el la maldiligentaj idoj nur naĝis malrapide ekster la foto.

Fotoj estas gravaj. Estas ankaŭ bone se oni kapablas bone desegni. Mi certe volas lerni desegni pli bone. En ĉi tiu artikolo mi povos iom ekzerci la bonan arton de desegnado, certe nur por klarbildigi teknike gravaj vidpunktoj. Iaj altaj artistaj ambicioj mi tute ne havas. Dokumenti kaj klarbildigi estas bone, sed artistadi estas nur vane.

Mi ja multe fotas mane per pretaj fotiloj. La pli teknika celo de fotado tamen temas pri ia aŭtomatigo de fotado per fotiloj kiojn mi mem konstruis. La celoj por aŭtomata fotado certe devas esti multe pli simplaj kaj facilaj ol tiuj celoj kiujn mi mem fotis mane en naturo.

Simpla aŭtomata fotilo ne kapablas sukcese ĉasi abeloj kaj burdoj sur belaj floroj en kampoj kaj arbaroj same kiel mi mem.

La celo por aŭtomata fotado devas esti stabila, senmova. La simpla 3D-fotilo ne permesas ke la celo movus. Estas nome ioma prokrasto inter la du fotoj. La aŭtomata fotilo ne trovas mem siajn celojn, sed uzas tion celon kion ni proponas.

Fotoj estas la vera celo de agado. Ni volas ekzemple determini la distancon de io objekto el du fotoj. Unue ni tamen iom pritraktu kelkaj bazaj fotilaj aferoj.

Kiel praktika ekzemplo ni povus uzi la iom malnovan fotilon vario 1.3 de Raspberry Pi (mallongigo RPi) karta mikrokomputilo.

Unu pixel aŭ rastrunuo de tio fotilo estas kvadrata kaj en grando 1,4 μm x 1,4 μm (fakte jam relative granda nuntempe).

La fokusa distanco de objektivo estas f = 3,6 mm kaj aperturo f/2,9. Eble vi volus vidi pri tio la malnovan artikolon #236.

Klare ni povus foti objektoj kaj proksimaj kaj distancaj, kaj malgrandaj kaj grandaj. Malgrandajn objektojn ni kredeble fotu el relative malgranda distanco kaj la grandaj fotitaj objektoj kredeble estas iom pli distancaj. Por niaj intencoj la distanco de celo estu relative kurta, ekzemple 2 metroj = 2000 milimetroj.

Greka teatro apud la lageto certe estas pli granda ol la objektoj kiujn mi nun pensas por fotado. Mi ankoraŭ tute ne uzis la 3D-fotilon eksterdome.

Nu, espereble ni jam vidis sufiĉe da al temo enkondukaj fotoj de naturo. Nun ni saltu al fotila tekniko trans la tre fortika fotila ponto de azeno. Unue ni pritraktu la geometrian principon kiel la fotilo formas la foton de objekto.

La sensilo de fotilo ja enhavas multe da ( pixel ) rastrunuoj, en la kazo de RPi- fotilo vario 1.3 ekzistas 2592 x 1944 da ili. Rastrunuo estas la plej malgranda parto kiu povas sensi lumon. Do la grando de rastrunuo determinas la plej bonan eblan diferencan kapablon de fotila sensilo, relative al la fokusa distanco.

Kiom granda estas la angulo de unu rastrunuo de fotilo? En nia selektita kazo estas la fokusa distanco de objektivo f = 3,6 mm = 3600 μm kaj la grando de unu rastrunuo estas 1,4 μm. Do la fokusa distanco estas proksimume 2571 fojoj la mezuro de rastrunuo. La angulo estas simple proksimume arctan(1,4 / 3600) = 0,0223° kio certe estas iom malgranda angulo, nur 1,3 minutoj (de arko) de angulo, proksimume la sama kiel la plej bona distinga kapablo de nura homa okulo.

Mi ja jam selektis la distancon de ekzempla relative proksima hejma celo, 2 metroj = 2000 mm. Kiom estas korelativa mezuro de unu rastrunuo je tio distanco? La simpla rezulto 1,4*10-6 m * 2000 / 3,6 = 0,78*10-3 m = 0,78 milimetroj. Ĉu vi kredas ke eblus por mi celumi la du fotilojn tiel bone samdirektaj ke estus eraro de ekzemple malpli ol 0,4 mm (duono de kalkulita mezuro 0,78 mm) inter la direktoj de optikaj aksoj de fotiloj je distanco de 2 metroj? Mi ne kredas.

Ŝajnas jam klare ke oni ne povas bazigi la 3D-fotilon al la revo pri du tute samdirektaj fotiloj, eĉ se la rastrunuoj estas relative grandaj kaj la du fotiloj samaj. Pro diversaj kialoj la fotiloj povas esti iom aliaj. Nun ni tamen faru tion fiagon en sekvanta ekzemplo. Sed unue ni pritraktu la geometrion kiel la fotilo formas la foton kaj kiel oni povas mezuri anguloj el fotoj.

Mi desegnas tre simplan fotilan sensilon. Nia modesta rektangula sensilo estas nur 16*12 rastrunuoj, 12 vicoj kaj 16 kolonoj da lumsentemaj "punktoj", fakte malgrandaj areoj. Ni imagu ke la rastrunuoj estus kvadrataj. Ruĝa linio tra la centro de sensilo kaj la optika centro de objektivo formas la optikan akson de fotilo.

Ni fotas la dekstran bluan strekon. Se la streko estas rekta, ĝi principe formas bildon de rekta linio sur la maldekstra sensilo. Ni tamen memoru ke ene en unu rastrunuo de sensilo ne ekzistas ia distinga kapablo. Fakte la limoj de bildo de streko do estus laŭ la limoj de rastunuoj de sensilo.

En la alia desegnaĵo maldekstre mi provis bildigi kia la vera foto de objekto sur la sensilo eble estus. Ĝi ne estas bela rekta streko kiam ni memoras ke unu rastrunuo de sensilo povas havi nur unu saman koloron kaj rastrunuoj estas rektangulaj.

Ĝenerale oni volas ke la rastrunuoj de sensilo estu tiel magrandaj (koncerne la fokusan distancon de objektivo) ke oni povas praktike ignori la ioman grajnecon de foto kion ili kaŭzas. Ĝenerale oni tute ne povas vidi la unuopajn rastrunuojn en la foto. Ni tamen ne povas ignori la rastrunuojn. Ni nome mezuras la foton per rastrunuoj.

La direktoj ja estos aliaj sur la sensilo kompare al la objekto. Dekstra flanko de objekto estos maldekstre sur la sensilo. Supra parto de objekto estos sur la sensilo suba. Tial oni ĝenerale ne volas desegni la veran sensilon sur la alia flanko de optika centro, sed desegnas nur tion parton kio estas en la sama flanko de optika centro.

Oni imagas ke estas ia rektangula ebeno, korelativa al la vera sensilo (same distanca el optika centro) kaj perpendikla al la optika akso, sed en la sama flanko de optika centro de objektivo kiel la fotita objekto. Tial estas la direktoj samaj sur tio imaginita ebeno kaj la fotita objekto. Ni ankaŭ uzu tion pli praktikan, kvankam nur fiktivan modelon.

En la apuda dekstra desegnaĵo ni jam uzas nian novan fiktivan modelon, kie la vera sensilo estus ekster la desegnaĵo nevidebla maldekstre de optika centro. Ni anstataŭigis la veran sensilon per la imaginita ebeno kio estas en la direkto de fotita objekto tiel ke la direktoj estas oportune la samaj en la objekto kaj la imaginita ebeno de rastrunuoj.

Ni nun imagas ke la fotita objekto kuŝas sur la optika akso de fotilo, pro simpleco. La grava demando nun estas: kiel oni mezuru la lokojn de finoj de objekto sur la foto?

La bildo de objekto aperas blua linio sur la ebeno. Ni povas mezuri la horizontajn distancojn el centro laŭ la imaginita ebeno, oranĝaj linioj. Ni povas ankaŭ mezuri la vertikalajn distancojn, brunaj linioj. La mezurunuo nature estas unu rastrunuo. Pli bona precizeco ne eblas. Rastrunuo ja estas la plej malgranda mezuro kion ni povas mezuri sur la foto.

Do ni povas proksimume mezuri ke la bildo de dekstra fino de objekto aperas 5 rastrunuoj dekstre el centro kaj 2 rastrunuoj super la centro. La bildo de maldekstra fino de objekto aperas 6 rastrunuoj maldekstre el centro kaj 4 rastrunuoj pli sube.

Estas malfacile por diri pli precize ĉar la centro estas fakte inter rastrunuoj. La centro ne estas ene en io rastrunuo, ĉar la kvantoj de rastrunuoj estas paraj (16*12). Inter para kvanto de unuoj ne ekzistas nur unu centra unuo. Fakte la objekto ne estis precize en la optika akso. Ĝenerale precizeco de unu rastrunuo estas malfacila por atingi.

La distancon al objekto ni ja ne povas mezuri per nur unu fotilo. Ni bezonas almenaŭ du fotiloj. Kaj nun ni provizore imagu ke la du fotiloj de 3D-fotilo estas tute samdirektaj. Jen simpla grafika ekzemplo pri la principo de mezurado de distanco per du fotiloj. Mi desegnas la ebenon de du fotiloj nur kiel unu ebeno kvankam estas du samdirektaj ebenoj.

Ambaŭ fotiloj fotas al sama direkto kaj ili do fotas proksimume la samajn objektojn. Ni tamen selektas nur unu objekton el la du fotoj. Ni certe bezonas bonan metodon por trovi la saman objekton en du fotoj. Kredeble ne temas nur pri unu rastrunuo en la fotoj, sed pri ioma aro da apudaj rastrunuoj, kelkaj rastrunuoj apud aliaj. La aro tamen havas centran punkton. Ni pensu pri la centra punkto kiel nia objekto.

Ni povas mezuri la koordinatojn de bildoj de objekto en la fotoj el la centroj de fotoj sur la ebeno. Notu la du malgrandaj ruĝaj cirkloj sur la imaginita ebeno, relative al la krucaĵo kun optika akso, la centro de imaginita ebeno por ĉiu fotilo.

Ni scias la distancon inter la fotiloj kaj la fokusan distancon. La fokusa distanco estas la distanco inter la imaginita ebeno kaj la optika centro de fotilo.

Eblas solvi la triangulon inter fotiloj kaj objekto kiam ni scias la 3D-koordinatojn de fotilaj centroj kaj la 3D-koordinatojn de niaj "ruĝaj cirkloj" sur la imaginita ebeno. La rektaj linioj el fotilaj centroj tra la "ruĝaj cirkloj" interrenkontas, principe tranĉas en la 3D-koordinatoj de objekto. Oni tamen ne atendu perfektan unuiĝon de linioj, praktike oni nur serĉu pri la plej malgranda distanco inter la du linioj. En praktika kalkulado perfekta unuiĝo estus tre neverŝajna.

Tiel ni povas trovi la distancon el fotiloj al objekto. Ĉi tio simpla metodo tamen ne estas perfekta ĉar ni supozas ke la optikaj aksoj de fotiloj estas tute samdirektaj. Se la objekto estas iom distanca, relative al la distanco inter fotiloj, povas la rezulto esti ne tre bona. Ni memoru ke la distanco inter fotiloj estas ekzemple 7 centimetroj, same kiel la mezuro inter miaj propraj okuloj, nur 0,07 metroj kaj la objekto por fotado povas esti multe pli distanca, multaj metroj. Do la angulo ĉe objekto estas malgranda kaj la sistemo estas relative sentema por eraroj en direktado de fotiloj.

Do provizore la rezulto de 3D-geometrio ne estas tre bona. Ni bezonas pli bonan metodon kio ne supozas perfektan samdirektecon de optikaj aksoj inter 2 fotiloj.

Nia pado ankoraŭ ne estas finita. Ni devas pli malfrue returni al la temo de geometrio de 3D-fotilo. Kaj certe ni devas multe batali.

Kaj certe fine .......... NI VENKOS!

La Ambasadoro en Pori
de sendependa nacio
Mueleja Insulo


Menuo
Ĉefa paĝo (finna lingvo)