問題タブ [envi]
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.
java - JavaでHDR環境イメージを読み取る方法(GDALまたはOpencvを使用)?
160 バンドの HDR 環境イメージがあり、このイメージのサイズは 4 GB です。各ピクセル (行、列) の各バンドには、関連する double 値 (反射率値) があります。さらに、各ピクセルには地理的なポイントが関連付けられています。
RASTERなどのRパッケージで読めます。ただし、私のアプリケーションは Java で作成され、HDR Envi 画像を読み取るために誰かがライブラリ (OpenCV など) を使用したかどうかを知りたいです。Java の他のライブラリも受け入れます。
HDR 画像の各バンドおよび各ピクセルの反射率値と地理的位置を読み取る必要があるだけです。つまり、ピクセルには 160 の異なる反射率の値があり、グラフを生成します (帯域 X 反射率)。Javaで行うことは可能ですか?お願いします、それを行うにはいくつかの例が必要です。
image - HDR Envi 画像を PNG 画像に変換する方法 (GDAL を使用)
4GB の ENVI 画像を PNG 画像 (つまり、RGB ファイル) に変換して視覚化しようとしています。.hdr ヘッダー ファイルによると、それを行うデフォルトのバンドは {55, 41, 12} です。
ただし、 gdal_translateを使用しています。応答として、いくつかの空白のリスクがある黒い画像を受け取りました。
次のコマンドラインを使用しています。
私が間違っていることは何ですか?オプション -ot Byte、-ot Uint16 を入れるために、バンドの順序を変更しようとしましたが、成功しませんでした...
また、Java 言語を使用してこの画像を変換しようとしましたが、成功しませんでした。必要に応じて、ソース コードもここに配置できます。
更新 1
画像の完全な情報は次のとおりです (gdalinfo を使用):
Body 制限のため、一部の情報を省略しています。
idl - ループ内の出力ファイルに名前を付けるための文字列の後に変数を挿入しますか? ENVI/IDL
ENVI/IDLは全くの初心者ですが、
ループ内の出力ファイルに名前を付けるために変数を文字列に挿入するにはどうすればよいですか?
さまざまな値とパラメータの組み合わせ、つまりガンマとペナルティ係数を使用して、サポート ベクター マシン分類器をループしようとしています。これは私が考えていたことです
ガンマ=1.167
ペナルティの場合=25,1000,25
ENVI_DOIT, 'ENVI_SVM_DOIT', DIMS=配列, FID=fid , KERNEL_GAMMA=ガンマ, OUT_NAME='xxx' , PENALTY=ペナルティ, POS=配列, ROI_IDS=配列
この OUT_NAME='xxx' では、'xxx'gammapenalty を使用したいと思います (ペナルティはループで変化します。
事前にありがとう、私はそれが非常に簡単な質問であることを知っています.
matlab - MATLAB で多角形のエッジを抽出する
ENVI で作成された関心領域 (ROI) ファイルがありますが、これは多角形の不規則な形状で構成されています。ベクターファイルで保存しようとすると、ポリゴンの中に数本の線が表示されました。私が欲しいのは、ポリゴン エッジの 1 行だけです。MATLAB を使用して ROI のエッジをラインで抽出したいと思います。エッジを抽出できるコードはありますか? いくつかのサイトで検索しましたが、見つかりませんでした。MATLAB コードが含まれている可能性があると思います。
python - Python IDL ブリッジ: Envi 関数
私の目的は、IDL で記述されたスクリプトを Python に使用することです。
IDL コード:
上記のコードは IDL コマンド プロンプトで起動され、正しく動作します。次のようなPythonスクリプトを作成したい:
- オプション 1) 上記の idl .pro スクリプトを起動します
- オプション 2) IDL to Python Bridge シンタックスを使用します。
最初のケースでは、subprocess.call("idldirectory\idl.exe")
コマンドを使用して、IDL プロンプトを Windows コマンド プロンプトで開くことができます。しかし、単純な のような IDL 関数を実行することはできませんPRINT, 'hello'
。
2 番目のケースでは、次の poython コードを記述します。
命令e=IDL.ENVI()
は正しく機能し、実際に Envi の設定が開始されます。
命令msi_file = """IDL.Filepath(mydata.tif", ROOT_DIR = 'mydirectory')"""
は正しく機能します。
私の問題は OpenRaster 命令にあります。これは ENVI 命令であり、IDL 命令ではありません。そのため、IDL.OpenRaster が機能せず、解決策がありません。
誰かが私を助けることができますか?ありがとうございました。ロレンツォ
c - バンド シーケンシャル モードでピクセル ブロックを書き込めません
タイプ bsq (バンド シーケンシャル) のインターリーブを含む ENVI イメージ ファイル (.hdr ラベル付き) を使用しています。約350MBの画像の主成分変換をしようとしています。そのためには、小さなメモリ ブロックで個別に処理する必要がありました。以下のコードは、ファイルがメモリの 1 ブロックだけで処理できる場合、期待どおりに機能します。ただし、複数回の繰り返しが必要な場合は、最後のブロックのみが期待どおりに出力されます。つまり、前のすべてのブロックは、同じピクセルが何度も繰り返されているかのように書き込まれます。
ここに書き込み機能があります。
予期しない動作は、この関数自体または pca_xform 関数での不適切な呼び出しが原因であるという結論に達しました。これを行うには、単純に、ピクセルを順番に書き込む (bip インターリーブ) 挿入された次のコードを使用しました。
ただし、出力ファイルをバンド シーケンシャル ファイルとして保持したいと考えています。私は解決策を見つけるために多くの時間を費やし、あちこちでコードを微調整しましたが、問題の解決策はまだわかりません。
header - 環境設定ヘッド機能の使い方は?
がわかりませんenvi_setup_head
。IDLコード形式で書くのを手伝ってくれる人はいますか?
IDL で作成されたマップがあり、ENVI で処理する必要があります。画像をフォルダに保存して ENVI で開く方法がわかりません。誰もそれを行う方法を知っていますか?
r - R でラスター計算を実行する方法
放射測定ラスターを処理しています。すでに 2 つの別々のファイルに 2 つのバンドを書きました。
私が試したとき
エラーは「バイナリ演算子への非数値引数」として発生しますラスターを数値引数に変換するにはどうすればよいですか?