PerfectVector
लेखक: Claire Yoon13 मिनट का पठन

प्लॉटर के लिए चित्र को एक रेखा वाले SVG में बदलें

स्कैन किए गए चित्र को ऐसे सेंटरलाइन SVG पाथ में बदलें जिन पर पेन प्लॉटर एक बार चले, सामान्य आउटलाइन ट्रेस के दोहरे किनारों के बिना।

इस पेज पर

पेन प्लॉटर के लिए किसी चित्र को एक रेखा वाले SVG में बदलने के लिए सामान्य आउटलाइन ट्रेसिंग के बजाय सेंटरलाइन ट्रेसिंग का उपयोग करें। सामान्य वेक्टराइज़र स्याही के हर स्ट्रोक के दोनों किनारों का अनुसरण करता है। सेंटरलाइन ट्रेसर बीच से गुज़रने वाले एक पाथ का अनुमान लगाता है, जिस पर पेन को चलना चाहिए।

परिणाम में कई खुले पाथ हो सकते हैं और पेन को कई बार उठाना पड़ सकता है। “एक रेखा” हर खींचे गए स्ट्रोक की ज्यामिति बताती है; इससे यह गारंटी नहीं मिलती कि पूरा चित्र एक अखंड <path> होगा। हर खंड को एक ऑब्जेक्ट में जोड़ने से अनचाही जोड़ने वाली रेखाएँ बन सकती हैं, इसलिए चित्र सही होने के बाद ही पेन की यात्रा को अनुकूलित करें।

छोटी प्रक्रिया
  1. साफ़ पृष्ठभूमि पर पतली, समान चौड़ाई वाली और अधिक कंट्रास्ट वाली रेखाओं से शुरू करें।
  2. चित्र को समतल रखकर स्कैन या फ़ोटो लें, फिर छाया और कागज़ की बनावट हटाएँ।
  3. Inkscape या सेंटरलाइन ट्रेसिंग की सुविधा वाले किसी अन्य टूल में सेंटरलाइन ट्रेस करें।
  4. परिणाम को बिना भराव वाला, दिखाई देने वाला स्ट्रोक दें और हर शाखा तथा अंतिम बिंदु की जाँच करें।
  5. छोटे धब्बे हटाएँ, स्पष्ट डगमगाहट को चिकना करें और केवल उन रेखाओं को जोड़ें जिन्हें एक-दूसरे को छूना चाहिए।
  6. SVG पेज का आकार तय करें, प्लॉट के रास्ते का पूर्वावलोकन देखें और कागज़ पर छोटा परीक्षण करें।

सामान्य SVG ट्रेस हर रेखा 2 बार क्यों खींचता है

मार्कर के स्ट्रोक की एक दिखाई देने वाली चौड़ाई होती है। आउटलाइन वेक्टराइज़र उस गहरे क्षेत्र को एक आकृति मानकर उसके चारों ओर सीमा खींचता है। परिणामस्वरूप SVG में अक्सर एक लंबा बंद पाथ होता है: मूल निशान की एक ओर से आगे, सिरे पर मुड़कर, दूसरी ओर से वापस।

यह फ़ाइल स्क्रीन पर सही दिखती है क्योंकि इसकी भरी हुई आकृति स्याही जैसी लगती है। पेन प्लॉटर भराव को रंग के क्षेत्र के रूप में नहीं बनाता; वह वेक्टर पाथ का अनुसरण करता है। इसलिए दोनों सीमाओं पर पेन अलग-अलग चलता है और 2 पास बनते हैं।

आउटलाइन ट्रेस और सेंटरलाइन
वैचारिक क्रम में मोटी रेखाओं वाला फूल का चित्र, स्ट्रोक के दोनों किनारों के चारों ओर दोहरी आउटलाइन और संपादन योग्य नोड वाला एक सेंटरलाइन पाथ दिखाया गया है
वैचारिक आरेख: सामान्य ट्रेसिंग स्याही के निशान के दोनों किनारों का अनुसरण करती है; सेंटरलाइन ट्रेसिंग उसके बीच से गुज़रने वाले एक रास्ते का अनुमान लगाती है।

