ओपन सोर्स टूल्स का उपयोग करके डुप्लिकेट पॉलीगन्स निकालें


13

मेरे पास डुप्लिकेट ज्यामिति के साथ एक आकृति युक्त विशेषताएं हैं, लेकिन अलग-अलग विशेषताएँ (उदाहरण के लिए एक्सएक्सएक्स के साथ एक बहुभुज और विशेषता एक्सवाई के साथ एक समान बहुभुज)। मैं डुप्लिकेट की पहचान करना चाहता हूं, फिर एक को सही विशेषताओं के साथ चुनें, दूसरे को हटा दें।

मैंने ओपनजंप / कोस्मो में टोपोलॉजी उपकरण की कोशिश की है, लेकिन सफलता के बिना। उनके पास एक 'डिलीट डुप्लिकेट' टूल है जो मैं चाहता हूं, सिवाय इसके कि मुझे लेने के बजाय मनमाने ढंग से किसी एक फीचर को डिलीट करने के लिए लगता है, जिसे मैं रखता हूं।

मेरे पास QGIS, OpenJUMP, कोस्मो आदि की पहुंच है और आवश्यकता पड़ने पर अन्य खुले स्रोत / निःशुल्क उपकरण स्थापित करने में सक्षम हूं।

विचार?

जवाबों:


7

PostGIS के अलावा, आप एक टोपोलॉजिकल ओपन सोर्स GIS (GRASS) का भी उपयोग कर सकते हैं:

  1. डाउनलोड करो और इंस्टॉल करो
  2. स्थान प्रबंधक को प्रारंभ करें और चुनें, अपने SHAPE फ़ाइल (जिसे "GRASS स्थान" कहा जाता है) से एक नया प्रोजेक्ट डेटाबेस बनाने के लिए उपकरण का उपयोग करें, चरण-दर-चरण मार्गदर्शिका के लिए यहां देखें
  3. SHAPE फ़ाइल आयात करें
  4. "V.clean" टूल का उपयोग करें जो विकल्पों की श्रृंखला प्रदान करता है
  5. "V.out.ogr" के साथ SHAPE फ़ाइल प्रारूप में निर्यात मानचित्र

सिडेनोट: हम इसके लिए WPS की पेशकश करने की योजना बना रहे हैं ताकि आप अपने डेटा को हमारे वेब पोर्टल के माध्यम से पॉलिश कर सकें।


मेरा मानना ​​है कि v.clean उपयोगकर्ताओं को एक-एक करके 'अंतःक्रियात्मक' पहचानों को पहचानने और ठीक करने की अनुमति देता है। यदि मैं गलत हूं तो मुझे बताएं।
डैरेन कोप

मुझे याद आया कि आप इसे अंतःक्रियात्मक रूप से करना चाहते थे। तो v.digit डिजिटाइज़र उपयोग करने का उपकरण है।
मार्कस

मार्कस, v.digit के माध्यम से एक त्वरित स्पिन ध्वनि नहीं करता है जैसे कि वह वही करेगा जो मैं चाहता हूं। क्या आप शायद एक उदाहरण दे सकते हैं कि मैं v.digit का उपयोग करके अपने कार्य को कैसे पूरा करूंगा?
डैरेन कोप

1
दरअसल, GRASS में सिर्फ शेपफाइल आयात करने से 2_polygon परत के रूप में ओवरलैपिंग बहुभुजों की एक परत बन जाती है। मुझे लगता है कि यह मेरे लिए पर्याप्त होना चाहिए!
डैरेन कोप

3

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

डुप्लिकेट खोजने के लिए क्वेरी कुछ इस तरह होगी यदि आपके पास एक विशिष्ट आईडी है जिसे gid कहा जाता है और एक ज्यामिति स्तंभ जिसे The_geetः कहा जाता है:

create table duplicates as
select a.the_geom, a.gid, b.gid from mytable a, mytable b 
where ST_Equals(a.the_geom, b.the_geom) and a.gid!=b.gid;

ST_Equals पर कुछ वेरिएंट हैं, लेकिन मुझे लगता है कि ST_Equals वही है जो आप चाहते हैं। यह आपको बहुभुज के पहले और दूसरे अवसर के डुप्लिकेट ज्यामितीय और जीआईडी ​​(आईडी) के साथ एक तालिका देगा। आपको डुप्लिकेट की एक ही जोड़ी दो बार मिलेगी, लेकिन इससे कोई फर्क नहीं पड़ना चाहिए क्योंकि आप चाहते हैं कि वे आपको वही दिखाएं जहां वे हैं।

HTH निकलस


3

यदि आप PostGIS 1.5.x का उपयोग कर रहे हैं, तो ST_HausdorffDistance () फ़ंक्शन देखें।
डुप्लिकेट जियोमेट्रीज का मान 0 होगा। इसका इस्तेमाल डिफेंड की तरह करें। बहुभुज आकार की तुलना के लिए बहुत साफ है।


0

एक और अधिक सरल तरीका है। अपने डेस्कटॉप जीआईएस में क्षेत्र की गणना करें और आरोही या अवरोही क्षेत्र द्वारा आदेश दें। अब आपको अपनी विशेषता तालिका में डुप्लिकेट की गई वस्तुओं को देखने के लिए हर पंक्ति को जांचना होगा। यह एक ऐसी स्थिति पर आधारित है जिसमें आपके पास कभी भी समान क्षेत्र नहीं है वस्तुओं के लिए जो नकली नहीं है यह कभी-कभी गलत हो सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.