メインコンテンツ

このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。

RPCCoefficientTag

有理多項式係数タグ

説明

RPCCoefficientTag には、緯度、経度、高さの位置と画像内の行と列の位置の関係を記述する有理多項式係数 (RPC) TIFF タグが含まれています。

RPCCoefficientTag オブジェクトには、http://geotiff.maptools.org/rpc_prop.html で参照できるテクニカル ノート RPCs in GeoTIFF に記載されているタグ要素に対応する名前と許容値を持つプロパティが含まれています。

作成

  • georasterinfo または geotiffinfo 関数を使用して、 GeoTIFFファイルから RPCCoefficientTag オブジェクトを読み取ります。

  • map.geotiff.RPCCoefficientTag 関数 (ここで説明) を使用して RPCCoefficientTag オブジェクトを作成します。

説明

rpctag = map.geotiff.RPCCoefficientTag は既定の RPCCoefficientTag オブジェクトを作成します。

rpctag = map.geotiff.RPCCoefficientTag(tiffTagValue)RPCCoefficientTag オブジェクトを作成し、プロパティ値を tiffTagValue で指定された 92 要素のベクトルの対応する値に設定します。

入力引数

すべて展開する

RPCCoefficientTag プロパティの値。92 要素のベクトルとして指定されます。

データ型: double

プロパティ

すべて展開する

水平軸あたりのメートル単位の二乗平均平方根バイアス誤差。数値 -1 または非負のスカラーとして指定します。BiasErrorInMetersが指定されていない場合のみ、値は-1になります

データ型: double

数値 -1 または負でないスカラーとして指定される、メートル単位の二乗平均平方根ランダム誤差。RandomErrorInMeters が指定されていない場合のみ、値は -1 になります。

データ型: double

ピクセル単位のライン オフセット。非負のスカラーとして指定され、デフォルトの値は 0 です。

データ型: double

ピクセル単位のサンプル オフセット。非負のスカラーとして指定され、デフォルトの値は 0 です。

データ型: double

測地緯度オフセット(度単位)。数値スカラーとして指定されます。値の範囲は-90 <= value <= 90 です。

データ型: double

数値スカラーとして指定される測地経度オフセット(度単位)。値の範囲は-180 <= value <= 180 です。

データ型: double

数値スカラーとして指定される、メートル単位の測地高度オフセット。

データ型: double

ピクセル単位のラインスケール係数。正のスカラーとして指定されます。

データ型: double

正のスカラーとして指定されるピクセル単位のサンプル スケール係数。

データ型: double

測地緯度スケール(度)。範囲(0,90] の正のスカラーとして指定されます。

データ型: double

測地経度スケール(度)。範囲(0, 180] の正のスカラーとして指定されます。

データ型: double

測地高さスケール係数(メートル単位)。正のスカラーとして指定されます。

データ型: double

r(n) 方程式の分子の多項式の係数。クラス double の 20 要素の行ベクトルとして指定されます。

データ型: double

r(n) 方程式の分母の多項式の係数。クラス double の 20 要素の行ベクトルとして指定されます。

データ型: double

c(n) 方程式の分子の多項式の係数。クラス double の 20 要素の行ベクトルとして指定されます。

データ型: double

c(n) 方程式の分母の多項式の係数。クラス double の 20 要素の行ベクトルとして指定されます。

データ型: double

オブジェクト関数

doubleConvert TIFF tag property values to row vector of doubles

すべて折りたたむ

引数なしで RPCCoefficientTag クラスのコンストラクターを呼び出します。

rpctag = map.geotiff.RPCCoefficientTag
rpctag = 
  RPCCoefficientTag with properties:

                BiasErrorInMeters: -1
              RandomErrorInMeters: -1
                       LineOffset: 0
                     SampleOffset: 0
           GeodeticLatitudeOffset: 0
          GeodeticLongitudeOffset: 0
             GeodeticHeightOffset: 0
                        LineScale: 1
                      SampleScale: 1
            GeodeticLatitudeScale: 1
           GeodeticLongitudeScale: 1
              GeodeticHeightScale: 1
        LineNumeratorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
      LineDenominatorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
      SampleNumeratorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
    SampleDenominatorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