जब अंतिम उपयोग के लिए भरी हुई आकृति, प्रिंट की जाने वाली सिलुएट या कट की सीमा चाहिए, तब यह दोहरा पाथ उपयोगी है। लेकिन जब पेन, उत्कीर्णन की नोक या फ़ॉइल टूल को मूल स्ट्रोक पर एक बार चलना चाहिए, तब यह ज्यामिति उपयुक्त नहीं है। सामान्य रेखाचित्र के संदर्भ में यह समस्या रेखाचित्र आउटलाइन क्यों बनता है में समझाई गई है; यहाँ हम प्लॉटर के लिए उपयुक्त विकल्प बनाएँगे।

एक रेखा SVG में वास्तव में क्या होता है

प्लॉटर के लिए तैयार रेखाचित्र में आम तौर पर ये गुण होते हैं:

  • पाथ में स्ट्रोक होता है और भराव नहीं होता;
  • हर दिखाई देने वाला निशान एक केंद्र पाथ से दर्शाया जाता है, पतली बंद आकृति से नहीं;
  • इच्छित प्रतिच्छेद छोटे अंतराल या दोहराए गए खंडों के बिना साफ़ मिलते हैं;
  • जहाँ पेन को रुकना या उठना चाहिए, वहाँ अंतिम बिंदु होते हैं;
  • पेज के आयाम कागज़ या इच्छित प्लॉट क्षेत्र से मेल खाते हैं;
  • पाथ पेज की सीमाओं के भीतर रहते हैं।

SVG में 10 पाथ हो सकते हैं या 1,000। केवल पाथ की संख्या से यह पता नहीं चलता कि वह एक रेखा वाला चित्र है या नहीं। एक स्ट्रोक पर ज़ूम करें और नोड टूल का उपयोग करें। यदि बीच से गुज़रती नोड की एक पंक्ति दिखती है, तो वह सेंटरलाइन है। यदि नोड दोनों ओर चलते हैं और सिरों पर जुड़ते हैं, तो वह आउटलाइन है। एनीमेशन चित्रों के लिए OpenToonz रूपांतरण मोड की मार्गदर्शिका इस अंतर को चुने गए फ़्रेम, OpenToonz के अपने वेक्टर लेवल और बाद में किए जाने वाले चौड़ाई के संपादन पर लागू करती है।

ब्राउज़र में चित्र धीरे-धीरे खिंचने का प्रभाव बनाने के लिए SVG स्ट्रोक एनीमेशन की मार्गदर्शिका खुले रास्ते की तुलना भरी हुई पट्टी और उसकी परिधि से करती है। टाइमिंग जोड़ने से पहले चित्र का रास्ता तैयार करें; एनीमेशन किसी आउटलाइन से पेन के चलने का क्रम वापस नहीं निकाल सकता।

AxiDraw दस्तावेज़ मशीन का व्यवहार विशेष रूप से स्पष्ट करते हैं: सामान्य SVG प्लॉटिंग मोड में पाथ को पाथ के रूप में खींचा जाता है, जबकि भराव और स्ट्रोक के दृश्य रूप का उपयोग किसी क्षेत्र को रंगने के लिए नहीं होता। आपका पूर्वावलोकन मोटा और ठोस दिख सकता है, फिर भी उसमें ऐसा रास्ता हो सकता है जिसे आप नहीं चाहते थे।

ऐसा चित्र चुनें जो सेंटरलाइन ट्रेसिंग में अच्छी तरह बदल सके

सेंटरलाइन ट्रेसिंग सबसे अच्छा काम करती है जब स्रोत में एल्गोरिदम को बीच की रेखा स्पष्ट दिखती है:

  • सफ़ेद या बराबर रंग के कागज़ पर गहरी स्याही;
  • उचित समान स्ट्रोक चौड़ाई;
  • पास के निशानों में स्पष्ट अंतराल;
  • रेखा से प्रतिस्पर्धा करती शेडिंग, हैचिंग का घना क्षेत्र या कागज़ बनावट नहीं;
  • स्कैन नॉइज़ से अलग समझने योग्य बड़े वक्र।

