abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 4
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    26.4. 13:33 | Nová verze

    Vyšlo Pharo 12.0, programovací jazyk a vývojové prostředí s řadou pokročilých vlastností. Krom tradiční nadílky oprav přináší nový systém správy ladících bodů, nový způsob definice tříd, prostor pro objekty, které nemusí procházet GC a mnoho dalšího.

    Pavel Křivánek | Komentářů: 9
    26.4. 04:55 | Zajímavý software

    Microsoft zveřejnil na GitHubu zdrojové kódy MS-DOSu 4.0 pod licencí MIT. Ve stejném repozitáři se nacházejí i před lety zveřejněné zdrojové k kódy MS-DOSu 1.25 a 2.0.

    Ladislav Hagara | Komentářů: 44
    25.4. 17:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 24.04 LTS Noble Numbat. Přehled novinek v poznámkách k vydání a také příspěvcích na blogu: novinky v desktopu a novinky v bezpečnosti. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 10. LTS verzi.

    Ladislav Hagara | Komentářů: 14
    25.4. 14:22 | Komunita

    Na YouTube je k dispozici videozáznam z včerejšího Czech Open Source Policy Forum 2024.

    Ladislav Hagara | Komentářů: 3
    25.4. 13:22 | Nová verze

    Fossil (Wikipedie) byl vydán ve verzi 2.24. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 875 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Vektorizace rastrové grafiky

    30. 4. 2007 | Petr Štefánik | Návody | 19010×

    Jak převést naskenovanou předlohu do vektorového formátu? Jaké nástroje a postupy je možné využít?

    Před časem jsem řešil problém, jak pod Linuxem vektorizovat různou grafiku tak, aby byl výsledný soubor ve formátu DXF. Horko těžko jsem sháněl informace jak na to. Vždy se jednalo pouze o kusé útržky, které však nakonec vedly ke kýženému cíli. Nyní se s vámi podělím o své know-how.

    Úvod

    Většina lidí patrně nepotřebuje příliš často vektorizovat bitmapovou grafiku. Já však pracuji ve firmě, kde poměrně často zákazníci nosí jako podklad pro výrobu pouhé náčrtky nebo vzorky výrobků (někdy dokonce i toto) a na mě je (mimo jiné), abych vše převedl do vektorové grafiky, která je nutná pro další strojní zpracování.

    Předtím, než jsem se začal zajímat o postup pod Linuxem, jsem využíval komerční programy pod Windows a musím říct, že fungují. A to velice dobře. Dokonce vše, co zde budu popisovat, mají integrované do jediné aplikace. Tento postup se však může někomu hodit, protože stejného výsledku zde dosáhneme zadarmo a s využitím svobodných nástrojů. Dále také netvrdím, že by vektorizaci nešlo provádět nějakým jiným způsobem, a že na popisovaný postup přede mnou nepřišel již někdo jiný. Určitě se rád nechám poučit v diskuzi.

    Uvedený postup využívá plně grafické prostředí tak, jak to mají mazlíčkové rádi.

    Co budeme potřebovat?

    Ke zdárné vektorizaci potřebujeme tyto balíky:

    • Xsane - pro scanování (je možno použít i něco jiného).
    • Potrace - umí vektorizovat bitmapovou grafiku, ale nezná formát DXF.
    • Autotrace - umí formát DXF, ale nemá vlastní GUI.
    • Potracegui - abychom se nemuseli zaobírat příkazovou řádkou a také spolupracuje s Autotrace.
    • Qcad - na kontrolu a následnou úpravu DXF výstupu.

    Používám Ubuntu. Veškerý software je dostupný ze standardních repozitářů Ubuntu. Věřím, že není problém nainstalovat je i v jiných distribucích.

    Získání podkladů

    Abych si ušetřil práci, mohl bych vzít libovolný obrázek a rovnou vektorizovat, ale já si řekl ne! Když ukázku, tak pořádnou. Předvedu, jak z tohoto

    vektorizace vzorek

    získat kvalitní a věrnou vektorovou konturu.

    Vzhledem k tomu, že jenom tak ve scanneru takovou věc nepřiklopím, pomůžu si tím, že jednoho soba, kterého chci naskenovat, zakryji čistým papírem.

    Vypadá to pak takto:

    vektorizace scan1

    Zdá se to snadné, ale záhy zjistíte, že toto řešení stále není optimální. Problém je v tom, že skenovaný materiál není tenký a hloubka materiálu způsobuje vznik stínů kolem kontury skenovaného objektu.

    vektorizace sob-stin

    Nejenom, že se nám vytratí přesná kontura objektu, ale také se mohou některé menší otvory úplně ztratit (například oko soba). Na potlačení tohoto nežádoucího efektu používám fintu. Jednoduše nasvítím krycí papír obyčejnou lampičkou. Tím zmizí veškeré nežádoucí stíny.

    vektorizace lampicky

    A výsledek pak vypadá takto:

    vektorizace sob-clear

    Jak jsem již poznamenal výše, tak ke skenování používám vcelku slušně nastavitelný software Xsane. Pro vektorizaci kontur objektů nám stačí obrázek ve stupních šedi. Lze to provést i barevně, ale většinou to moc k užitku není. Aby byl výsledek dostatečně přesný, osvědčilo se mi nastavení na 300 DPI. Víc většinou není třeba, snad jen v případě malých objektů. Dále si pohrajeme s kontrastem, světlostí a gamou, abychom dostali obrázek pokud možno s co největším kontrastem. Tím se zbavíme nežádoucích čar ve výsledném DXF.

    vektorizace xsane

    Vektorizace

    Nyní máme obrázek, který chceme převést na křivky, uložený. Spustíme potracegui.

    vektorizace potracegui

    V potracegui si otevřeme obrázek, který chceme vektorizovat. Objeví se nám v podokně náhledu. Protože Potracegui je jako frontend primárně určen pro potrace, a protože potrace neumí ukládat do formátu DXF, musíme si přepnout Backend na autotrace. Dále si zvolíme jako výstupní formát (output format) DXF (popřípadě jiný).

    Nyní si můžeme pohrát s nastavením samotné vektorizace. Pro mé účely ale bohatě stačí výchozí nastavení. Nechám na každém, aby si zjistil, co mu nejlépe vyhovuje.

    Nyní, když je vše připraveno, se můžeme pustit do samotné vektorizace stisknutím tlačítka Trace.

    Vektorizace proběhne poměrně rychle v závislosti na složitosti vektorizovaného obrázku. Zde se vyplatí mít již připraven co nejkontrastnější obrázek, protože u vícebarevného a složitého obrázku se vytrasují i třeba ty sebemenší detaily a výsledný vektorový soubor bude zbytečně složitý. Po skončení vektorizace náhled zmizí a objeví se místo něj hláška, že výsledný formát neumí potracegui zobrazit. To nám ale nevadí. Bohužel zde nefunguje tlačítko "diskety" pro uložení. Místo toho musíme dát Soubor - uložit jako.

    Tím máme proces vektorizace hotov.

    Kontrola a následné úpravy

    Abychom se podívali na výsledný soubor DXF, musíme pro to použít další program. Mě se osvědčil Qcad. I když používání tohoto CADu není zrovna intuitivní a člověk, který je navyklý určitým postupům z Autocadu, se v něm poněkud ztrácí. Našemu účelu však poslouží dobře.

    Otevřeme náš soubor DXF; neznalé může zarazit jedna věc: ve vektorizovaném obrázku zdánlivě některé kontury chybí. Zdánlivě říkám proto, že ony tam jsou. Jen je Autotrace vložil do druhé vrstvy a dal jim tmavou barvu, takže nejsou na černém pozadí příliš vidět.

    vektorizace sob.dxf

    Tady si musíme trochu pomoci a editovat druhou hladinu. Nastavíme její barvu na černobílou.

    vektorizace hladina

    Po této úpravě již máme to, co jsme potřebovali. Do vektorů převedený obrázek. Nyní již nic nebrání dalším úpravám a následnému strojnímu CNC zpracování. Například u nás ve firmě můžeme vyhotovit kopie původního vzorku a nejen to.

    vektorizace sob-final

    Závěr

    Doufám, že uvedený postup se někomu bude hodit. A když ne celý, tak třeba jenom jako inspirace k dalšímu využití. Vím, že to nemusí být jediný postup, a že by mohl existovat i pohodlnější, ale já jsem zkrátka zatím na jiný pod Linuxem nepřišel. Každopádně uvítám vaše názory a nápady.

           

    Hodnocení: 92 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    30.4.2007 00:11 michal zeravik
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Proč tak složitě, když to jde jednoduše? www.inkscape.org poslouží i jako frontend potrace a zároveň následná editace křivek je jedna báseň.
    30.4.2007 08:38 neaktivni | skóre: 24 | blog: neaktivni
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Onehda jsem potreboval prevest bitmapu do vektoru, abych ji mohl v inkscape upravit a prvni co me napadlo bylo podivat se, jestli prave Inkscape tuto funkcionalitu nenabizi. Samozrejme ze nabizi, takze jsem asi nejak nepochopil kouzlo vsech tech nastroju. Snad jedine ze by nepodporoval ten spravny format.
    Shteffi avatar 30.4.2007 12:15 Shteffi | skóre: 21 | blog: Shteffi
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Já potřebuju jako výstup DXF. A předpokládám, že Inkscape s DXF pracovat moc neumí...
    30.4.2007 16:30 Zaphod | skóre: 37 | blog: zaphod_blog
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Inkscape vyrobí .dxf súbor. Potrebuje k tomu pyxml - treba inštalovať balíky bzr python-librdf python-xml (podľa návodu na internete) Vyrobí .dxf ale kvalitu neviem posúdiť, nenačíta .dxf naspäť do Inkscape. Verzia 0.45 na kubuntu 7.04. Ak postup funguje netreba ho meniť, ale je možnosť vyskúšať Inskape + Qcad.
    30.4.2007 00:16 deda.jabko | skóre: 23 | blog: blog co se jmenuje "každý den jinak" | za new york city dvakrát doleva a pak už se doptáte
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    autotrace je vcelku povedeny nastroj a to ze nema graficky frontend muze byt nekdy docela plus, treba pokud potrebujete prevest nekolik desitek perovek, aby byly pouzitelne pri sazbe...
    Asi před rokem se dostali hackeři na servry Debianu a ukradli jim zdrojové kódy.
    1.5.2007 13:14 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    autotrace je vcelku povedeny nastroj a to ze nema graficky frontend muze byt nekdy docela plus, treba pokud potrebujete prevest nekolik desitek perovek, aby byly pouzitelne pri sazbe...
    Potrace je vcelku povedeny nastroj a to ze ma graficky frontend muze byt nekdy docela plus, treba pokud potrebuju prevest nekolik desitek perovek, aby byly pouzitelne pri sazbe pouziji potrace v TUI a pokud chci vyzkouset ruzna nastaveni, tak pouziju GUI a pak to nastaveni pouziju treba v TUI na hromadne upravy.

    P.S.: A třeba taky když píšu česky, tak občas použiji taky háčky a čárky.
    XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
    Prcek avatar 30.4.2007 00:54 Prcek | skóre: 43 | Jindřichův Hradec / Brno
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Pekny clanek. I kdyz tomuhle tematu vubec nerozumim, tak se mi to dobre cetlo ;-).
    Člověk je takový, jak vypadá... A já vypadám jako pravá, nefalšovaná děvka!!!
    Shteffi avatar 30.4.2007 12:15 Shteffi | skóre: 21 | blog: Shteffi
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    díky :-)
    30.4.2007 08:05 Jan Březina | skóre: 10 | České Budějovice
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    ooo, diky... z části mne živí (a baví) grafika a vždycky zatím utíkám do windows.. jedním z důvodů byl Streamline, který má skvělý převod křivek... postup vyzkouším
    1. Korintským 13
    30.4.2007 11:36 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Ja na to pouzivam inkscape. Delal jsem i barevne veci. Par problemu to ma:

    - Nema rad barevne prechody, nektere to zprouzkuje.

    - Nema rad neostre hrany (jako na prvnim scanu, vcelku ocekavane...)

    - Nema rad ostre uhly, treba text. Obcas zazlobi, zejmena u maleho textu, ktery je bud neostry (pri vyhlazovani u puvodniho obrazku) nebo kostickovany u obrazku prevedeneho na cerna/bila.

    Vektorizovat takovou "banalitu" jako je cernobily jelen je v tom hračka. Lze i nastavit počet vrstev. Omezime na jednu a je to. Prevedeni toho druheho scanu byla otazka jednoho kliknuti pri pouziti vychozich hodnout, vysledek naprosto 100%.

    Velmi dobreho vysledku jsem dosahl i s timto obrazkem: http://www.gavanet.org/grafika/logo_nezmar.gif My bezne pouzivame lehce rozostrenou verzi tohoto loga. Vzal jsem tohle ostry, tracoval, rucne opravil 2 spatne prevedene rohy ktere byly moc ostre a v Inkscape lehce rozostril. Jen skoda ze to rozostreni bylo moc silne. Ovsem s temi barevnymy prechody je jasne ze upravovat to neslo ani ve snu, byly to stovky objektu, mozna jeste vic.

    Ovsem co s DXF uz netusim, nevim co to je za format.

    Zdenek
    www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
    Shteffi avatar 30.4.2007 12:18 Shteffi | skóre: 21 | blog: Shteffi
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    DXF formát je víceméně nutnost, když potřebujete zpracovat vektorovou grafiku pro CNC stroje. například pro řezání vodním paprskem a nebo laserem. (jako u nás ve firmě) jinak samozřejmě nikomu v článku formát DXF nenutím.. ale občas je potřeba.
    Shteffi avatar 30.4.2007 12:21 Shteffi | skóre: 21 | blog: Shteffi
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    A ještě k těm dvěma vrstvám. mě potracegui neumožňuje nastavit pouze jednu vrstvu ale minimálně 2. tak nevím...
    30.4.2007 18:35 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Ovsem co s DXF uz netusim, nevim co to je za format.
    http://www.root.cz/clanky/vektorovy-graficky-format-dxf/
    30.4.2007 12:26 hajoucha | skóre: 22
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky

    Hezký návod.

    Zajímalo by mne, jak přesně odpovídá vektorový obrázek originálu? Jinými slovy, jak malé může být např. oko soba?

    Je to technická záležitost, potřeboval bych takto scanovat vzorky vystřižené z 0.2mm tlustého plechu (tj. můžu je snadno položit na scanner). Laická otázka zní, zdali takto dostanu lepší rozlišení než třeba 0.1mm?

    Shteffi avatar 30.4.2007 12:31 Shteffi | skóre: 21 | blog: Shteffi
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    podle mých zkušeností závisí hlavně na výši DPI při scanování. čím vyšší, tím detailnější bude obrázek. Výsledné DXF či jiný vektorový výstup se však podle toho mění a pak je nutné naškálovat vektorovou grafiku podle originálu. nikdy to nebude 1:1.
    Josef Kufner avatar 30.4.2007 19:59 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Asi bych tam při scanování přiložil i papírové pravítko. Nejlépe dvě, aby byl zaručen poměr stran a velikost. To pravítko by mohlo absolvovat celou cestu, takže bude jistota, že se to nikde nepokroutí.
    Hello world ! Segmentation fault (core dumped)
    1.5.2007 22:29 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Díky za pěkný článek.

    Zaujalo mě to, mám totiž na disku asi gigo komiksů naskenovaných v jepegu a některé dokonce v blbým pdfku (stažené).
    Ale bude to mít zřejmě úskalí, občas jsou v komiksech barevné/stínové přechody a neostré hrany, případně zapeklité šrafování (déšť atd.).
    Takže by se teoreticky hodila částečná vektorizace,
    existuje něco takovýho?

    Máte někdo zkušenosti s vektorizací komiksů?
    2.5.2007 11:53 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    Pan Tisnovsky na Rootu odkazoval na projekt, ktery se zameruje na vektorizaci klasicky analogovych obrazku (napr. fotografie).
    10.5.2007 19:15 Mirek Barták | skóre: 4
    Rozbalit Rozbalit vše Kvalita a kontrola DXF
    Zajímala by mě ohledně zpracování na CNC ještě možnost filtrovat použité entity pro formát DXF. Například spline ANO/NE, polyline ANO/NE, nejkratší segment VALUE, nejmenší rádius VALUE, spojitost (uzavřenost), volba začátku ???
    Shteffi avatar 13.5.2007 14:02 Shteffi | skóre: 21 | blog: Shteffi
    Rozbalit Rozbalit vše Re: Kvalita a kontrola DXF
    Nepočítej s tim, že by se výsledné DXF dalo rovnou pustit do mašiny.. zpravidla se musí výsledné DXF ručně překreslit na jednoduché entity jako jsou jednoduché čáry a oblouky. SPLajny Autotrace negeneruje, takže s tímhle není problém. Výsledky z vektorizace jsou téměř vždy příliš kostrbaté a když se upraví parametry natolik, že by se kostrbatost odstranila, tak dochází k nežádoucímu zkreslení přesnosti.
    6.4.2018 10:33 Franklin
    Rozbalit Rozbalit vše Re: Vektorizace rastrové grafiky
    It is additionally possible to sign up from a home pc, or from a mobile internet browser. Instagram Login When the Instagram application is mounted in our device.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.