この例では、RPC 係数メタデータを TIFF ファイルに書き込む方法を示します。実際のワークフローでは、TIFF 拡張仕様に従って RPC 係数メタデータを作成します。この例では、有効な RPC メタデータを作成する方法の詳細は示されていません。生の RPC メタデータをシミュレートするために、この例では、RPC メタデータを含むサンプル TIFF ファイルを作成し、次に imfinfo を使用して、この RPC メタデータをファイルから生の未処理の形式で読み取ります。次に、この例では、geotiffwrite 関数を使用してこの生の RPC メタデータをファイルに書き込みます。

生のRPC係数メタデータを作成する

生の RPC メタデータをシミュレートするには、単純なテストファイルを作成し、いくつかの RPC メタデータをファイルに書き込みます。このテストファイルでは、おもちゃの画像と、その画像に関連付けられた参照オブジェクトを作成します。

myimage = zeros(180,360);
latlim = [-90 90];
lonlim = [-180 180];
R = georefcells(latlim,lonlim,size(myimage));

RPCCoefficientTag メタデータ オブジェクトを作成し、いくつかのフィールドを設定します。ツールボックスは、RPCCoefficientTag オブジェクトを使用して、RPC メタデータを人間が読める形式で表現します。

rpctag = map.geotiff.RPCCoefficientTag;
rpctag.LineOffset = 1;
rpctag.SampleOffset = 1;
rpctag.LineScale = 2;
rpctag.SampleScale = 2;
rpctag.GeodeticHeightScale = 500;

イメージ、関連付けられている参照オブジェクト、および RPCCoefficientTag オブジェクトをファイルに書き込みます。

geotiffwrite('myfile',myimage,R,'RPCCoefficientTag',rpctag)

生のRPC係数メタデータの読み取り

imfinfo 関数を使用して、テストファイルから RPC 係数メタデータを読み取ります。未知のメタデータに遭遇すると、imfinfo は処理されていないデータを UnknownTags フィールドに返します。UnknownTags フィールドには 92 個の double の配列が含まれていることに注意してください。これは、未処理の形式でファイルから読み取られた生の RPC 係数メタデータです。

info = imfinfo('myfile.tif');
info.UnknownTags
ans = struct with fields:
        ID: 50844
    Offset: 10680
     Value: [-1 -1 1 1 0 0 0 2 2 1 1 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

生の RPC メタデータをファイルに書き込む

生の RPC メタデータをファイルに書き込みます。まず、情報構造から RPC 係数メタデータを抽出します。

value = info.UnknownTags.Value;

次に、生の RPC メタデータ (92 個の double の配列) を引数として渡して、RPCCoefficientTag オブジェクトを構築します。

rpcdata = map.geotiff.RPCCoefficientTag(value) 
rpcdata = 
  RPCCoefficientTag with properties:

                BiasErrorInMeters: -1
              RandomErrorInMeters: -1
                       LineOffset: 1
                     SampleOffset: 1
           GeodeticLatitudeOffset: 0
          GeodeticLongitudeOffset: 0
             GeodeticHeightOffset: 0
                        LineScale: 2
                      SampleScale: 2
            GeodeticLatitudeScale: 1
           GeodeticLongitudeScale: 1
              GeodeticHeightScale: 500
        LineNumeratorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
      LineDenominatorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
      SampleNumeratorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
    SampleDenominatorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

RPCCoefficientTag オブジェクトを geotiffwrite 関数に渡し、RPC メタデータをファイルに書き込みます。

geotiffwrite('myfile2',myimage,R,'RPCCoefficientTag',rpcdata)

データがファイルに書き込まれたことを確認するには、geotiffinfo を使用して TIFF ファイルから RPC メタデータを読み取ります。返された RPC メタデータをテストファイルに書き込まれたメタデータと比較します。

ginfo = geotiffinfo('myfile2');
ginfo.GeoTIFFTags.RPCCoefficientTag
ans = 
  RPCCoefficientTag with properties:

                BiasErrorInMeters: -1
              RandomErrorInMeters: -1
                       LineOffset: 1
                     SampleOffset: 1
           GeodeticLatitudeOffset: 0
          GeodeticLongitudeOffset: 0
             GeodeticHeightOffset: 0
                        LineScale: 2
                      SampleScale: 2
            GeodeticLatitudeScale: 1
           GeodeticLongitudeScale: 1
              GeodeticHeightScale: 500
        LineNumeratorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
      LineDenominatorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
      SampleNumeratorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]
    SampleDenominatorCoefficients: [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]

バージョン履歴

R2015b で導入