पतले फ़ेल्ट-टिप पेन, फ़ाइनलाइनर या साफ़ डिजिटल ब्रश से बनी रेखाओं को ट्रेस करना ग्रेफ़ाइट की रेखाओं से आसान होता है। पेंसिल का दबाव धूसर, बनावट वाला स्ट्रोक बनाता है, जिसका किनारा और बीच अनिश्चित होते हैं। चौड़े सुलेख ब्रश के स्ट्रोक का भी एक बीच होता है, लेकिन उसकी बदलती चौड़ाई में अभिव्यक्ति होती है जिसे समान चौड़ाई वाला एक प्लॉटर स्ट्रोक नहीं दिखा सकता।

यदि बदलती चौड़ाई चित्र के लिए आवश्यक है, तो आपके पास 3 व्यावहारिक विकल्प हैं: आउटलाइन वाला संस्करण रखकर उसे हैचिंग से भरें, पेन के कई पास या अलग-अलग निब का उपयोग करें, या यह मानने के बजाय कि एक सेंटरलाइन वैसी ही दिखेगी, चित्र को भरे हुए वेक्टर ग्राफ़िक के रूप में सुरक्षित रखें।

1. स्रोत कैप्चर और तैयार करें

संभव हो तो चित्र को स्कैन करें। फ़ोटो लेते समय कैमरे को कागज़ के समानांतर रखें और दोनों ओर से रोशनी दें, ताकि एक किनारा छाया में न जाए। ट्रेसिंग से पहले पेज को क्रॉप करें, परिप्रेक्ष्य सुधारें और उसे सही दिशा में घुमाएँ।

फिर सरल काला-सफ़ेद स्रोत बनाएँ:

  1. फीके इच्छित निशान मिटाए बिना कागज़ सफ़ेद करें;
  2. चित्र इतना गहरा करें कि हर इच्छित स्ट्रोक लगातार रहे;
  3. अलग धूल, रबर कण और छाया हटाएँ;
  4. तीखापन इतना न बढ़ाएँ कि रेखा के पास उजला घेरा हो;
  5. अधिक ज़ूम पर प्रतिच्छेद देखें।

रेखा को केवल “अधिक वेक्टर” बनाने के लिए मोटा न करें। मोटा रास्टर स्ट्रोक एक चौड़ा क्षेत्र बनाता है, जिसका बीच तंग मोड़ों पर अस्पष्ट हो सकता है। रेखा की सबसे पतली साफ़ चौड़ाई सुरक्षित रखें जिस पर वह लगातार बनी रहती है।

यदि स्रोत बच्चे का चित्र है और उसकी डगमगाती रेखाएँ उसकी पहचान का हिस्सा हैं, तो बच्चे के चित्र को SVG में बदलने की कैप्चर संबंधी सलाह लें, लेकिन सामान्य आउटलाइन ट्रेसिंग वाला चरण छोड़ दें। तैयारी की सलाह यहाँ भी लागू होती है; ट्रेसिंग का मोड बदलता है।

2. Inkscape में सेंटरलाइन ट्रेस करें

तैयार चित्र को Inkscape में आयात करें, उसे चुनें और Path → Trace Bitmap खोलें। Brightness cutoff या Edge detection के बजाय Centerline tracing (autotrace) चुनें। Inkscape शुरुआती मार्गदर्शिका इस मोड को आकृति को खुले पाथ में बदलने वाला बताती है और लिखावट तथा अन्य रेखाचित्रों के लिए इसका सुझाव देती है।

पूर्वावलोकन में कठिन क्षेत्रों पर ध्यान दें:

  • पास समानांतर स्ट्रोक एक बन सकते हैं;
  • लूप के भीतर छोटा सीधा रास्ता आ सकता है;
  • प्रतिच्छेद गलत शाखा चुन सकता है;
  • फीका स्ट्रोक कई टुकड़ों में टूट सकता है;
  • धूल छोटा अलग पाथ बन सकती है।

ट्रेस लागू करें, वेक्टर को रास्टर से अलग खिसकाएँ और दोनों की साथ-साथ तुलना करें। ट्रेस किए गए ऑब्जेक्ट में भराव हटाएँ और विपरीत रंग का स्ट्रोक दें, ताकि उसका रास्ता दिखाई दे। यदि कुछ नहीं दिखता, तो संभव है कि परिणाम में अभी स्ट्रोक की स्टाइल न हो; उसे चुनकर स्ट्रोक दें।

अलग-अलग संस्करणों में मेनू के नाम और उपलब्ध ट्रेस इंजन बदल सकते हैं, इसलिए पुराने एक्सटेंशन निर्देशों की आँख मूँदकर नकल करने के बजाय आपके इंस्टॉल किए गए Inkscape में दिखने वाले वर्तमान सेंटरलाइन विकल्प का उपयोग करें।

3. अंतिम बिंदु, शाखा और अनचाहे लूप देखें

नोड टूल पर जाएँ। एक अंतिम बिंदु से शुरू करें और मन में रास्ते का अनुसरण करें। अच्छी सेंटरलाइन स्याही के बीच के पास रहती है और वही रास्ता चुनती है जो पेन चुनता।

इस क्रम में सुधारें:

  1. धब्बे और छोटे टुकड़े मिटाएँ। इनसे पेन को अनावश्यक रूप से कागज़ पर टपकाना पड़ता है।
  2. टूटे स्ट्रोक जोड़ें। अंतिम बिंदुओं को तभी जोड़ें जब स्रोत में वह रेखा लगातार थी।
  3. दोहराए खंड हटाएँ। 2 समान पाथ पूरी तरह एक-दूसरे पर होने पर भी 2 बार प्लॉट होते हैं।
  4. शाखा बिंदु सुधारें। तय करें कि कौन-सा पाथ आगे जाएगा और कौन-सा जंक्शन पर समाप्त होगा।
  5. स्थानीय टेढ़ापन चिकना करें। कुछ नोड खिसकाएँ या हटाएँ; पूरे चित्र को आँख मूँदकर सरल न करें।
  6. अनचाहे बंद लूप खोलें। यदि चित्र में लूप है, तो सेंटरलाइन का लूप ठीक है, लेकिन स्ट्रोक के चारों ओर पतला कैप्सूल होना बताता है कि आउटलाइन की ज्यामिति बची हुई है।

यदि आपका संपादक यह सुविधा देता है, तो आउटलाइन या वायरफ़्रेम दृश्य चालू करें। स्टाइल दोहराए गए पाथ छिपा सकती है, जबकि केवल पाथ दिखाने वाला दृश्य उन्हें तुरंत उजागर करता है।

4. तय करें पेन कहाँ उठे

पेन को कम बार उठाने से प्लॉट तेज़ हो सकता है और यात्रा के दौरान पड़ने वाले निशान कम हो सकते हैं, लेकिन पेन को बिल्कुल न उठाना अपने-आप बेहतर नहीं होता। अलग आँखें, बिंदु और असंबद्ध सजावट या तो अलग रहेंगे या उन्हें जोड़ने वाली दिखाई देने वाली रेखाएँ बनेंगी।

पाथ जोड़ें जब:

  • चित्र में अंतिम बिंदु पहले ही मिलते हैं;
  • इच्छित निशान लगातार है;
  • जोड़ने से प्रतिच्छेद में रास्ता नहीं बदलता।

अलग रखें जब:

  • जोड़ खाली कागज़ पर रेखा खींचेगा;
  • पेन का रंग या निब बदलना आवश्यक हो;
  • तत्व देखने में एक-दूसरे पर हों, लेकिन एक ही स्ट्रोक न हों;
  • जानबूझकर पेन उठाने से जंक्शन पर स्याही जमा होने से बचती हो।

पाथ का क्रम तय करने वाला सॉफ़्टवेयर चित्र बदले बिना उठे हुए पेन की यात्रा घटा सकता है। AxiDraw का वर्तमान कमांड लाइन संदर्भ क्रम बदलने को ऐसा अनुकूलन बताता है जिसमें तत्वों का क्रम और, वैकल्पिक रूप से, पाथ की दिशा बदलकर उठे हुए पेन की यात्रा कम की जाती है। यह सेंटरलाइन ट्रेसिंग से अलग है। पहले सही निशान बनाएँ, फिर उनका क्रम बदलें।

5. स्ट्रोक रूप और दस्तावेज़ आकार तय करें

प्लॉटर ज्यामिति का अनुसरण करता है, संपादक में दिखने वाली सजावटी मोटाई का नहीं। स्क्रीन पर स्ट्रोक की ऐसी मामूली चौड़ाई रखें जिससे पाथ आसानी से जाँचे जा सकें; यह चौड़ाई बदलने से आम तौर पर वास्तविक निब नहीं बदलती।

SVG पेज को इच्छित कागज़ के आकार पर सेट करें और चित्र के चारों ओर सुरक्षित हाशिया रखें। प्लॉट संवाद में अंदाज़े से आकार बदलने के बजाय दस्तावेज़ की इकाइयों और आयामों की पुष्टि करें। यदि दूसरे ऐप में आयात करने पर आकार बदल जाता है, तो किसी नोड को संपादित करने से पहले ज्ञात आकार वाले SVG का परीक्षण करें।

यदि कई पेन रंग उपयोग होते हैं, तो उन्हें स्पष्ट लेयर पर रखें या ऐसी स्टाइलिंग पद्धति अपनाएँ जिसे आपका प्लॉटर सॉफ़्टवेयर अलग कर सके। एक बार में एक रंग चलाएँ और पेज का उद्गम बिंदु अपरिवर्तित रखकर सभी रंगों का संरेखण बनाए रखें।

6. अंतिम प्लॉट से पहले पूर्वावलोकन और परीक्षण

अपने प्लॉटर सॉफ़्टवेयर के पूर्वावलोकन या अनुकरण में इन समस्याओं की जाँच करें:

  • अनपेक्षित दोहरी यात्रा;
  • खाली जगह पर पेन नीचे रखते हुए खींची जाने वाली लंबी जोड़ने की रेखाएँ;
  • बिंदु बनाने वाले छोटे टुकड़े;
  • पेन को बहुत अधिक बार उठाना;
  • पेज से बाहर जाने वाले पाथ;
  • गीले घने क्षेत्र में शुरू होकर स्याही सूखने से पहले लौटता रास्ता।

सस्ते कागज़ पर अंतिम भौतिक आकार में परीक्षण करें। 400% ज़ूम पर चिकना दिखने वाला पाथ वास्तविक पेन से खींचने पर मशीन की डगमगाहट, स्याही का जमाव या अंतराल दिखा सकता है। मशीन की समस्या की भरपाई करने के लिए सही SVG ज्यामिति बदलने के बजाय प्लॉटर सेटअप में गति, पेन की ऊँचाई और दबाव समायोजित करें।

PerfectVector कहाँ उपयुक्त है और कहाँ नहीं

PerfectVector एक आउटलाइन वेक्टराइज़र है। यह तब उपयोगी है जब आपके स्कैन किए गए चित्र को प्रिंटिंग, कटिंग, रंग भरने वाले पेज या आगे के संपादन के लिए साफ़ भरी हुई आकृतियों की आवश्यकता हो। यह मोटे स्याही के निशान को उस एक केंद्रीय पाथ में नहीं बदलता जिसकी पेन प्लॉटर को आवश्यकता होती है।

एक उपयोगी मिश्रित प्रक्रिया में आप PerfectVector से साफ़ सिलुएट या भरे हुए क्षेत्र निकाल सकते हैं, फिर कुछ वास्तविक पेन स्ट्रोक को सेंटरलाइन टूल से दोबारा बना सकते हैं। यदि पूरा चित्र स्ट्रोक से बना है, तो सीधे Inkscape की सेंटरलाइन ट्रेसिंग का उपयोग करें या महत्वपूर्ण वक्र हाथ से ट्रेस करें। छोटे, अभिव्यक्तिपूर्ण स्केच में खराब स्वचालित सेंटरलाइन सुधारने की तुलना में हाथ से चित्र बनाना अक्सर तेज़ होता है।

