বেশ কয়েকটি রাস্টার আরও ইউনিফর্ম তৈরি করুন


10

আমি এমন কিছু রেস্টার আমদানি করেছি যা ধারাবাহিকভাবে সংযুক্ত থাকার কথা বলে মনে হয় তবে পরিবর্তে তারা তাদের মধ্যে কিছু প্রকারের সীমানা গ্রিড তৈরি করে। আমি ধরে নিতে পারি যে এটি পৃথক রেস্টারদের মধ্যে ক্রমাঙ্কনের বিষয়টি তবে আমি কীভাবে এটি ডেটাউইস পদ্ধতিতে চালিত করব তা নিশ্চিত নই।

এর আগে যে কেউ এরকম কিছু অভিজ্ঞতা পেয়েছে এবং সম্ভবত একটি সম্ভাব্য সমাধান সম্পর্কে জানতে পারে যাতে সমস্ত রাস্টারের সামগ্রিকতর আরও মসৃণ হয়।

এই সমস্তগুলি ভৌগলিকভাবে সংযুক্ত থাকার কথা। সুতরাং স্কয়ারের 'সীমানা' নিয়ে ঝামেলা।

আমি উইন্ডোতে কিউজিআইএস ব্যবহার করছি।

এখানে চিত্র বর্ণনা লিখুন

উত্তর:


11
  1. আপনি রাস্টারদের একের মধ্যে একীভূত করার চেষ্টা করতে পারেন:

    • সরঞ্জামদণ্ড থেকে:

      রাস্টার> বিবিধ> মার্জ করুন

    • প্রসেসিং টুলবক্স থেকে:

      জিডিএল / ওজিআর> বিবিধ> মার্জ করুন

    • জিডিএল কনসোল থেকে:

      gdal_merge.py -o merged.tif input1.tif input2.tif
      

  1. অথবা ভার্চুয়াল রাস্টার তৈরি করুন:

    • রাস্টার> বিবিধ> ভার্চুয়াল রাস্টার তৈরি করুন

1
ভার্চুয়াল রাস্টার তৈরির জন্য +1। এটি একটি খুব ছোট ফাইল তৈরি করবে যা একক একত্রীকরণের চিত্রের মতো কাজ করবে।
আলেকজান্দ্রি

@ আলেকজান্দ্রনেটো - ধন্যবাদ, আমি লক্ষ্য করেছি যে পৃথক রাস্টারদের তুলনায় ফাইলের আকারের পার্থক্যটি বেশ বিস্ময়কর হতে পারে =)
জোসেফ

একত্রীকরণ বা ভার্চুয়াল রাস্টার তৈরি করার সময় আমি একটি ত্রুটি পেয়েছি তা ঘোষণা করে যে প্রক্রিয়া আরম্ভ করা যায়নি। পোরগ্রামের অস্তিত্ব নেই বা আমার সঠিক অধিকার নেই। অতএব আমি লেস্টার-মেনুতে সমস্ত রাস্টার লোড করে এবং সেখান থেকে নির্বাচন করে একটি মার্জ বা বিল্ডিং সফল করেছি। জিডাল_সমার.ব্যাট কমান্ড লাইনটি দীর্ঘ হতে পারে, কমপক্ষে ইনপুটেক্স.টিফ 1000 এক্স (বিভিন্ন
রেস্টার

@ মিশেল - অদ্ভুত ত্রুটি তবে খুশি যে আপনি নিজের ফলাফল পাওয়ার জন্য অন্য কোনও উপায় খুঁজে পেয়েছেন :)
জোসেফ

1
@Michael এ কমান্ড লাইন আপনি ভোজন করতে gdalbuildvrtgdalbuildvrt -input_file_list my_liste.txt doq_index.vrt: ফাইলগুলির একটি তালিকা সমন্বিত একটি ফাইল ফাইলের নাম, বরং সেই সময় অনেক ইমেজ ফাইল আর্গুমেন্ট হিসাবে দিতে
Detlev

3

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

যখন উভয়, মার্জ এবং ভিআরটি, কোনও বিকল্প নয় যখন নিম্নলিখিত স্ক্রিপ্টটি সহায়তা করতে পারে।

প্রথম লুপটিতে আমি সমস্ত স্তরগুলিতে পুনরাবৃত্তি করি, রাস্টারগুলি বাছাই করে এবং তাদের ন্যূনতম / সর্বাধিক বিরতি সম্পর্কে অনুমান করি। এই পদ্ধতিটি কিউজিআইএস নিজেই কাজ করে। এই সর্বনিম্ন / সর্বোচ্চ মানগুলি থেকে আমি বিশ্বব্যাপী ন্যূনতম / সর্বাধিক গণনা করি

দ্বিতীয় লুপে সমস্ত রাস্টার স্তরগুলির জন্য উপস্থাপকগুলি এমনভাবে কনফিগার করা হয়েছে যে ধূসর স্কেলটি ব্যবধানটি বিশ্বব্যাপী ন্যূনতম মিনিট / সর্বোচ্চ পর্যন্ত প্রসারিত ched

gmin = 9999
gmax = -9999
layers = []
# loop over all layers, take rasters and estimate min, max values
for layer in iface.mapCanvas().layers():
    if isinstance(layer, QgsRasterLayer):
        # change percentages and sample size to increase or decrease accuracy
        min_max = layer.dataProvider().cumulativeCut(1, 0.02, 0.98, theSampleSize=250000)
        gmin = min(gmin, min_max[0])
        gmax = max(gmax, min_max[1])
        layers.append(layer)

# for all rasters create a single band gray scale renderer with 
# gray scale stretched across the interval [gmin..gmax]
for rasterlayer in layers:
    renderer = QgsSingleBandGrayRenderer(rasterlayer.dataProvider(), 1)
    # take the first band (0)
    ce = QgsContrastEnhancement(rasterlayer.dataProvider().dataType(0))
    ce.setContrastEnhancementAlgorithm(QgsContrastEnhancement.StretchToMinimumMaximum)
    ce.setMinimumValue(gmin)
    ce.setMaximumValue(gmax)
    renderer.setContrastEnhancement(ce)

    rasterlayer.setRenderer(renderer)

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