프로그래밍 방식으로 Landsat 8 위성 이미지를 검색합니까? Satellite Images에 프로그래밍 방식으로 액세스하는 방법이

나는 이것을 스스로 찾을 수 없었지만 Landsat 8 Satellite Images에 프로그래밍 방식으로 액세스하는 방법이 있습니까?

USGS EarthExplorer 로 이동 하여 장면을 검색하고 찾아 볼 수 있으며 다운로드 할 수도 있습니다. 그러나 두 가지 이유로 내 컴퓨터에 다운로드하고 싶지 않습니다. 인터넷이 느리고 랩톱에 냉각 문제가 있습니다.

대신 데이터 처리를 위해 이미지를 “클라우드”인스턴스로 직접 전송하려고합니다. USGS에서 제공되는 이미지를 다운로드하여 처리 할 수 ​​있다면 좋을 것입니다.



답변

커맨드 라인 유틸리티 인 landsat-util에 대한 개발 시드의 블로그 게시물을 보았습니다.

위성 이미지를위한 전동 공구

탐사 – 폴더의 유틸리티는 GitHub의에서 포크 이진 준비에 OS 제공이 이동하지 않는 한 소스에서 컴파일 할 수 있습니다.

블로그는 간단히 다음과 같이 설명합니다.

Landsat 이미지를 쉽게 검색, 다운로드 및 처리 할 수있는 명령 줄 유틸리티입니다.

날짜, 클라우드 범위 % 및 기타 사항을 기준으로 검색하거나, 즉시 다운로드하거나, 이미지를 팬 샤프닝 (pansharpen)처럼 다운로드 한 후 이미지를 함께 스티치 할 수 있습니다.

다운로드하기 전에 이미지를 미리 볼 수 있습니다. 검색 명령은 각 이미지의 축소판 그림에 대한 링크를 제공합니다.

landsat search --cloud 4 --start "August 1 2013" --end "August 25 2014" country 'Vatican'

–pansharpen 플래그를 사용하면 처리하는 데 시간이 오래 걸리지 만보다 선명한 이미지가 생성됩니다.

landsat search --download --imageprocess --pansharpen --cloud 4 --start "august 11 2013" --end "august 13 2013" pr 191 031

이전에 다운로드 한 이미지에 대해 모든 처리를 수행 할 수도 있습니다.

landsat download LC81050682014217LGN00

landsat process --pansharpen /your/path/LC81050682014217LGN00.tar.bz

여기의 추가 정보 더 많은 정보와.


답변

EC2 또는 랙 스페이스 인스턴스를 시작하고 EarthExplorer 대량 다운로드 응용 프로그램을 설치하는 방법은 다음과 같습니다.

http://earthexplorer.usgs.gov/bulk/

프로그래밍 방식으로 작업을 제출하기 위해 POST 요청으로 EarthExplorer 서비스를 이용할 수 있습니다.

http://earthexplorer.usgs.gov/subscription/submit/

standingRequestName, frequency, subscription_start, subscription_end, search_start, search_end 매개 변수를 제공해야합니다. 이렇게하면 시작하게되지만 백도어처럼 느껴지고 EC2 인스턴스에서 실행되는 대량 다운로더 응용 프로그램이 더 좋고 시간이 덜 걸리는 옵션이 될 것입니다.


답변

Amazon EC-2 인스턴스를 시작하고 대량 다운로드를 설치하도록 동일한 작업을 수행하려고합니다. 그러나 내가 아는 한 그것은 그래픽 응용 프로그램이며 문서 대량 다운로드 자습서 의 어느 것도 터미널에서 사용할 수 있기를 바랍니다.

본인은 여기에 컬을 사용의 가능성에 대해 있지만, 그것은 반환 거부 (403) 액세스


USGS에 이메일을 작성한 후 공식 답변은 대량 다운로드가 대량 다운로드의 유일한 방법이라는 것입니다.

그러나 Mapbox의 Charlie Loyd는 또 다른 가능성을 썼습니다.

Google 스토리지는 또한 많은 Landsat 아카이브를 미러링합니다. “gsutil”(무료)을 설치 한 다음 센서 (예 : L8은 Landsat 8) 및 경로 / 행으로 색인화 된이 디렉토리를 나열 할 수 있습니다. gsutil ls gs : // earthengine-public / landsat /