अक्सर पूछे जाने वाले प्रश्न

पेन प्लॉटर हर रेखा 2 बार क्यों खींचता है? सामान्य वेक्टर ट्रेस हर गहरे स्ट्रोक के दोनों किनारों का अनुसरण करके पतली बंद आकृति बनाता है। प्लॉटर दोनों सीमा पाथ पर चलता है। सेंटरलाइन ट्रेसिंग का उपयोग करें और भरे हुए पूर्वावलोकन पर निर्भर रहने के बजाय परिणाम को केवल पाथ वाले दृश्य में जाँचें।

क्या एक रेखा वाले SVG का अर्थ है कि पूरा चित्र एक पाथ है? नहीं। आम तौर पर इसका अर्थ है कि हर दिखाई देने वाला स्ट्रोक 2 आउटलाइन के बजाय एक केंद्रीय पाथ से दर्शाया गया है। असंबद्ध विवरण अलग पाथ रह सकते हैं और उनके बीच पेन उठाना पड़ सकता है; उन्हें ज़बरदस्ती एक पाथ में जोड़ने से अनचाही जोड़ने वाली रेखाएँ बन सकती हैं।

क्या Inkscape किसी चित्र को सेंटरलाइन में बदल सकता है? हाँ। Inkscape के वर्तमान संस्करणों में Trace Bitmap में लिखावट और रेखाचित्रों के लिए Centerline tracing मोड है। परिणाम की जाँच फिर भी आवश्यक है, क्योंकि प्रतिच्छेद, फीके निशान और बदलती स्ट्रोक चौड़ाई गलत शाखाएँ या अंतराल बना सकते हैं।

क्या एक रेखा वाले SVG में भराव होना चाहिए? सामान्यतः नहीं। पाथ को दिखाई देने वाला स्ट्रोक दें और भराव हटाएँ, ताकि आप वह रास्ता देख सकें जिस पर पेन चलेगा। वास्तविक रेखा की चौड़ाई पेन की निब और प्लॉटर सेटअप से तय होती है, केवल SVG में दिखने वाले स्ट्रोक की चौड़ाई से नहीं।

क्या PerfectVector पेन प्लॉटर का एक रेखा SVG बनाता है? सीधे नहीं। PerfectVector भरे हुए ग्राफ़िक, प्रिंटिंग और आकृतियों की कटिंग के लिए उपयुक्त साफ़ आउटलाइन पाथ बनाता है। हर खींचे गए स्ट्रोक के बीच से एक पाथ निकालने के लिए सेंटरलाइन ट्रेसर का उपयोग करें या पाथ को हाथ से दोबारा बनाएँ।

स्रोत

  1. Inkscape शुरुआती मार्गदर्शिका — चित्र ट्रेस करना — लिखावट व रेखाचित्र का Centerline मोड।
  2. AxiDraw Python API संदर्भ — SVG पाथ का सामान्य प्लॉट और भराव व स्ट्रोक रूप का व्यवहार।
  3. AxiDraw CLI संदर्भ — पाथ क्रम, दिशा, पूर्वावलोकन और उठे पेन यात्रा अनुकूलन।
  4. W3C — SVG पाथ — खुले पाथ, उपपाथ, अंतिम बिंदु और ज्यामिति।

यदि प्लॉटर पाथ बनाने से पहले चित्र के किसी हिस्से को साफ़ भरी हुई वेक्टर आकृतियों की आवश्यकता हो, तो PerfectVector से उस रास्टर चित्र को ट्रेस करें और आउटलाइन की जाँच करें। जिन निशानों पर पेन को एक बार चलना चाहिए, उन्हें सेंटरलाइन ट्रेसिंग और वास्तविक कागज़ पर परीक्षण के साथ पूरा करें।

Blog से और

अपनी इमेज को
एडिट करने योग्य SVG में बदलें