ROI_PAC主頁上提供的安裝方法比較繁瑣,在Ubuntu下面可以比較簡單地完成整個安裝。
文章中涉及到命令大家不要硬敲,要靈活運用tab鍵補全。
0)ROI_PAC安裝需要gcc,gfortran,perl環境,所以先看看這幾個環境安裝得怎麼樣,如果已經安裝了,不要運行下面的命令。
$ sudo apt-get install gcc gfortran perl
1) ROI_PAC必須先安裝fftw。目前最新版是3.3,下載地址。
免費下載地址在 http://linux.linuxidc.com/
用戶名與密碼都是www.linuxidc.com
具體下載目錄在 /pub/2011/06/21/Ubuntu下安裝doris及相關軟件教程/
$ tar xzfv fftw-3.3.tar.gz
$ cd fftw-3.3
$ ./configure --enable-float
//對於P3以上的多核心cpu,這條命令可以優化為 $./configure --enable-float --enable-sse --with-combined-threads
$ make
$ sudo make install
//不在configure中指明安裝目錄時,fftw默認安裝到/usr/local/lib和/usr/local/include裡面,需要超級權限。
安裝好fftw以後設定兩個環境變量,ROI_PAC需要
$ export FFTW_LIB_DIR=/usr/local/lib
$ export FFTW_INC_DIR=/usr/local/include
2)下載ROI_PAC,並安裝。
ROI_PAC的下載比較麻煩,我是在cdsn上下載的,謝謝資料分享人caozhentan。
下載的是ROI_PAC_3_0_1.tgz
$ tar xzfv ROI_PAC_3_0_1.tgz
$ cd ROI_PAC_3_0_1
$ cd ROI_PAC
$ ./configure
//如果gcc,gfortran,perl環境都安裝好,fftw及環境變量設置也沒有問題,那麼這步是不會有問題的
$ make
$ sudo make install
3) 修改PATH變量,一勞永逸。
$ cd
//回到登錄目錄
$ vi .bashrc
//不喜歡vi的可以用gedit,$ gedit .bashrc
將下面四行加到文件的末尾
export INT_BIN="/usr/local/bin"
export INT_SCR="/usr/local/share/roi_pac"
export FFTW_LIB="/usr/local/lib"
export PATH=$PATH:$INT_BIN:$INT_SCR:$FFTW_LIB
如果你熟悉shell,可以修改這四行。
對於我來說,我在安裝doris的時候PATH中已經設置了/usr/local/bin,所以我第一行不需要了,最後一行也改動了。
3e)這樣就安裝好了ROI_PAC 3.0.1,測試和使用方法略
4)安裝ROI_PAC 3.0.1的兩個補丁
4.1)第一個補丁安裝方法在http://www.roipac.org/ALOS_PALSAR 下載make_raw_alos.pl,拷貝到/usr/local/share/roi_pac目錄中。
但是使用中會提示 perl^M找不到。原因是make_raw_alos.pl是dos格式,需要轉換為unix格式。
如果是第一次安裝,請遵照下列命令
$ wget http://www.roipac.org/ALOS_PALSAR?action=AttachFile&do=get&target=make_raw_alos.pl
//可以直接用浏覽器在http://www.roipac.org/ALOS_PALSAR找到相關鏈接,另存為到登錄目錄。
$ sudo apt-get install tofrodos
//安裝 dos和unix格式轉換工具
$ fromdos make_raw_alos.pl
//轉換成unix格式,去掉^M
$ chmod a+x make_raw_alos.pl
//加上執行權限
$ sudo mv make_raw_alos.pl /usr/local/share/roi_pac
//把文件移到相應位置
4.2)第二個補丁是到ROI_PAC/fip目錄下編譯add_rmgAmpPhs.c,並且拷貝到/usr/local/bin目錄下。
但是編譯會出錯。請遵照下面命令
$ cd ROI_PAC_3_0_1/ROI_PAC/fip
//我是在登錄目錄解壓ROI_PAC的,進入fip目錄
$ vi add_rmgAmpPhs.c
把下面一行內容加到文件第三行,可以用gedit add_rmgAmpPhs.c
#include <stdlib.h>
$ gcc -o add_rmgAmpPhs add_rmgAmpPhs.c
//編譯
$ chmod a+x add_rmgAmpPhs
//加上執行權限
$ sudo mv add_rmgAmpPhs /usr/local/bin
//把文件移到相應位置
這樣兩個補丁也安裝完成。