Кіріспе

Растрлық графиканы векторлық графикаға түрлендіру. Компьютерлік графикада кескінді трассировкалау, растрдан векторға түрлендіру немесе растрлық векторлау – растрлық графиканы векторлық графикаға түрлендіру.

Өмірбаян

Суреттің ешқандай құрылымы жоқ: ол қағаздағы белгілердің, пленкадағы түйіршіктердің немесе бит картасындағы пиксельдердің жиынтығы ғана. Мұндай сурет пайдалы болғанымен, оның шектері бар. Суретті жеткілікті дәрежеде үлкейтуге келгенде, оның артефакттары көріне бастайды. Жарты тонды нүктелер, пленкадағы түйіршіктер және пиксельдер көзге түседі. Шеттері анық суреттер бұлыңғыр немесе тікбұрышты болып көрінеді. Мысалы, пикселдену. Идеалды жағдайда векторлық суретте мұндай мәселелер болмайды. Шеттері мен толтырылған аймақтары математикалық қисықтар немесе градиенттер түрінде бейнеленеді және оларды кез келген деңгейде үлкейтуге болады (әрине, түпкілікті суретті көрсету үшін растрлеу қажет, ал оның сапасы берілген кірістер үшін растрлеу алгоритмінің сапасына байланысты). Векторизацияның мақсаты – екі өлшемді суретті екі өлшемді векторлық түрге айналдыру. Ол суретті қарап, суреттелген үш өлшемді модельді тануға немесе алуға тырыспайды; яғни, бұл көру жүйесі емес. Көптеген жағдайларда, векторизация оптикалық таңбаларды тануды қамтымайды; таңбалар оларға ешқандай маңыз бермей, сызықтар, қисықтар немесе толтырылған нысандар ретінде қарастырылады. Векторизация кезінде кейіпкердің пішіні сақталады, сондықтан көркемдік безендірулер сақталады. Векторизация – растрлеуге кері операция, өйткені интеграция дифференциацияға кері болғандай. Осы екі операция сияқты, растрлеу салыстырмалы түрде қарапайым және алгоритмдік болса, векторизация жоғалған ақпаратты қайта құруды қамтиды, сондықтан эвристикалық әдістерді қажет етеді. Векторизацияға карталар, мультфильмдер, логотиптер, клип-арт және техникалық суреттер сияқты синтетикалық суреттер жарамды. Бұл суреттер бастапқыда векторлық суреттер ретінде жасалған болуы мүмкін, өйткені олар геометриялық пішіндерге негізделген немесе қарапайым қисықтармен салынған. Тұрақты тонды фотосуреттер (мысалы, тірі портреттер) векторизация үшін жақсы кандидаттар емес. Векторизацияның кірісі – сурет, бірақ сурет түрлі формада болуы мүмкін, мысалы, фотосурет, қағазға салынған сурет немесе бірнеше растрлық файл форматтарының бірі. Растрден векторға түрлендіруді жүзеге асыратын бағдарламалар TIFF, BMP және PNG сияқты битмап форматтарын қабылдауы мүмкін. Шығысы – векторлық файл форматы. Көп қолданылатын векторлық форматтар: SVG, DXF, EPS, EMF және AI. Векторизация суреттерді жаңарту немесе жұмысты қалпына келтіру үшін қолданылуы мүмкін. Жеке компьютерлерде әдетте қарапайым бояу бағдарламасы болады, ол бит картасы шығыс файлын жасайды. Бұл бағдарламалар пайдаланушыларға мәтін қосу, контурларды салу және контурларды белгілі бір түспен толтыру арқылы қарапайым суреттер жасауға мүмкіндік береді. Бұл операциялардың нәтижелері ғана (пиксельдер) алынған бит картасында сақталады; сызу және толтыру операциялары жойылады. Векторизация жоғалған ақпаратты қайта алу үшін қолданылуы мүмкін. Векторизация бұрын векторлық форматта болған, бірақ жоғалған немесе қол жетімді емес ақпаратты қалпына келтіру үшін де қолданылады. Компания графикалық өнер фирмасынан логотип тапсырыс берген болуы мүмкін. Графикалық фирма векторлық форматты қолданғанмен, клиент компаниясы сол форматтың көшірмесін алмаған болуы мүмкін. Компания логотиптің қағаз көшірмесін сканерлеп, векторлап векторлық форматқа ие болуы мүмкін.

