পাইথন স্ক্রিপ্টে gdal_ विसর কল করা


10

আমি অজগর থেকে নতুন এবং কীভাবে (স্পাইডার) পাইথন স্ক্রিপ্টে gdal_ विसর ব্যবহার করতে পারি তার বিষয়ে মাথা নষ্ট করছি। আমি উইন্ডোজ 10, পাইথন 3.6 ব্যবহার করি এবং জিডাল সরঞ্জামটি osgeo4w থেকে ইনস্টল করেছি। আমি বুঝতে পারি যে আরও অনেকগুলি পোস্ট এই সমস্যাটি বর্ণনা করে তবে কোনওটিই আমাকে এই সমস্যাটি সমাধান করতে সহায়তা করতে পারেনি।

আমি যখন সিএমডি থেকে জিডিএল মডিউলটি কল করি তখন এটি একটি কবজির মতো কাজ করে:

 python "C:\OSGeo4W64\bin\gdal_merge.py" -o merged.tif input1.tif input2.tif

তবে আমি পাইথন স্ক্রিপ্টে (স্পাইডার) এটি সঠিকভাবে কাজ করতে পারি না।

প্রথম পদ্ধতির একটি আউটপুট উত্পাদিত হয় তবে সঠিক নামের সাথে নয়: এটি একটি 'আউট.ফিট' ফাইল উত্পন্ন করে এবং আমার অনুরোধ অনুসারে 'মার্জড.ফটিফ' ফাইলটি তৈরি করে না:

import sys
sys.path.append('C:\\OSGeo4W64\\bin')
import gdal_merge as gm
gm.main(['-o', 'merged.tif', 'N00W078.tif', 'N00W079.tif'])

দ্বিতীয় পদ্ধতিটি কেবল কোনও আউটপুট তৈরি করে না:

import subprocess
merge_command = ["python", "C:\OSGeo4W64\bin\gdal_merge.py", "-o", "merged.tif", "input1.tif", "input2.tif"]
subprocess.call(merge_command,shell=True)

এই সমস্যাটি কীভাবে সমাধান করবেন?

উত্তর:


12

প্রথম পদ্ধতির মধ্যে একটি খালি যুক্তি যুক্ত করুন (কারণ gdal_merge.py1 থেকে শুরু করে 0 নয় আর্গুমেন্টকে পার্স করে):

import sys
sys.path.append('C:\\OSGeo4W64\\bin')
import gdal_merge as gm
gm.main(['', '-o', 'merged.tif', 'N00W078.tif', 'N00W079.tif'])

পথ যোগদান gdal_merge.pyমধ্যে দ্বিতীয় পদ্ধতির :

import os, subprocess
gm = os.path.join('C:\\','OSGeo4W64','bin','gdal_merge.py')
merge_command = ["python", gm, "-o", "merged.tif", "input1.tif", "input2.tif"]
subprocess.call(merge_command,shell=True)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.