<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">かやま 様<br>
      <br>
       下記、ご連絡ありがとうございます。<br>
      <br>
       ご指摘の通り、tiffに変換して使う必要はないですね。<br>
       前のメールを下記終わってから気が付き、gdal2tiles.pyのソースを見ながら、もう一丁<br>
      速くならないか?と、思案をして・・・<br>
      <br>
       最初は、zoomレベルを0-16まで作っちゃえ!と思って、<br>
      <br>
       gdal2tiles.py -p mercator -z 0-16 merge.vrt<br>
      <br>
       とかやっていたのですが、止めました。<br>
      <br>
       取りあえず、背景図目的だからある程度粗くても良いだろうと思い<br>
      <br>
       gdal2tils.py -r near -p mercarot -z 0 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 1 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 2 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 3 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 4 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 5 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 6 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 7 merge.vrt &<br>
       gdal2tils.py -r near -p mercarot -z 8 merge.vrt <br>
      <br>
       と打ち込んで、なんちゃってパラレル・・・<br>
       gdal2tiles.pyを逆順に処理するスクリプトを別で作って走らせる<br>
      方法なんかも記載されていましたが、失敗して後で泣いてるより、<br>
      より確実な方法?ということで、こいつをやってみています。<br>
       zoomレベル5くらいまでは、そこそこのペースで返って来ていましたが、<br>
      6からは重くなり出して、8では1時間くらいかな?<br>
      <br>
       CPU負荷をモニタリングしながら、100%でベタになっているコアを眺めて、<br>
      それでもディスクのアクセスがガリガリやっているので、ディスクアクセスが<br>
      ボトルネックですね。<br>
      <br>
       処理の最中にRAM DISKを検討して、容量64GBでは足りない・・・と断念。<br>
       というより、この為だけに64GBものRAMを突っ込む気にはなれなかったw<br>
       でも、SSDが欲しくなってきました(#^.^#)<br>
      <br>
       最後になりましたが、ご教示頂きありがとうございました。<br>
      <br>
      以上<br>
      <br>
      (2013/08/12 13:50), Yoichi Kayama wrote:<br>
    </div>
    <blockquote
cite="mid:CABCH-_mkQSGP89Cspev3KGqVxqgZETS5XVHtgvZY-L1keV9hzQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">斉藤様
        <div><br>
        </div>
        <div>かやまと申します</div>
        <div><br>
        </div>
        <div>画像のタイル化ですが、gdal2tiles.py  とかでやるならば入力の元画像にvrtが利用できます</div>
        <div>からvrtをtiffに変更する必要は無いと思います。</div>
        <div><br>
        </div>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">
          2013年8月12日 12:20 斎藤 直正 <span dir="ltr"><<a
              moz-do-not-send="true" href="mailto:nsaito@msk-web.co.jp"
              target="_blank">nsaito@msk-web.co.jp</a>></span>:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            山手 様<br>
            <br>
             ご連絡が遅くなってしまって済みせん。<br>
             ご教示頂きありがとうございます。<br>
            <br>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              ・gdalwarpで -co TILED=YES -co BLOCKXSIZE=512 -co
              BLOCKYSIZE=512オプションを追加する<br>
            </blockquote>
             この方法も試してみました。(オプションBLOCKSIZEY⇒BLOCKYSIZEに変更)<br>
             確かに速くなります。<br>
             ただ、もう一声\(^o^)/という感じでしょうか(^^ゞ<br>
             もう少し小ぶりなデータセットならば良いかと思いました。<br>
             画像の結合だけに着目していたのそう思いましたが、gdalwarp自体を他の用途 に使う分には<br>
            極めて有効に使えると思っています。<br>
            <br>
             次に、
            <div class="im"><br>
               <br>
              <blockquote class="gmail_quote" style="margin:0 0 0
                .8ex;border-left:1px #ccc solid;padding-left:1ex">
                gdalbuildvrt -hidenodata -vrtnodata "0 0 0"
                ../dest_dir/merge.vrt *.tif<br>
                で仮想的にマージ画像を作成することができます。<br>
                大きなファイルが扱いづらそうだと思われる場合にどうぞ。<br>
                <br>
                もし効果がありましたらお教えいただけると大変助かります。<br>
              </blockquote>
            </div>
             -hidenodata -vrtnodate・・・・の効果が今一つ航空写真を使っている為か見 えなかったので、<br>
            それらのオプションを外して<br>
            <br>
            gdalbuildvrt ../dest_dir/merge.vrt *.tif  <br>
            <br>
             として試してみました。<br>
            <br>
             最初の段階で、大量のファイルで以下のエラーが数百個は出たかな(^^ゞ<br>
             Warning 6: gdalbuidvrt dose not support heterogenous
            projection. Skipping xxxx.tif<br>
             vrtファイルもまともに生成されませんでした。<br>
             原因は、元のオルソフォトは投射方法が無秩序にバラバラであったり、登録されて<br>
            いなかったり・・・これが原因だと思い。<br>
             全てのファイルをシェルスクリプトで変換(元ファイルは、.tifと.tfwで構成 されていたが、<br>
            出力結果は.tifへと合成してくれるのでこれも助かりましたw)<br>
            <br>
             gdal_transkate -a_srs epsg:xxxx srcxxx.tif
            ../geotiff/dstxxxx.tif<br>
            <br>
             その後、上記のgdalbuidvrtを実行したら、あっという間に合成してくれました。<br>
            <br>
             更に、タイル画像を作るのに必要なtifファイルを作りたかったので、以下の<br>
            コマンドでtifファイルを生成。<br>
            <br>
             gdal_translate merge.vrt merge.tif<br>
            <br>
             数時間掛かったと思いますが、寝落ちしている間に作ってくれていましたw<br>
            <br>
             問題は、無事画像が生成されているのか?心配でしたので、睡魔と闘い<br>
            ながら・・・縮小画像を生成。<br>
            <br>
             gdalwarp -tr 100 100 merge.tif dst_short.tif<br>
            <br>
             激粗の画像が生成され、取りあえず画像生成が上手く行っていることを確認。<br>
             後で、入力ファイルをmerge.vrtに変えてやっても出来ることを確認しました。<br>
            <br>
             結論としては、手順は増えますが・・・・<br>
            ・GDAL_CHASHMAXの値を適当な値にする。(これは必須ですね。)<br>
            ・大きなファイルを結合する時は、場合によって、gdalbuildvrtで仮想ファイル を作成<br>
            ・gdal_translateで実画像化<br>
            <br>
             という手順が最も速く実現出来ました。<br>
            <br>
             小規模だと、そのままgdalwarpでやってもトータル時間はあまり変わらない?かも<br>
            知れませんが、ファイル数多かったり、最終的に出来あがる結合後のファイルが<br>
            大きくなる様ならば、gdalbuidvrtを使うべきと思いました。<br>
            <br>
             御蔭さまで、無事画像結合が現実的な時間で出来るようになりました。<br>
             次は、画像のタイル化に挑戦予定・・・というか、既にヤバそう(^^ゞ<br>
            <br>
             ありがとうございました。<br>
            <br>
            以上
            <div class="HOEnZb">
              <div class="h5"><br>
                <br>
                (2013/08/08 23:58), <a moz-do-not-send="true"
                  href="mailto:arctic_tern@mf-atelier.sakura.ne.jp"
                  target="_blank">arctic_tern@mf-atelier.sakura.ne.jp</a>
                wrote:<br>
                <blockquote class="gmail_quote" style="margin:0 0 0
                  .8ex;border-left:1px #ccc solid;padding-left:1ex">
                  斎藤様<br>
                  <br>
                  山手と申します。<br>
                  <br>
                  あまり効果がないかもしれませんが、以下の2つも試してみていただけますでしょうか。<br>
                  <br>
                  ・gdalwarpで -co TILED=YES -co BLOCKXSIZE=512 -co
                  BLOCKSIZEY=512オプションを追加する<br>
                  <br>
                  TILED TIF形式にすることで、キャッシュされる画像範囲がブロック単位になるはずです。<br>
                  ブロックサイズはデフォルトでは256ですが、変更したい場合は上のようにしてください。<br>
                  <br>
                  ・ワープ画像は個別に作って、マージ画像をVRTにする<br>
                  <br>
                  gdalbuildvrt -hidenodata -vrtnodata "0 0 0"
                  ../dest_dir/merge.vrt *.tif<br>
                  で仮想的にマージ画像を作成することができます。<br>
                  大きなファイルが扱いづらそうだと思われる場合にどうぞ。<br>
                  <br>
                  もし効果がありましたらお教えいただけると大変助かります。<br>
                  <br>
                  以上、よろしくお願い申し上げます。<br>
                  <br>
                  <br>
                  <blockquote class="gmail_quote" style="margin:0 0 0
                    .8ex;border-left:1px #ccc solid;padding-left:1ex">
                    岩崎 様<br>
                    <br>
                     早々のご回答ありがとうございます。<br>
                    <br>
                     これやってたら、1年掛かるやんけー(~_~;)<br>
                     と思っていたので、ありがとうございます。<br>
                    <br>
                     最悪、メモリディスク作って・・・とか、分割して結合も考えたりはしていた<br>
                    のですが、<br>
                    ブログの内容も拝見させて頂き、十分理解出来ました。<br>
                    <br>
                    <blockquote class="gmail_quote" style="margin:0 0 0
                      .8ex;border-left:1px #ccc solid;padding-left:1ex">
                      それと、gdalwarpで画像を結合する場合、初めに結合した範囲のデータを作って、その範囲のデータを
                      すべて処理するようにも思います。<br>
                    </blockquote>
                     これも確かにそんな動きですね。<br>
                     なんか、毎度毎度同じような初期化やってるような感じで、無駄じゃないのか<br>
                    なぁ?もっと効率良く出来ないのかな?<br>
                     オプションで逃げれないのかな?とか考えていましたが・・・<br>
                    <br>
                     ありがとうございます。<br>
                     早速、やってみます。<br>
                    <br>
                    以上<br>
                    <br>
                     <br>
                    <br>
                    (2013/08/08 23:02), Nobusuke Iwasaki wrote:<br>
                    <blockquote class="gmail_quote" style="margin:0 0 0
                      .8ex;border-left:1px #ccc solid;padding-left:1ex">
                      すみません、途中で送信してしまいました。<br>
                      <br>
                      以下のブログに解説が書かれています。<br>
                      <a moz-do-not-send="true"
                        href="http://d.hatena.ne.jp/yellow_73/20110427"
                        target="_blank">http://d.hatena.ne.jp/yellow_73/20110427</a><br>
                      <br>
                      それと、gdalwarpで画像を結合する場合、初めに結合した範囲のデータを作って、その範囲のデータを
                      すべて処理するようにも思います。場合によると、四分割なり、八分割なりの結合ファイルを作成して、それを
                      結合した方がいいかもしれません。<br>
                      結合結果が10万✕10万ピクセルであれば、一晩で結合できました。<br>
                      <br>
                      詳しいことは、どなたかフォローいただければと思います。<br>
                      <br>
                      2013年8月8日 22:54 Nobusuke Iwasaki <<a
                        moz-do-not-send="true"
                        href="mailto:wata909@gmail.com" target="_blank">wata909@gmail.com</a>>:<br>
                      <blockquote class="gmail_quote" style="margin:0 0
                        0 .8ex;border-left:1px #ccc
                        solid;padding-left:1ex">
                        斎藤さま<br>
                        <br>
                        岩崎と申します。<br>
                        <br>
                        私のやった経験の範囲なのですが、GDAL_CACHEMAX で使用するメモリ量を多くすると、かな
                        り早くなりました。<br>
                        <br>
                        2013年8月8日 22:25 斎藤 直正 <<a
                          moz-do-not-send="true"
                          href="mailto:nsaito@msk-web.co.jp"
                          target="_blank">nsaito@msk-web.co.jp</a>>:<br>
                        <blockquote class="gmail_quote" style="margin:0
                          0 0 .8ex;border-left:1px #ccc
                          solid;padding-left:1ex">
                          斎藤と申します。<br>
                          初めて投稿させて頂きますの、不躾な点があるかと思いますが<br>
                          宜しくお願いしますm(_)m<br>
                          <br>
                            現在、700枚程の航空写真をタイル画像にしようと思い、まずは画像合成?結合<br>
                          からということで、Windows
                          7からgdal_merge.pyを使用してみたところ、ファイ<br>
                          ル数が<br>
                          多すぎて、コマンドラインからはみ出る様なエラーが発生し上手く利用できませ<br>
                          んでした。<br>
                          <br>
                            そこで、Linux(CentOS 6.4)にgdalをソースからインストールして、<br>
                          gdalwarpを以下のコマンドで実行してみたところ、とてつもなく時間が掛かって<br>
                          しまい困惑しています。(24時間で2枚しか処理できませんでした)<br>
                            gdalは gdal-1.10.0を使用しています。<br>
                          <br>
                          # gdalwarp *.tif ../dest_dir/all.tif
                          -dstnodata -9999 -srcnodata -9999<br>
                          Creating output file that is 214000P x
                          195000L.<br>
                          Processing input file 09xxxx1.tif.<br>
                          for band 1, destination nodata value has been
                          clamped to 0, the original<br>
                          value being out of range.<br>
                          0...10...20...30...40...50...60...70...80...90...100
                          - done.<br>
                          Processing input file 09xxxx2.tif.<br>
                          for band 1, destination nodata value has been
                          clamped to 0, the original<br>
                          value being out of range.<br>
                          0...10...20...30...40...50...60...70...80...90...100
                          - done.<br>
                          <br>
                          <以下省略><br>
                          <br>
                            gdalは以下のconfigureオプションで作成しています。<br>
                          # ./configure --with-perl --with-php
                          --with-python --with-expat<br>
                          --with-expatlib=/usr/lib64 \<br>
                          --with-poppler --with-expatinc=/usr/include
                          --with-libtiff=/usr<br>
                          --with-geotiff=/usr/ \<br>
                          --with-threads<br>
                          <br>
                          # make<br>
                          # make install<br>
                          <br>
                            ちなみに、<br>
                            --with-expatlib=/usr/lib64<br>
                            --with-expatinc=/usr/include<br>
                            については、configure --helpで見ると、<br>
                          --with-expat-lib=/usr/lib64<br>
                          --with-expat-inc=/usr/include<br>
                          であるべきなのですが、--with-expat-libと「expat」と「lib」もしくは<br>
                          「inc」の間に<br>
                          「-」を入れるとエラーではじかれるので、間の「-」が無いのが正しそうだと<br>
                          思っています。<br>
                          <br>
                          その後、pythonのツールを有効にしようと思い、以下のコマンドを実行しています。<br>
                          <br>
                          # cd swig/python/<br>
                          # easy_install GDAL<br>
                          # python setup.py build<br>
                          # python setup.py install<br>
                          <br>
                          各種必要なライブラリ等は、yumやrpmなどでインストールを施してインストール<br>
                          したつもりです。<br>
                          <br>
                            やり方に問題があるのでしょうか?<br>
                            マシン環境が悪いのか?<br>
                          <br>
                            gdal以外の方法でも構わないので、高速化させる方法があればご教示頂けない<br>
                          でしょうか?<br>
                          <br>
                            ちなみに、ファイル数を70ファイルぐらいに限定し、コマンドを以下の様に<br>
                          少し変更してみたのですが、それだと、1時間で3ファイルぐらいは処理してく<br>
                          れているようです。<br>
                          <br>
                          # gdalwarp *.tif ../dest_dir/all.tif
                          -dstnodata -9999 -srcnodata -9999<br>
                          -multi<br>
                          <br>
                          -multiを追加しました。思い付きで、並列処理してくれるのかな?と思っていま<br>
                          すが、<br>
                          違うのかな?速くなった気がほとんどしないような・・・<br>
                          <br>
                          以上、宜しくお願いします。<br>
                          <br>
                          <br>
                          --<br>
                          /////////////////////////////////////////////////////////<br>
                          株式会社 エムエスケー<br>
                          斎藤 直正<br>
                          TEL:0598-51-7471 / FAX:0598-52-4849<br>
                          <a moz-do-not-send="true"
                            href="mailto:E-mail%3Ansaito@msk-web.co.jp"
                            target="_blank">E-mail:nsaito@msk-web.co.jp</a>
                           URL:<a moz-do-not-send="true"
                            href="http://www.msk-web.co.jp"
                            target="_blank">http://www.msk-web.co.jp</a><br>
                          /////////////////////////////////////////////////////////<br>
                          <br>
                          _______________________________________________<br>
                          OSGeoJapan-discuss mailing list<br>
                          <a moz-do-not-send="true"
                            href="mailto:OSGeoJapan-discuss@lists.osgeo.org"
                            target="_blank">OSGeoJapan-discuss@lists.osgeo.org</a><br>
                          <a moz-do-not-send="true"
                            href="http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss"
                            target="_blank">http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss</a><br>
                        </blockquote>
                        <br>
                        --<br>
                        岩崎 亘典<br>
                      </blockquote>
                      <br>
                    </blockquote>
                    <br>
                    -- <br>
                    /////////////////////////////////////////////////////////<br>
                    株式会社 エムエスケー<br>
                    斎藤 直正<br>
                    TEL:0598-51-7471 / FAX:0598-52-4849<br>
                    <a moz-do-not-send="true"
                      href="mailto:E-mail%3Ansaito@msk-web.co.jp"
                      target="_blank">E-mail:nsaito@msk-web.co.jp</a>
                     URL:<a moz-do-not-send="true"
                      href="http://www.msk-web.co.jp" target="_blank">http://www.msk-web.co.jp</a><br>
                    /////////////////////////////////////////////////////////<br>
                    <br>
                    _______________________________________________<br>
                    OSGeoJapan-discuss mailing list<br>
                    <a moz-do-not-send="true"
                      href="mailto:OSGeoJapan-discuss@lists.osgeo.org"
                      target="_blank">OSGeoJapan-discuss@lists.osgeo.org</a><br>
                    <a moz-do-not-send="true"
                      href="http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss"
                      target="_blank">http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss</a><br>
                  </blockquote>
                  ><br>
                </blockquote>
                <br>
                <br>
                -- <br>
                /////////////////////////////////////////////////////////<br>
                株式会社 エムエスケー<br>
                斎藤 直正<br>
                TEL:0598-51-7471 / FAX:0598-52-4849<br>
                <a moz-do-not-send="true"
                  href="mailto:E-mail%3Ansaito@msk-web.co.jp"
                  target="_blank">E-mail:nsaito@msk-web.co.jp</a>  URL:<a
                  moz-do-not-send="true" href="http://www.msk-web.co.jp"
                  target="_blank">http://www.msk-web.co.jp</a><br>
                /////////////////////////////////////////////////////////<br>
                <br>
                _______________________________________________<br>
                OSGeoJapan-discuss mailing list<br>
                <a moz-do-not-send="true"
                  href="mailto:OSGeoJapan-discuss@lists.osgeo.org"
                  target="_blank">OSGeoJapan-discuss@lists.osgeo.org</a><br>
                <a moz-do-not-send="true"
                  href="http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss"
                  target="_blank">http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss</a><br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
/////////////////////////////////////////////////////////
株式会社 エムエスケー
斎藤 直正
TEL:0598-51-7471 / FAX:0598-52-4849
<a class="moz-txt-link-abbreviated" href="mailto:E-mail:nsaito@msk-web.co.jp">E-mail:nsaito@msk-web.co.jp</a>  URL:<a class="moz-txt-link-freetext" href="http://www.msk-web.co.jp">http://www.msk-web.co.jp</a>
/////////////////////////////////////////////////////////
</pre>
  </body>
</html>