問題タブ [satellite-image]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - Matlab を使用して衛星のトゥルー カラー画像を作成する
matlab を使用して衛星データからトゥルー カラーの RBG 画像を作成しようとしていますが、その方法がわかりません。
疑似カラー RGB 画像は単純で、赤、緑、青に適切なチャネルを使用するだけで作成できます。
この場合、0 から 1 の範囲の衛星チャネルからの反射率を使用しているため、元のデータを変更する必要はありません。
しかし、トゥルーカラー画像をプロットしようとすると、非常に苦労します。
文献によると、次のプロファイルは、MERIS レベル 1b データ プロダクト (私が使用しているデータ) から適切な RGB 画像を生成するはずです。赤、緑、青の成分の線形結合は、CIE 1931 色空間の等色関数に基づいています。
放射輝度は 0 から 400 までの実際の値 (倍率を適用) であるため、RGB 配列 (0-1 または 0-255) を正規化して画像を作成する必要があると思います。
しかし、正規化を自分で行ったり、im2uint8 を使用したりするだけでは、適切な画像が生成されません。
私はカラー プロファイルに慣れていないため、すべて間違っている可能性があります。CIE rgbの組み合わせ(上記の式から得ていると思われるもの)を直接使用して画像を作成する方法はmatlabにありますか?
matlab と衛星データを使用した画像に精通している人はいますか?
ありがとう!
php - PHPカール履歴書のダウンロード
現在、esa の Copernicus/Sentinel プロジェクトから curl で衛星画像をダウンロードしようとしています。残念ながら、ダウンロードは約 90% で停止し続け、php スクリプトは内部サーバー エラー (500) を返します。
したがって、特定のバイト数でダウンロードを再開したいと思います。esa サーバーは http-range-header (CURLOPT_RANGE) を無視するだけで、CURLOPT_RESUME_FROM も何も変更しないようです。
Google Chrome を使用してファイルを手動でダウンロードすると、ダウンロードも中断されますが、しばらくすると続行されます。
したがって、Google Chrome がダウンロードを再開できる場合は、curl でもダウンロードを再開できるはずです。それを行う方法について何か助けていただければ幸いです。
詳細:
ダウンロードしようとしているファイルはこちら(420MB)、アクセスするには、scihub.esa.int/dhus/ で登録する必要があります。
Content-Type はapplication/octet-stream
私のコードです:
それは小さなファイルに対して完全に機能し (いくつかの画像と pdf ファイルでテストしました)、ほとんどの衛星画像をダウンロードすることもできます (最初の 380MB がダウンロードされます)。タイムアウト値も増やしてみましたが、スクリプトは 5 分に達するずっと前に終了します。
試しcurl_setopt($open_file, CURLOPT_RESUME_FROM, 1048576);
てみcurl_setopt($open_file, CURLOPT_RANGE, "1048576-");
ましたが、ファイルは常に同じバイトで始まります。
編集:
質問には答えられませんが、この特定のケースでは回避策が見つかりました。したがって、誰かがこれを読んで、たまたま cURL を使用してこれらの衛星画像をダウンロードしたい場合は、次のようにし
ます。画像ファイルだけでなく、いくつかの追加データを含む zip ファイルをダウンロードすると、ダウンロードは停止し続けますが、とcurl_setopt($open_file, CURLOPT_RESUME_FROM, $bytes_already_loaded);
以前にロードされたバイトをスキップして、ダウンロードを再開することができます (これはイメージ ファイルでは不可能です)。したがって、画像ファイルの代わりにこのリンクを使用してください。
java - ALOS 衛星プロダクトから PNG への変換の問題 (回転の欠落)
BEAM Java APIを使用して ALOS AVNIR-2 プロダクトの PNG クイックルックをエクスポートしようとしています。次の図は、beam の GUI に表示される製品の RGB プレビューを示しています。
ご覧のとおり、ジオコーディングのため、画像は直立していません。製品のクイックルックをエクスポートするための非常に単純な Java プログラムを開発しました。
プログラムは動作しますが、プログラムから取得したすべての PNG 画像は、次のような直立した PNG 画像です。
これで、PNG 画像内にジオコーディング情報を含めることはできないことがわかりました。画像の同じ「回転」を再現するだけで済みます。何か案が?
matlab - Matlab イメージの NaN 値に異なる色を割り当てる
私は Matlab で衛星画像を扱っており、Net Radiation を計算するためのコードを書いています。出力には、値を持つ行列の形式で画像が含まれNaN
ます。次を使用してプロットしようとすると:
値に 0 と同じ色を割り当てNaN
ます。これらの値を別の色に割り当てる方法はありますか?
また、マトリックスを画像として保存したいのですが、その値が変更されない形式で...おそらくASCIIです。行列を ASCII に変換するツールはありますか?
pyephem - PyEphemで衛星画像の位置を計算するには?
TLE から地球観測衛星のエフェメリスを取得しているので、衛星の位置 (緯度/経度) を取得できます。ドキュメントには ISS の良い例があり、それがどのように行われるかを示しています。
しかし、私が実際に求めているのは、衛星のセンサーが指している地表のポイントの位置です。センサーが飛行方向に対して垂直に向いていると仮定すると、衛星の傾きを使用して方位角を計算できるはずです。次に、衛星のセンサーが地面を指すために使用している角度についてのアイデアがあります。いくつかの単純なジオメトリで、必要な高度が得られるはずです。
問題は、これら 2 つのことをどのようにつなぎ合わせるかです。compute(observer) 計算の例では、場所の高度と方位角 (緯度/経度) が返されます。しかし、それを逆にするものは見つかりませんでした。これについてどのように考えていますか?手がかりは大歓迎です。
r - cfmaskフラグデータを使用してランドサット画像時系列のノイズ値を補間する方法は?
Landsat 画像時系列のノイズ値を 2 のタイム スパン (xt+1 と xt-1) の平均で補間する関数を作成する必要があります。
雲と影を検出するために fmask 製品を使用しており、補間が適用されます。
1 つの時系列の場合:
c2 は fmask 時系列のベクトル (雲の場合は 2、影の場合は 4) であり、t2 は evi 時系列のベクトルであるため:
ただし、2 つのパラメーターを持つ関数では機能しないため、ラスター パッケージの calc 関数を使用してこれを行うことはできません。
これに対処し、ラスター時系列のすべてのピクセルにこの補間を適用する方法について何か提案はありますか?
私はこれを試していますが、まだ機能していません: