উপকূলরেখা কীভাবে সাধারণীকরণ করবেন?


12

আমার কাছে ডেটা পয়েন্টের একটি বিশাল সেট রয়েছে যা মূলত বিশ্বের উপকূলরেখাকে উপস্থাপন করে। আমি সঠিক রেজোলিউশনটি জানি না তবে আমি বলব এটি 5-10 মিটারের আশেপাশে রয়েছে।

এমন পয়েন্টগুলির একটি সেট কল্পনা করুন যা জঞ্জযুক্ত উপকূলরেখাকে উপস্থাপন করে। 1 মিটার রেজোলিউশনে, আমরা সমস্ত বিবরণ দেখতে পাই এবং উপকূলকে সঠিকভাবে উপস্থাপন করার জন্য 50 টি পয়েন্টের প্রয়োজন, তবে, 10 কিলোমিটার রেজোলিউশনে উপকূলটি একটি সরলরেখার মতো দেখায় এবং আমাদের কেবল 2 পয়েন্টের প্রয়োজন হবে।

আমি একটি ম্যাপিং অ্যাপ্লিকেশন লিখছি যা "পূর্ণ-গ্রহ" রেজোলিউশন থেকে "রাস্তার" রেজোলিউশনে ডেটা স্কেল করতে হবে। আমার ডেটা পয়েন্টগুলির রেজোলিউশন এবং পরে বৃহত্তর রেজোলিউশনের জন্য ডেটা পরিমাণ হ্রাস করতে আমার কিছুটা সহায়তা দরকার।

আমি ভেক্টর-টাইলিং সম্পর্কে পড়ছি এবং মনে করি এটি সেরা সমাধান হয়ে উঠবে (আমি ইতিমধ্যে এরকম কিছু করছি) তবে কম রেজোলিউশনে আমার ডেটাসেটটি এখনও এর বিশাল অর্থ যে এটি প্রদান করা [তুলনামূলকভাবে] দীর্ঘ সময় নেয় সময়, যেখানে উচ্চ রেজোলিউশনগুলি দ্রুত হয় কারণ 'কার্যকর' এটি ডেটাসেট ছোট (সম্পূর্ণরূপে উপসেট)।

আমি কীভাবে আমার বড় ডেটাসেট নেব এবং এর স্কেল হ্রাস করব তা নির্ধারণ করার চেষ্টা করছি যাতে আমার 'পূর্ণ-গ্রহ' ভিউ'র টাইলের ডেটা পরিচালনাযোগ্য আকারের হয়। বৃহত্তর সম্পূর্ণ ডেটাসেট থেকে কীভাবে টাইল সাব-ডেটাসেট তৈরি করব?

আমি একটি সরঞ্জাম ব্যবহার করতে পেরে খুশি তবে এটি কীভাবে হয়েছে তা শেখার চেষ্টা করার পরিবর্তে আমি নিজেই এটি করব।


1
আপনি কি gis.stackexchange.com / প্রশ্নগুলি / 6585/… এর উত্তরগুলি পরীক্ষা করেছেন ? আপনার প্রশ্নটি আলাদা বলে মনে করেন দয়া করে বিশদ দিন।
আন্ডার ডার্ক

1
মনে হচ্ছে প্রশ্নটি "পয়েন্ট" এর পরিবর্তে উপকূলরেখা সম্পর্কে হওয়া উচিত। রেজোলিউশন কম হওয়ার সাথে সাথে ছোট দ্বীপগুলি কি অদৃশ্য হয়ে যাবে? চর্মসার সর্প দ্বীপের চারপাশের উপকূলরেখাগুলি পার হওয়া ঠিক কি?
কर्क কুইকেনডাল

আপনি যদি কেবল একটি প্যাসেবল কাজ করতে চান এবং এগিয়ে যেতে চান তবে @ আর থিয়েডির উত্তর সম্ভবত সবচেয়ে ভাল জায়গা। যদি আপনি আসল চ্যালেঞ্জ নিয়ে কাজ করতে চান, আকারগুলির অর্থটি না হারিয়ে লাইনওয়ার্ককে সরল করে তোলেন, gis.stackexchange.com/questions/38/… এবং gis.stackexchange.com/questions/440/… সম্পর্কিত প্রশ্নগুলি দেখুন ।
ম্যাট উইলকি

