[Talk-cz] Tracer na rozpoznání budov z katastr. map

Jan Bilak jan.bilak.osm na gmail.com
Úterý Únor 2 15:32:42 UTC 2010


Ahoj,

jj, ohledně spojování ... máme na to stejný názor. Ohledně zhoršení
výsledku trasování kvůli detekci tloušťky čáry ... něco na tom bude,
také se mi to nelíbí. Zkusím nastínit zjednodušeně algoritmus, jak to
funguje (tedy jak jsem zamýšlel, třeba je tam chyba):
a) napřed se floodfillem vyplní souvislá plocha, na kterou uživatel kliknul
b) najde se vnější hranice - množina bodů
c) najdou se tam významné/zlomové body
d) zjednoduší se a naopak doplní chybějící body (sada různých postupů)

A tady vylezl myslím celkem dobrý výsledek, ale na vnitřní straně čáry.

A nyní nově ... pro každou úsečku polygonu se vynese kolmice v 1/10,
2/10, ..., 9/10 a najde tloušťka čáry na obě strany v místě kolmice.
Vezme se ta nejmenší tloušťka a podle toho se čára posune. Body se tam
nepřidávají, jen posouvají. Proč nejmenší? Protože na mapě typicky je
nějaká čára navíc, která zvětšuje tloušťku čáry. Ale většinou v žádném
místě kus čáry nechybí. Možná ale lepší bude medián nebo dolní
kvartil. K ladění je tam i řada konstant. Zvláště u krátkých úseků je
detekce tloušťky čáry celkem problematická.

Jak na to lépe? Nějaké nápady?

Mohu tam mít nějakou chybu, mohu zkusit nějaké průměrování, mohu
zkusit tloušťku čáry u krátkých čar odvozovat od těch delších...
Nějaké prokládání přímky body moc nepadá v úvahu, protože těžko
poznat, které body patří právě dané čáře - na vnější stranu čáry
navazují další čáry. Moc jsem se tím zatím nezabýval, protože jsem si
"hrál" s tím pluginem. Škoda, že čára po celé obvodu nemá v mnoha
případech stejnou tloušťku - bylo by to značně jednodušší.

Zdrojáky:
http://jabi.aspone.cz/osm/TracerPluginBeta2-src.zip
http://jabi.aspone.cz/osm/TracerServerBeta2-src.zip

Zdrojáky toho pluginu jsou dost hrozné ... a potřebují větší
refaktorizaci. U toho serveru je to lepší, ale také by to řadu úprav
potřebovalo (včetně rozdělení do metod apod.). Takže to berte jako
předzveřejnění pro silné povahy :)

Honza


2010/2/2 Petr Dlouhý <petr.dlouhy na email.cz>:
> Ahoj,
>
> díky za 2. betu, mám k ní pár poznámek:
>
> Už je to výrazně použitelnější, ale stále to má poměrně významné nedostatky:
>
> Spojování budov opravdu spojuje i s nesouvisejícími objekty (typicky adresní body), jak jsem se bál (někdy naopak zase nespojuje sousedící domy). Já vidím dvě možná řešení tohoto problému:
> Buď stávající funkcionalitu ještě vylepšit - přidat možnost vypnutí (zapnutí) spojování při zmáčknuté klávese Ctrl, a omezení spojování pouze na domy.
> Druhá možnost je udělat nástroj, který spojí vybrané objekty.
>
> První možnost má výhodu, že spojování probíhá automaticky; druhá možnost je zase univerzálnější a mohla by být časem přidána přímo do JOSM.
>
> Taky mi přijde, že se po přidání trasování na střed čáry trochu zhoršil výsledek (občas se tam přidají zbytečné body, nebo se v rozích udělají nesmysly). Trasování navíc často neumisťuje body na středy čar. Taky jsem zkoušel trasovat již dříve zakreslený kostel sv. Antonína (http://osm.org/go/0J0wCrtWh--), a moc dobře to nedopadlo - asi je na tak složitý objekt zjednodušení přílišné.
>
> Další problém je, že stále nefunguje správně přepínání nástrojů. Občas se mi také stane, že se dokončí trasování, ale výsledek se už neobjeví. Několikrát se mi stalo, že se nějaká z okolních ulic prodloužila na jeden z bodů nově trasovaného domu.
>
>> ------------ Původní zpráva ------------
>> Od: Jan Bilak <jan.bilak.osm na gmail.com>
>> Předmět: Re: [Talk-cz] Tracer na rozpoznání budov z katastr. map
>> Datum: 02.2.2010 02:59:12
>> ----------------------------------------
>> Ahoj,
>>
>> ke slučování ...  můžeš zkusit betu 2:
>> http://jabi.aspone.cz/osm/TraceServerBeta2.zip
>> (nejsou tam asi optimálně nastavené konstanty ... jak vzdálené body
>> ještě napojovat apod.)
>>
>>
>> Možná se to heslo v opensource prosazuje, ale já si nemyslím, že je
>> dobré commitovat neupravený kód (i v samotném JOSM chybí na řadě míst
>> alespoň základní komentáře apod. ... což dost znesnadňuje práci s
>> ním). A druhá věc je, že plugin + trasovací server je poměrně
>> specificky dělaný na české katastrální mapy. Pravděpodobně by z toho
>> něco šlo použít i na pro trasování jiných obdobných map, ale není to
>> navržené jako univerzální věc. A tak očekávám zájem o dodělání tohoto
>> pouze ze strany českých vývojářů ... tedy této komunity a nikdo zde
>> ani nenaznačil, že by měl o zdrojáky osobní zájem, že by uvažoval nad
>> spoluprácí. Naplsal jsem si o přístup na SVN, tak uvidím...
>>
>> Honza
>>
>>
>> 2010/2/1 Petr Dlouhý <petr.dlouhy na email.cz>:
>> > V opensource se prosazuje heslo "Commit Early, Commit Often". Já bych se
>> > snažil dodržet pouze základní formální požadavky (moc jich není) a co
>> > nejdříve to nahrál.
>> > Pokud vím, tak navíc příliš formálních požadavků na pluginy neexistuje,
>> > něco je možné najít na [1]; licenci by asi bylo dobré uvést, ale ostatní
>> > věci můžeš ty nebo někdo jiný dodělat časem. Komentování nebo čištění kódu
>> > taky můžeš udělat časem.
>> > Získat přístup, pokud vím, není příliš těžké - já jsem napsal na Tom
>> > Hughes <tom na compton.nu>.
>> >
>> > Nevím, jakým způsobem to děláš, ale nejsem si jist, jestli nemůže být
>> > slučování bodů a hran trochu na obtíž (aby se neslučovalo i to, co by
>> > nemělo). Já osobně bych si to spíš představoval jako nástroj - uživatel
>> > vybere jednotlivé objekty a nechá je spojit. Možná ale tvoje verze funguje
>> > dobře, neměl jsem ji možnost vyzkoušet.
>> >
>> > [1]
>> > http://svn.openstreetmap.org/applications/editors/josm/plugins/00_README
>> >
>> > On Mon, 01 Feb 2010 04:28:58 +0100, Jan Bilak <jan.bilak.osm na gmail.com>
>> > wrote:
>> >
>> >> Na commitnutí do ofic. SVN by to potřebovalo:
>> >> a) formálně doladit (po stránkách struktury adresářů, build skriptů,
>> >> informace o licenci, ...)
>> >> b) získat přístup do SVN
>> >> c) zpřehlednit ... okomentovat, trochu refaktorizovat, ...
>> >> Přičemž c) mám určitě v plánu. O b) jsem se nezajímal, takže nevím,
>> >> jak to chodí. A do a) se mi moc nechce (studovat, jak to má být).
>> >
>> >
>> > --
>> > Petr Dlouhý
>> >
>> > _______________________________________________
>> > Talk-cz mailing list
>> > Talk-cz na openstreetmap.org
>> > http://lists.openstreetmap.org/listinfo/talk-cz
>> >
>>
>> _______________________________________________
>> Talk-cz mailing list
>> Talk-cz na openstreetmap.org
>> http://lists.openstreetmap.org/listinfo/talk-cz
>>
>>
>>
>
> Petr Dlouhý
> petr.dlouhy na email.cz
>
> _______________________________________________
> Talk-cz mailing list
> Talk-cz na openstreetmap.org
> http://lists.openstreetmap.org/listinfo/talk-cz
>




Další informace o konferenci talk-cz