Sadržaj:
- Korak 1: Procijenite složenost zadatka
- Korak 2: Pronađite odgovarajući pristup
- Korak 3: Izračunajte Theta histogram
- Korak 4: Izračunajte Rho histogram
- Korak 5: Pronađite središnji čvor
- Korak 6: Odaberite jednu od 2 alternative
- Korak 7: Odredite vanjske kutove
- Korak 8: Isprobajte u praksi
Video: 3D rekonstrukcija s jedne fotografije: 8 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
Zadatak 3D rekonstrukcije obično je povezan s binokularnim vidom. Alternativno, možete pomaknuti jednu kameru oko objekta. U međuvremenu, ako je oblik objekta poznat, zadatak se može riješiti iz jedne fotografije. To znači da imate samo jednu kameru i da se ne pomiče. Pogledajmo kako to učiniti korak po korak. Koristit ćemo Rubikovu kocku jer je dobro standardizirana i ima bogat skup značajki. Može se smatrati vrlo jednostavnim objektom i istodobno kompliciranom konstrukcijom. Dakle, strojni vid mora nadići značajne prepreke kako bi dovršio zadatak.
Korak 1: Procijenite složenost zadatka
Na prvi pogled, zadatak je jednostavan. Pronađite središnji čvor gdje se 3 ruba kocke spajaju i nacrtajte te rubove. Iz njihovih koordinata moguće je izračunati udaljenost od kamere i kutove rotacije. Problem je u tome što ove linije ne postoje. Sa lijeve slike vidite da je svaki rub predstavljen s 2 paralelne crte. Nadalje, gornja desna slika pokazuje da je svaki od njih podijeljen u 3 segmenta. Štoviše, primijenimo li varijantu popularne Houghove transformacije koja može otkriti segmente linija, ona izvršava zadatak s nekim pogreškama koje onemogućuju otkrivanje središnjeg čvora. Ako krajevi ne dopiru jedan do drugog, nema jedinstvene točke. Ako otkrivanje prekorači kraj, izgledat će poput čvora na sredini ruba kao što vidite na 2 preostale slike.
Korak 2: Pronađite odgovarajući pristup
Kada previše detalja čini determinističke algoritme nesposobnima za rad, vrijeme je da razmislite o vjerojatnom pristupu. Ako izračunamo prosječne parametre slike, njihove će se pogreške značajno smanjiti i paradoksalno će se metoda pokazati pouzdanijom. Standardna transformacija Hough ne ispisuje segmente linije. Samo njegov nagib theta i udaljenost rho od koordinatnog ishodišta. Oni tvore prostor Hough čiji je dio prikazan gore. Ovdje teta odgovara vodoravnoj osi. Svijetle mrlje označavaju moguće crte na slici. Imajte na umu da se nekoliko takvih mjesta nalazi jedno iznad drugog. Nije ni čudo, na našoj slici postoji mnogo paralelnih linija. Imaju istu tetu i različit rho.
Korak 3: Izračunajte Theta histogram
Otkrijmo takve grozdove. U tu ćemo svrhu sažeti očitanja za sve točke u prostoru Hough s istom tetom. Na ilustraciji vidite odgovarajući histogram. Nekoliko napomena o mjerenjima. Kada radite sa slikama u koordinatama piksela, os X ide kao i obično, ali Y pokazuje prema dolje, tako da je ishodište koordinate gornji lijevi kut i theta se treba mjeriti od osi X u smjeru kazaljke na satu. Imajući na umu da je cijeli zaokret tete na slici 180 stupnjeva, možete otprilike provjeriti da 3 velika vrha predstavljaju 3 dominantna nagiba na slici.
Korak 4: Izračunajte Rho histogram
Sada kada znamo 3 glavne skupine paralelnih linija, odvojimo linije unutar svake od njih. Isti pristup možemo ponoviti. Uzmimo stupac iz prostora Hough koji odgovara jednom vrhu na theta histogramu. Zatim ćemo izračunati drugi histogram gdje X os predstavlja rho vrijednost, a Y - sažeta očitanja za ovaj rho. Očito će zbroj biti manji pa ovaj grafikon nije tako gladak. Ipak, vrhovi su jasno vidljivi i njihov broj (7) točno odgovara broju paralelnih linija na izvornoj slici. Nažalost, nisu svi grafikoni tako savršeni, ali princip je jasan.
Korak 5: Pronađite središnji čvor
Uzmemo li središnji vrh na rho histogramu za svaku tetu, dobit ćemo 3 crte koje su na slici crvene. Njihovo sjecište označava potrebnu točku.
Korak 6: Odaberite jednu od 2 alternative
Vidite da svaka linija ide od središnje točke u oba smjera. Kako odrediti ispravnu polovicu? Uzmimo theta3. Pretpostavimo da uzmemo donji dio ove crte. Izračunajmo još jedan Hough prostor samo za dio slike od 2 zelene linije do gornjeg desnog kuta slike. Zatim za to izradite theta histogram. Vidite da je treći vrh potpuno nestao pa smo napravili pravi izbor.
Korak 7: Odredite vanjske kutove
Sada možemo koristiti prvi i posljednji vrh na rho histogramima kako bismo nacrtali plave crte koje presijecaju crvene rubove i označavaju ostale uglove. Zadatak je riješen.
Korak 8: Isprobajte u praksi
Ilustracije za ovaj Instructable nastale su pomoću Perception 1.0. Ovo je besplatni softver koji koristi OpenCV - moćnu biblioteku za računalni vid. Također se može povezati s WinNB -om koji se koristio u mom drugom Instructable -u, čime je omogućen vid za robotiku. Oba programa možete preuzeti sa nbsite. Za instalaciju samo pokrenite preuzetu exe datoteku. Kasnije ga možete ukloniti pomoću standardnog alata u sustavu Windows. Stranica također sadrži izvore o računalnom vidu i srodnim temama. U Perceptionu ćete pronaći opisanu metodu 3D rekonstrukcije, kao i mnoge druge. Prednost ovog programa je u tome što daje konačni rezultat zajedno s posrednim podacima. Vi ste u mogućnosti istražiti kako funkcionira računalni vid, a da niste programer. Što se tiče unosa, svaka metoda ima posebno odabrane tipične uzorke. Naravno, možete koristiti i vlastiti. Moguće je unositi slike iz datoteke ili iz kamere računala. Slobodno me kontaktirajte s bilo kakvim pitanjima ili prijedlozima.
Preporučeni:
Napravite sam senzor temperature pomoću jedne diode: 3 koraka
DIY temperaturni osjetnik pomoću jedne diode: Dakle, kao što je jedna od činjenica o PN-spojevima to što se njihov pad napona prema naprijed mijenja ovisno o prolaznoj struji, a također i prema temperaturi spoja, upotrijebit ćemo ovo za izradu jednostavnog jeftinog osjetnika temperature .Ova se postavka obično koristi
Pomicanje jedne LCD linije: 4 koraka (sa slikama)
Pomicanje jedne LCD linije: Knjižnica s tekućim kristalima ima dvije korisne funkcije scrollDisplayLeft () i scrollDisplayRight (). Ove funkcije pomiču cijeli zaslon. Odnosno, pomiču obje linije na LCD -u 1602 i sve četiri linije na LCD -u iz 2004. godine. Ono što nam često treba je abi
Rekonstrukcija USB zvučnika na 3,5 mm: 4 koraka
Reinženjering USB zvučnika na 3,5 mm: Prošle godine to sam učinio jer su mi trebali zvučnici za projekt koji se sastojao od NES Clone. Na kraju je uspjelo i mislio sam da bi bilo dobro napraviti Instructable za jer to nije veliki zadatak koji treba preuzeti i gradi se na znanju. Imati na umu
Rotirajući stalak za fotografije od 360 ° za fotografije / videografiju: 21 korak (sa slikama)
DIY 360 'rotirajući stalak za fotografiju / videografiju: Naučite kako izraditi DIY 360 rotirajući stalak za prikaz od kartona kod kuće koji ima jednostavne znanstvene projekte za djecu s USB napajanjem koji se također mogu koristiti za fotografiranje proizvoda i 360 video pregled tog proizvoda za objavljivanje na vašim web stranicama ili čak na Amazu
Jednostavni kombinirani okvir za fotografije Domo Plushie za fotografije: 9 koraka (sa slikama)
Jednostavna kombinacija DIY okvira za fotografije Domo Plushie: U nekoliko jednostavnih koraka pretvorite mali Domo pliš u okvir za fotografije, koristeći nekoliko uobičajenih vještina izrade. Nije potrebno šivanje ili elektronika. Od ljudi na http://www.GomiStyle.com