विशालकाय 2.5 जीबी जेपी 2 छवि: इसे टाइल कैसे करें?


11

मेरे पास एक शहर की एक सिंगल 2.5 जीबी जेपी 2 छवि है जिसे मुझे टाइलों में विभाजित करने की आवश्यकता है, जो तब मैं फ्लाइट सिमुलेशन दृश्यों को बनाने की प्रक्रिया करूंगा।

Google जैसा कि हो सकता है, मैं इसका समाधान नहीं ढूंढ पा रहा हूं।

JP2 में जाहिरा तौर पर GIS XML डेटा एम्बेडेड है, जो मुझे किसी भी तरह से प्रभावित नहीं करता है, क्योंकि मुझे इसकी आवश्यकता नहीं है। मैं जो कुछ करने की कोशिश कर रहा हूं वह छवि को 2048 x 2048 टाइलों के एक्स-संख्या में तोड़ देगा।

OSX या Win7 में ऐसा करने की उपयोगिता बहुत अच्छी होगी।

विचार?

धन्यवाद!


क्या आप QGIS या ArcGIS दृष्टिकोण में रुचि रखते हैं?
हारून

5
कोशिश करें gdal2tiles.py
mdsumner

जवाबों:


14

आप एक साधारण शेल स्क्रिप्ट लिख सकते हैं और टाइल्स को काटने के लिए gdal_translate उपयोगिता का उपयोग कर सकते हैं। मैक पर, उसकेसे GDAL बिल्ड प्राप्त करें । विंडोज पर, GDAL पाने का सबसे अच्छा तरीका OSGeo4W इंस्टॉलर है । निम्नलिखित स्क्रिप्ट में, आपको निम्नलिखित चीजों को बदलने की आवश्यकता है

  • अपने स्रोत jp2 X और Y आयाम के साथ XDIM और YDIM
  • अपने सिस्टम पर वास्तविक पथ के साथ gdal_translate
  • अपनी इनपुट फ़ाइल के पथ के साथ input.jp2।

Script.sh नामक टेक्स्ट फ़ाइल में स्क्रिप्ट को सहेजें। एक टर्मिनल खोलें और 'bash script.sh' चलाएं। जो टाइलों को निर्देशिका में टाईल्स बनाएगा / जिन्हें टाइल्स कहा जाएगा /। स्क्रिप्ट आपके उद्देश्य के लिए थोड़ा संशोधन के साथ यहां से कॉपी की गई है

#!/bin/bash
mkdir tiles

XDIM=24000
YDIM=24000
BLOCKSIZE=2048
XPOS=0
YPOS=0
BLOCKNO=0
while [ $YPOS -le $YDIM ]
do
while [ $XPOS -le $XDIM ]
  do
    echo "$XPOS $YPOS : ${BLOCKNO}.tif"
    gdal_translate -of GTiff -srcwin $XPOS $YPOS $BLOCKSIZE $BLOCKSIZE input.jp2 \
      tiles/${BLOCKNO}.tif
    BLOCKNO=`echo "$BLOCKNO + 1" | bc`
    XPOS=`echo "$XPOS + $BLOCKSIZE" | bc`
  done
YPOS=`echo "$YPOS + $BLOCKSIZE" | bc`
XPOS=0
done

2
आह, कोई बात नहीं। खोजक JP2 प्रारूप के बारे में नहीं जानता, इसलिए यह मदद नहीं करेगा। आपको JPDs पढ़ने के लिए GDAL लाइब्रेरी की आवश्यकता है। यदि आपने मेरे उत्तर में लिंक से GDAL स्थापित किया है, तो आप उस जानकारी को प्राप्त करने के लिए 'gdalinfo' कमांड का उपयोग कर सकते हैं। मेरे सिस्टम पर, GDAL /Library/Frameworks/GDAL.framework/Versions/1.9/Programs/gdalinfo पर है। gdalinfo <path / to / your / jp2> चलाएं और यह आयामों की रिपोर्ट करेगा। इसी तरह से काम करने के लिए स्क्रिप्ट में gdal_translate का पूरा पथ जोड़ें।
स्थानिक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.