উত্তর:


7

আপনি কীভাবে এই সমস্যার সমাধান করতে যাবেন তা কেসটির উপর নির্ভর করে এবং প্রকৃত টপোলজি আপনার পক্ষে কতটা গুরুত্বপূর্ণ (কেবলমাত্র ভিজ্যুয়াল / রেন্ডারিং সময়)। যেহেতু আপনার চূড়ান্ত লক্ষ্য উপকূলরেখাকে সাধারণীকরণ করা, আপনি সাধারণীকরণ সম্পর্কে কিছু ধারণা দরকারী বলে মনে করতে পারেন।

এখানে দেখা হিসাবে একটি পদ্ধতির বাফারিং ব্যবহার করে । কিছুক্ষণ আগেও আমার একইরকম সমস্যা হয়েছিল এবং আমার সমাধানটি এখানে বিশদভাবে লিখেছি ।

সংক্ষেপে, আপনি পৃথক ভেক্টর ডেটাসেট ব্যবহার করতে পারেন (বা কমপক্ষে পৃথক পৃথক জ্যামিতি), বিভিন্ন স্তরে সাধারণীকরণ করা। এটি আপনার প্রাথমিক সমস্যাটির সমাধান করে যদিও এটি টাইল ব্যবহার করে না তবে অবশ্যই আপনি যদি চান তবে এটি ব্যবহার করতে পারেন। অবশ্যই, আপনি যদি গ্রিডের উপর ভিত্তি করে আপনার ডেটাসেটটি টাইলগুলিতে বিভক্ত করতে চলেছেন তবে প্রথমে সাধারণীকরণ নিশ্চিত করুন, বা আপনি টাইলসের মধ্যে ফাঁক দিয়ে শেষ করবেন।


একটি চিন্তাশীল জবাব জন্য +1। আমাদের সাইটে স্বাগতম, রেডিগার!
whuber

5

ক্লোজ-আপ জুমটিকে নীচে "পূর্ণ গ্রহ" জুম স্তরগুলির জন্য আপনার ডেটা সেটের বিভিন্ন সাধারণ সংস্করণ প্রস্তুত করা উচিত।

একটি সর্বোত্তম জেনারালাইজেশন অ্যালগরিদম হ'ল ডগলাস-পিউকার অ্যালগরিদম । আপনি যদি ইতিমধ্যে এটি না করে থাকেন তবে আপনাকে প্রথমে পয়েন্টগুলি উপকূলের লাইনে সংযুক্ত করতে হবে।


2
জিইওএস লাইব্রেরিতে ডগলাস-পিউকার অ্যালগরিদম অন্তর্নির্মিত রয়েছে যা আপনি নিজেরাই কোড করতে চান যদি আপনি ব্যবহার করতে পারেন। আপনি টপোলজিটি বিবেচনা করতে ইচ্ছুক হতে পারেন, এই ক্ষেত্রে গ্রাস v.generalize সরঞ্জাম পাশাপাশি সহায়তা করতে পারে।
লেগাররাট্রোব

হাই @ লেগাররাট্রোব আমি এই উত্তর সম্প্রদায়ের উইকি তৈরি করেছি, সুতরাং আপনার এটিকে সরাসরি সম্পাদনা করতে এবং এটিতে জিইওএস এবং গ্রাস উভয়ই সমাধান যুক্ত করতে সক্ষম হওয়া উচিত।
underdark

1

আপনার টাইলসেট তৈরির জন্য আপনি কি টাইলমিল তদন্ত করেছেন? এটি স্বয়ংক্রিয়ভাবে বিভিন্ন জুম স্তরের নোডগুলি হ্রাস করবে। https://github.com/mapbox/tilemill


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.