Процесс

Векторизация суреттен басталады.

Қолданбалық

Суретті қолмен векторлық түрде өзгертуге болады. Адам суретті қарап, өлшемдерін алып, содан кейін қолмен шығару файлына жаза алады. Нейтрино туралы техникалық суреттің векторлануы да осылай жасалған. Иллюстрацияда бірнеше геометриялық пішін мен көптеген мәтін бар; пішіндерді түрлендіру салыстырмалы түрде оңай болды, ал SVG векторлық форматы мәтінді (астын сызулар мен үстін сызулар да бар) оңай енгізуге мүмкіндік береді. Бастапқы суретте қисықтар жоқ (мәтіннен басқа), сондықтан түрлендіру оңай. Қисықтар түрлендіруді қиындатады. Күрделі пішіндерді қолмен векторлауды кейбір векторлық графикалық өңдеу бағдарламаларына енгізілген іздеу (tracing) функциясы жеңілдете алады. Егер сурет машинамен оқуға болатын форматта болмаса, оны пайдалануға ыңғайлы файл форматына сканерлеу қажет. Машинамен оқылатын растрлік сурет болғаннан кейін, суретті графикалық өңдеу бағдарламасына (мысалы, Adobe Illustrator, CorelDRAW немесе Inkscape) импорттауға болады. Содан кейін адам бағдарламаның өңдеу мүмкіндіктерін пайдаланып сурет элементтерін қолмен іздей алады. Бастапқы суреттегі қисықтарды сызықтармен, доғалармен және Безье қисықтарымен жуықтауға болады. Иллюстрациялық бағдарлама сплайн түйіндерін қажеттілікке қарай реттеуге мүмкіндік береді. Қолмен векторлау мүмкін, бірақ ол көбінесе масаттандырады. Графикалық сурет салу бағдарламалары көптен бері бар болғанымен, суретшілер сурет салу планшетін қолданғанда да бос қолмен салу мүмкіндіктерін ыңғайсыз деп табады. Бағдарламаны пайдаланудың орнына Пеппер бастапқы эскизді қағазға салуды ұсынады. Эскизді сканерлеп, компьютерде бос қолмен іздеудің орнына Пеппер былай дейді: "Графикалық планшет пен қаламды (стилусты) жақсы білетіндер сызбаның астына сканерленген эскизді қойып, үстінен сызып CorelDRAW-та тікелей өзгерістер жасай алады. Мен қалам мен сияны және жарық үстелін пайдалануды артық көремін"; соңғы суреттің көп бөлігі сиямен қолмен салынды. Кейін сызықтардан тұратын сурет 600 dpi ажыратымдылықпен сканерленді, бояу бағдарламасында тазартылды, содан кейін бағдарламамен автоматты түрде ізделді. Ақ-қара сурет графикалық бағдарламаға енгізілгеннен кейін, басқа элементтер қосылып, сурет түстің қосылды. Сол сияқты, Плох цифрлық фотосуреттен дизайнды қайта жасады. JPEG импортталды және кейбір "негізгі пішіндер" қолмен ізделіп, графикалық сурет салу бағдарламасында түстің қосылды; күрделі пішіндер басқаша өңделді. Плох растрлік редакторды пайдаланып фонды алып тастап, күрделі сурет компоненттерін кесті. Содан кейін сурет басылып, оны қолмен калкаға көшіріп, анық қара-ақ сызықтардан тұратын сурет алды. Бұл сурет сканерленді, содан кейін бағдарламамен векторландырылды.

Автоматты

Кейбір бағдарламалар векторландыру процесін автоматты түрде жүзеге асырады. Мысал бағдарламалары: Adobe Streamline (тоқтатылды), Corel's PowerTRACE және Potrace. Бұл бағдарламалардың кейбіреулерінде командалық жол интерфейсі бар, ал басқалары интерактивті, олар пайдаланушыға түрлендіру параметрлерін реттеуге және нәтижені көруге мүмкіндік береді. Adobe Streamline тек интерактивті бағдарлама ғана емес, сонымен қатар пайдаланушыға кіріс бит картасын және шығыс қисықтарын қолмен өңдеуге мүмкіндік береді. Corel's PowerTRACE CorelDRAW арқылы қол жетімді; CorelDRAW кіріс бит картасын өзгерту және шығыс қисықтарын өңдеу үшін пайдаланылуы мүмкін. Adobe Illustrator-да жеке қисықтарды іздеу мүмкіндігі бар. Автоматтандырылған бағдарламалардың нәтижелері әр түрлі болуы мүмкін. PNG картасын SVG форматына түрлендіру үшін бағдарлама (PowerTRACE) қолданылды. Бағдарлама картаның шекарасын жақсы орындады (векторлаудағы ең қиын тапсырма) және параметрлер барлық мәтінді (кіші нысандарды) жойды. Мәтін қолмен қайта енгізілді. Басқа түрлендірулер де жақсы жүрмеуі мүмкін. Нәтижелер жоғары сапалы сканерлеуге, дұрыс параметрлерге және жақсы алгоритмдерге байланысты. Сканерленген суреттерде көбінесе көп шу болады. Бит картасы кескінін тазалау үшін көп жұмыс қажет болуы мүмкін. Артық сызықтарды өшіріп, сызықтар мен аумақтарды толтырыңыз. Corel-дің кеңесі: Суретті жарық үстелге қойып, оны калкамен (көшіру қағазымен) жауып, содан кейін қажетті контурларды қолмен бояңыз. Содан кейін калканы сканерлеп, автоматты растрлық-векторлық түрлендіру бағдарламасын сканерленген кескінді өңдеу үшін қолданыңыз.

Опциялар