경로와 행을 탐색 할 때 3 숫자 기반이라는 것을 기억해야합니다. 예를 들어 Path 210 Row 40이 필요한 경우 폴더 210을 찾은 다음 040을 찾아야합니다.


답변

이를 위해 bash 스크립트를 작성했습니다. xdotool 명령을 사용하여 코드 세그먼트에서 URL 및 마우스 위치와 버튼 클릭을 사용자 정의 할 수 있습니다. 소스 코드는 다음과 같습니다.

via : bash 재생 목록에있는 모든 최고 YTC

#!/bin/bash

echo " "

sudo apt-get install xdotool -y
sleep 2

echo " "
echo "# NASA/NOAA/NHC Hurricane Satellite Imagery Bot [H.S.I.B]"
echo "# Coded by Scott Hermann "
echo "[ YouTube: https://www.youtube.com/user/postulatedstate/videos/ ]"
echo " "

# * * Instructions * *
# 1] Click on map to select area to monitor.
# 2] Set delay variable ( time between saves )
# The script will now refresh and save the images-
# -every X seconds, and save using the filenames
# filename-X.jpg; filename-X.jpg; etc..

export PS1="\e[0;30m[\u@\h \W]\$ \e[m "
# make black prompt - color code=[0;30]

chromsat_loop()
{
 chromium -new-tab https://weather.msfc.nasa.gov
 sleep 2

 notify-send "Your browser will now open the NASA website. Select the section of earth to monitor via Satallite by clicking on it, and then enter Y or N (caps) into the terminal, or press the [Begin] button on the GUI."
 echo " "
}


get_settings()
{
  echo -n "Enter storm name: "; read stormname
  echo -n "Season? [ Ex: 2017 ] "; read season
  echo -n "Month "; read month
  # echo -n "data"; <- remember ;
  sleep 2
  echo " "
  echo "Checking to see if a database for hurricane $stormname of the $season season exist in the month of $month"
  sleep 2
  echo " "
  # if dir $season = true then confirm
  if [ -d /root/Desktop/$season ]; then
     notify-send "The hurricane season exist in the database."
     echo "The hurricane season exist in the database."
     echo " "
  else
     echo "It doesn't appear that this season is in the database. I will create it for you."
     mkdir /root/Desktop/$season
  fi

  # if dir $season/$month = true then confirm

  if [ -d /root/Desktop/$season/$month ]; then
     notify-send "The month entered has data in the database."
     echo "The month entered has data in the database."
     echo " "
  else
     mkdir /root/Desktop/$season/$month
  fi

  # if dir $season/$month/$stormname = true then confirm

  if [ -d /root/Desktop/$season/$month/$stormname ]; then
     notify-send "This storm is in the database."
     echo "This storm is in the database."
  else
     echo "Adding the storm to the database."
     notify-send "Adding the storm to the database."
     echo " "
     sleep 1
     mkdir /root/Desktop/$season/$month/$stormname
  fi
  echo " "
  sleep 2

  echo -n "Enter data retrieval delay variable: ( 1200 = 20 minutes ) "; read delay

  echo " "
  sleep 2

  echo " "
  echo "1] Chromium"
  echo "2] Firefox"
  echo "3] Qupzilla"
  echo "4] Modori"
  echo " "
  echo -n "Which Web-Browser are you using? "; read browser


  if [ "$browser" = "1" ]; then

       echo "Initializing NASA Data Transfer..."
       chromsat_loop
  fi

  if [ "$browser" = "2" ]; then

       echo "$browser set to Firefox"
  fi


# End Of Function
}

get_settings

# Note: Calling functions in bash -> fun_ction

# Create 4 functions for the 4 browsers it will support..



