রাস্টার থেকে বড় আকারের


13

আমার একটি বড় শেফফাইল রয়েছে (1 গিগাবাইট) এবং এটি জালিয়াতি করা দরকার। আমি ইতিমধ্যে নিম্নলিখিত চেষ্টা করেছি।

1.) এটিকে v.in.ogrত্রুটি বার্তার সাথে ব্যর্থ করে গ্রাসে আমদানি করুন: ত্রুটি: জি_রিলোক: ব্রেক_পালিগনস.সি: 188 এ 498240036 বাইট বরাদ্দ করতে অক্ষম

২) আমার দ্বিতীয় ধারণাটি ছিল পোস্টজিআইএস ব্যবহার করা। শেফফাইলটি আমদানি করুন, গ্রিডের x, y অবস্থানে এটি পুনরায় নমুনা করুন এবং তারপরে এই পয়েন্টগুলি রফতানি করুন এবং xyz থেকে একটি গ্রিড তৈরি করুন। আমি সাফল্যের সাথে শেফফিলগুলি (বহুভুজ এবং পয়েন্ট) আমদানি করেছি তবে 300k পয়েন্ট সহ 1 মিলিয়ন বহুভুজকে ছেদ করা খুব ধীর বলে মনে হচ্ছে। আমি নিম্নলিখিত পোস্টজিআইএসের স্টেটমেন্ট ব্যবহার করেছি, সম্ভবত উন্নতির কোনও জায়গা আছে।

select polygons.land_id,grid.geom from grid,polygons where grid.geom && polygons.geom and within(grid.geom,polygons.geom)

৩) আমি simplify()পোস্টজিআইএস- এও ব্যবহার করার চেষ্টা করেছি । তবে আমি অনেকগুলি ছোট বহুভুজ (যার অর্থ কয়েকটি অঞ্চল কেবল ছোট বহুভুজ দ্বারা আবৃত ছিল নাল হয়ে গেছে) এর কাছে হেরেছি।

কোন ধারনা ব্যাপকভাবে প্রশংসা হবে।


1
আপনি কোন গ্রাস সংস্করণ ব্যবহার করেছেন? এটি কমপক্ষে 6.4 হওয়া উচিত। নোট করুন যে গ্রাসে large টি বড় ফাইল সমর্থন ভেক্টর মানচিত্রের জন্যও প্রয়োগ করা হয়েছে যা নির্দেশিত সমস্যাটি কাটিয়ে উঠতে সহায়তা করবে (এটি আরও দ্রুত)।
মার্কাস এন

আমি বর্তমানে গ্রাস 6.4 ব্যবহার করছি। আমি শীঘ্রই 7 এ আপডেট করব, ইঙ্গিতটির জন্য ধন্যবাদ।
জোহানেস

আপনি সর্বশেষ প্রাক্পম্পাইল্ড উইনগ্রাস SS টি বাইনারি পেতে পারেন এখানে: উইগ্রাস.সফসিভিসি.ভিট.সি
//গ্রাস

উত্তর:


14

আপনি gdal_rasterize চেষ্টা করতে পারেন , যদিও আমি এটি এত বড় আকারের ফাইলে ব্যবহার করি নি, তাই আপনার গ্রাসের মতো একই সমস্যা থাকতে পারে। আমি মনে করি নিম্নলিখিতগুলির মতো কিছু কাজ করা উচিত (জিডিএল> = 1.8.0 সহ):

gdal_rasterize -a AN_ATTRIB -l THE_LAYER -a_nodata -9999 -a_srs EPSG:27700 -co TILED=YES -tr 10 10 -ot Float32 src.shp dest.tif

অবশ্যই, আপনার সোর্স শেফফিলের উপর নির্ভর করে কয়েকটি বিকল্পের সাথে আপনাকে খেলতে হবে। সর্বাধিক গুরুত্বপূর্ণ পরামিতিটি -tr যা পিক্সেলের রেজোলিউশন নির্দিষ্ট করে; এটি না করে আপনি নিজেকে একটি খুব বড় রাস্টার দ্বারা খুঁজে পেতে পারেন ...

আপনি যদি গ্রাসের সাথে লেগে থাকতে চান তবে রাস্টারাইজেশনের জন্য কিছুটা কম পরিমাণে সেট করার চেষ্টা করুন, এবং প্রক্রিয়াটিকে পরিচালনাযোগ্য খণ্ডে ভাগ করুন, তারপরে রাস্টারগুলিকে এক করে মোজাইক করুন।


1
জিডাল রাস্টেরাইজ প্রায় 5 মিনিট :) এ সমস্ত করেছে। ওটার জন্য অসংখ্য ধন্যবাদ!
জোহানেস

শান্ত! আমি আনন্দিত এটি কাজ করে।
MerseyViking

3

আপনার প্রথম অভিপ্রায় সম্পর্কে, আপনি কি আরও বেশি র‌্যাম বা অদলবদল ডিস্কের স্থান থাকা কোনও মেশিনে v.in.ogr কমান্ড চালানোর চেষ্টা করতে পারেন ?

যদি না হয় আপনি এটিকে অনেকগুলি ফাইলে বিভক্ত করতে পারেন তবে আবার মার্জ করার আগে তাদের প্রতিটিকে একটি রাস্টারাইজ করুন।


1

রাস্টারাইজেশন করার সময় যদি আপনার আরও নিয়ন্ত্রণের প্রয়োজন হয় তবে পেরিওজিওর পলি_ডেনসিটি.পি স্ক্রিপ্টটি দেখুন যা হুডের নীচে জিডিএল ব্যবহার করে, তবে একাকী সম্ভবগুলি ছাড়িয়ে ওভারল্যাপিং বৈশিষ্ট্যগুলি বা শর্তসাপেক্ষ মূল্যায়ন যুক্ত করার জন্য ব্যবহার করা যেতে পারে gdal_rasterize


0

জ্যাক দ্য রিপারের মতো, এটি কিছু অংশে করুন। পোস্টগিস থেকে ঘাসে ডেটা আমদানির টুকরো রফতানি করুন এবং রূপান্তর করুন।


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