Суреттердің көптеген стильдері мен мүмкіндіктері бар, және ең бір векторлау әдісі барлық суреттер үшін жақсы жұмыс істемейді. Сондықтан векторлау бағдарламаларының нәтижеге әсер ететін көптеген опциялары бар. Бір мәселе – басым пішіндердің қандай екендігі. Егер сурет толтыру нысаны болса, онда оның тұрақты ені бар тік және көлденең сызықтары ғана болады. Бағдарламаның векторлауы осыны ескеруі керек. Екінші жағынан, CAD суретінде кез келген бұрышта сызықтар, қисық сызықтар және әртүрлі қалыңдықтағы сызықтар (объектілер үшін қалың, өлшем сызықтары үшін жұқа) болуы мүмкін. Қисықтардың орнына (немесе олармен қатар) суретте бір түспен толтырылған контурлар болуы мүмкін. Adobe Streamline пайдаланушыларға сызықтарды тану (көлденең және тік сызықтар), орта сызықты тану немесе контурды танудың комбинациясын таңдауға мүмкіндік береді. Streamline сондай-ақ кішкентай контур пішіндерін жоюға мүмкіндік береді, себебі мұндай кішкентай пішіндер шу болып табылады. Пайдаланушы шу деңгейін 0 мен 1000 аралығында орната алады; осы деңгейден аз пикселдері бар контурлар жойылады. Тағы бір мәселе – суреттегі түстердің саны. Тіпті қара-ақ сурет ретінде жасалған суреттерде де сұр түстің көптеген тоннары болуы мүмкін. Кейбір сызықтарды сызу алгоритмдері антиалиазингті қолданады: сызықпен толық жабылған пиксел қара болады, ал жартылай жабылған пиксел сұр болады. Егер түпнұсқа сурет қағаздан сканерленген болса, ұқсас нәтижеге қол жеткізіледі: жиектегі пикселдер сұр болады. Кейде суреттер сығылады (мысалы, JPEG суреттері), және сығымдау сұр түстің тоннарын енгізеді. Көптеген векторлау бағдарламалары бірдей түсті пикселдерді сызықтарға, қисықтарға немесе контурлы пішіндерге топтастырады. Әрбір түс өз объектісіне топтастырылса, онда өте көп объектілер пайда болуы мүмкін. Оның орнына пайдаланушыдан шектеулі сандағы түстерді (әдетте 256-дан кем) таңдау сұралады, сурет осы түстерді пайдалануға дейін қысқартылады (бұл қадам – түс кванттау), содан кейін векторлау қысқартылған суретте жасалады. Фотосуреттер сияқты үздіксіз тонды суреттер үшін түс кванттау нәтижесі – посттеризация. Градиентті толтырулар да посттеризацияланады. Суреттегі түстердің санын азайтуға көбінесе гистограмма көмектеседі. Ең көп кездесетін түстер өкіл ретінде таңдалады, ал қалған түстер оларға ең жақын өкілдерге сәйкес келеді. Түстер саны екіге орнатылғанда пайдаланушыдан шектік және контрастты параметрлерді орнату сұралуы мүмкін. Контрастты орнату белгілі бір түске емес, пиксел түсінің айтарлықтай өзгеруіне назар аударады; сондықтан ол градиентті толтырудағы түстердің біртіндеп өзгеруін елемеуі мүмкін. Контур алынғаннан кейін пайдаланушы градиентті толтыруды қолмен қайта қосуға болады. Векторлау бағдарламасы бір түсті аймақты бір объектіге топтастыруды қалайды. Ол аймақ шекарасын пиксел шекарасына сәйкес ету арқылы оны жасай алады, бірақ нәтижесінде көбінесе қысқа, өзара перпендикуляр сызықтардан тұратын шекара пайда болады. Нәтижесіндегі түрлендіруде біт картасы ұлғайтылғандағы пикселдеу проблемалары да болуы мүмкін. Оның орнына векторлау бағдарламасы аймақ шекарасын сызықтар мен қисықтармен шамамен бейнелеуі керек, олар пиксел шекарасына жақын, бірақ олармен толық сәйкес келмейді. Толеранттылық параметрі бағдарламаға пиксел шекараларын қаншалықты жақын ұстау керектігін көрсетеді. Көптеген векторлау бағдарламаларының соңғы нәтижесі – кубикалық Безье қисықтарынан тұратын қисықтар. Аймақ шекарасы бірнеше қисық сегменттерімен шамаланады. Қисықтың тегіс болуын қамтамасыз ету үшін екі қисықтың қосылған жерлерінде жанамалар сәйкес келуі керек. Бір мәселе – қисық қай жерде осылай өткір бұрылып, тегіс болмауы керек екенін анықтау. Қисықтың тегіс бөліктері Безье қисығымен сәйкестендіріледі. Сәуірмен бөліну әдісі қолданылуы мүмкін. Мұндай сәйкестендіру процедурасы қисықты бір кубикалық қисықпен сәйкестендіруге тырысады; егер сәйкестік қанағаттанарлық болса, процедура тоқтатылады. Әйтпесе, ол қисық бойындағы тиімді нүктені таңдап, қисықты екі бөлікке бөледі. Содан кейін ол буынның жанамасын сақтай отырып, бөліктерге сәйкес келеді. Егер сәйкестік әлі де қанағаттанарлық болмаса, онда ол қисықты одан да көп бөліктерге бөледі. Кейбір векторлаушылар дербес бағдарламалар болып табылады, бірақ көпшілігінде пайдаланушыға бағдарлама параметрлерін реттеуге және нәтижені жылдам көруге мүмкіндік беретін интерактивті интерфейстер бар. Мысалы, PowerTRACE түпнұсқа суретті және түрлендірілген суретті алдын ала қарау мүмкіндігін ұсынады, сонда пайдаланушы оларды салыстыра алады; бағдарлама сондай-ақ қисықтардың саны сияқты ақпаратты көрсетеді.