ready_ornot()
{
  notify-send "In 45 seconds, the script will begin data retrieval.. Go ahead and select the portion of the storm on the map that you wish to monitor. Save the first image to the directory on your desktop. It's listed under the year, the month, and the storm. From there, the bot will save the images to that folder."
  echo "In 45 seconds, the script will begin data retrieval.. Go ahead and select the portion of the storm on the map that you wish to monitor. It's listed under the year, the month, and the storm. From there, the bot will save the images to that folder."

  newloop=0
  until [ "$newloop" = "45" ]
  do
     sleep 1
     echo "Initializing data retrieval process in 45 seconds. @ $newloop second(s)...."
     newloop=`expr $newloop + 1`
  done

  notify-send "Initializing data retrieval process.. "
  echo "Initializing data retrieval process.."
  echo " "

}

ready_ornot

begin_dataretr()
{
 sleep 2
 notify-send "@ Data Retrieval Function."
 # url opened in new tab waiting
 # variables=value; = NO space [x]-> var = 1<-(wrong)
 forever=1
 looper=1
 while [ "$forever" == "1" ];
 do
     # refresh chromium page
     sleep $delay && echo $delay # 60 for test; 1800=30 mins
     # Save images after refresh;
     # plug\/ looper \/ variable in filenames
     # file1.jpg file2.jpg file3.jpg etc.


     # <!--#!/bin/bash-> to be modified and completed * * * * * * * * * #!/bin/bash -!>


     # CD to folder 
     # /root/Desktop/season/month/stornname
     # ( that should make the save as file dialog box open in our folder )
     echo " "
     echo "Done sleeping.."
     echo " "
     # xdotool getmouselocation --shell

     xdotool mousemove 765 438
     # mouse positioned to click on save file box
     # for loop through var to save file name as
     sleep 1
     xdotool click 1
     # text box clicked and waiting.
     sleep 1
     xdotool key F5
     sleep 7
     xdotool mousemove 953 229
     sleep 1
     xdotool click 1
     sleep 5
     xdotool click 3
     sleep 3
     xdotool key Down
     xdotool key Down
     sleep 2
     xdotool mousemove 983 261
     sleep 1
     xdotool click 1
     sleep 1
     # xdotool key Enter
     sleep 1
     xdotool mousemove 1146 763
     sleep 1
     xdotool click 1
     notify-send "New data retrieval has been saved to database.."

     # <!--#!/bin/bash-> to be modified and completed * * * * * * * * * #!/bin/bash -!>

 done
}
begin_dataretr
# no () when calling functions.
#  - - - - - -  - only when def them.


답변

https://github.com/olivierhagolle/LANDSAT- 다운로드

이 스크립트는 약간의 수정 (들여 쓰기 문제와 주석 / 변수가 프랑스어로되어 있음)이 매우 도움이되었습니다. 그러나 이미 아카이브에있는 데이터 만 다운로드 할 수 있습니다. 따라서 처리되지 않은 데이터의 경우 주문해야합니다. 나는 지금 그것을 자동화하려고 노력하고 있지만 천천히 시작합니다 (방금 30 분 전에 시작한 것처럼). 결국 데이터를 클라우드 서버로 다운로드하려고하지만 지금은 데스크탑에서 테스트하고 있습니다 (출력 디렉토리를 지정하면 파일이 자동으로 저장됩니다).

데이터가 제공되기 전에 데이터를 다운로드하는 데 관심이 있습니다. 특히 표면 반사 데이터가 버리기 전에 표면 반사 데이터 (USGS는 원시 데이터를 일시적으로 표면 반사로 처리하여 버리기 전에 일시적으로 처리하지만 일부는 아카이브에 저장됩니다) ). 전진 한 경우 알려주십시오.


답변

Esta plataforma é simples! 무료 다운로드 KMl e abra-o no google earth. 페스 키움 루가 전자 아차 라 경로 / 행 (루가 중앙 데 포지티브 이미지) 폰타 오 경로 / 행 케 아초 파라 오 루가 e 폰타 나 플라 타 포르 마.

이미지는 파라 수로 지역 아파 레 세라

구글 번역:

이 플랫폼은 간단합니다! KML을 다운로드하여 Google 어스에서 엽니 다. 장소를 검색하고 경로 / 행 (가능한 이미지의 중앙 장소)을 찾으십시오. 장소에 대해 찾은 경로 / 행을 플랫폼에 놓으십시오. 해당 위치의 모든 이미지가 나타납니다

http://georef.vantis.pt


답변