Мысал

Оң жақта молюскалардағы радуланың жұмыс істеуін көрсететін сурет келтірілген. Жоғарғы бөлігі көбінесе бір қалам енімен толтырылған контурлық диаграмма, бірақ қабықтың және тамақтың төменгі жағында торлы градиентпен боялған. Сонымен қатар, қабықтың жоғарғы сол жағында көркемдік щеткалар бар. Суреттің төменгі бөлігінде төрт түрлі сызық қалыңдығы және кіші әріптер бар; түс толтыруы қарапайым, тек тік бұрышты сызықтарда градиент көрінеді. 531×879 пикселдік сурет векторланған; 50 түс қолданылған. Көптеген (немесе барлық) сызықтар жоғалды; олар қара аймақтарға айналып, олардың тиімді қалыңдығы өзгерді. Жоғарғы бөлігіндегі көк тамақтың айналасындағы қара контур жойылды. Градиентті толтырулар мен щеткамен салынған дақтар түс кванттау/плакаттау салдарынан жоғалды; кейбір щеткамен салынған дақтар мүлдем жойылды. Кейбір әріптер векторлау кезінде бұрмаланып сақталды, бірақ көпшілігі жойылды. Әріптердің жоғалғаны маңызды емес; түрлендіруден кейін редакциялау кезінде аннотацияны өшіріп, оны қисықтар емес, мәтінмен алмастыру қажет. Шағын бұрышта қиылысатын жұқа сызықтар толтырылған аймақтарды құрады, ал толтырылған аймақтардың контурлары шатастырылды; төменгі оң жақ бұрышқа қараңыз. Векторлаудың ерекшеліктері де бар. Көптеген қара сызықтар біріне-бірі жанасып, нақты аймақтардың контурлары емес, үлкен, күрделі нысандарға айналды. Фон ғана емес, екі контурланған төртбұрышты бөліп тұратын ақ төртбұрыш аймақ бар. Op, rp және rr деп белгіленген нысандар жай ғана қабатталған пішіндер емес; нәтижеде rr, rp-нің үстіне, ал rp, op-тің үстіне орналасуы керек.

Пайдалану домендері

Компьютерлік жобалау (CAD) сызбалары (көк сызықтар және т.б.) сканерленеді, векторланады және қағаздан CAD түрлендіру немесе сурет түрлендіру деп аталатын процесте CAD файлдары ретінде сақталады. Географиялық ақпараттық жүйелерде (ГИС) спутниктік немесе әуе суреттері карта жасау үшін векторлық форматқа келтіріледі. Графикалық дизайн мен фотосуретте графиканы пайдалануды жеңілдету және көлемін өзгерту үшін векторлық форматқа келтіруге болады. Векторизация қолмен жазылған мәтін немесе қолтаңбаларды тану (OCR) жүйелеріндегі алғашқы қадам болып табылады. Векторизация бір түсті, градиентсіз, мысалы, қолтаңба сияқты деректер үшін тиімді.

Тұрақты тоналды бейнелер

Векторлау, әдетте, портреттер сияқты үздіксіз тондық суреттерге қолдануға қолайсыз. Нәтижесі көбінесе нашар болады. Мысалы, 25 кБ JPEG суретіне көптеген түрлі суретті іздеу алгоритмдері қолданылды. Соның нәтижесінде алынған векторлық суреттер кем дегенде он есе үлкен болып шықты және азайтқыш түс саны қолданылғанда айқын постерлеу эффектісі пайда болуы мүмкін.