指標の計算 (Compute Fiducials) (データ管理)

サマリー

モザイク データセットの各画像の画像空間およびフィルム空間内の指標座標を計算します。

指標とは、参照として使用される航空写真内のマーク (通常は、4 つまたは 8 つ) です。これらは、内部標定と呼ばれる、画像からフィルムへの画像変換を決定するための重要な要素です。このツールを使用すると、ユーザー指定の指標テンプレート ファイルに基づいて、モザイク データセットの各画像の指標となる画像座標を自動的に検出できます。指標テンプレート ファイルは、指標ピクチャまたは指標ピクチャへのパスを格納する必須フィールドを含むテーブルです。

使用法

  • このツールは、入力指標テンプレート ファイルを使用して、モザイク データセットの各画像の指標となる画像座標を自動的に検出します。

  • 指標テンプレート ファイルは、指標ピクチャまたは指標ピクチャへのパスを格納するフィールドを含むテーブルです。

  • 指標を計算する要素であるフィルム座標系は、画像のスキャン方向を示しています。カメラ キャリブレーション レポートは、フィルムが画像プラットフォームから露光される座標系を定義します。スキャン中は画像が回転することがあるため、フィルム座標系を使用して、正しい画像の内部標定を計算するためのスキャン方向を示します。たとえば、左向きに取得された画像に対して、時計回りに 90 度回転させた画像をスキャンすると、フィルム座標系は X が下、Y が右になります。

    飛行方向とスキャン方向

  • スキャン画像内の指標位置は、次の図のとおりです。

    指標位置の図

  • このツールによって作成された出力テーブルは、[内部標定の更新 (Update Interior Orientation)] ツールへの入力として使用できます。

    フィールド説明種類

    CameraID

    指標座標を含むカメラ定義にリンクされている カメラ ID。

    文字列、必須

    FiducialPosition

    LL(1)、UR(2)、UL(3)、LR(4)、LM(5)、RM(6)、UM(7) および BM(8) の値を含む指標マークの位置。指標位置については、上の図をご参照ください。

    文字列、必須

    FiducialPhoto

    指標写真のパスを格納します。指標写真は、TIFF、PNG、または JPEG 形式のスタンドアロン写真、または画像の一部で、サイズ (幅および高さ) と中心位置 (CenterRow および CenterColumn) によって定義されます。画像がモザイク データセット内のアイテムである場合、パスの構文は theMosaicDataPath\objectid=id になります。ここで、id は画像の ObjectID 値を表します (例: c:\data\fgdb.gdb\md\objectid=1)。

    文字列、必須

    ScanPixelSize

    指標写真で使用されるピクセル サイズ。通常はスキャン ピクセル サイズです。単位はミクロンです。

    数値

    指標テンプレートの幅 (ピクセル単位)。指標テンプレートが画像の一部によって定義されている場合にのみ必要です。画像空間内の値を表し、原点は左上隅です。

    数値、オプション

    高さ

    指標テンプレートの高さ (ピクセル単位)。指標テンプレートが画像の一部によって定義されている場合にのみ必要です。画像空間内の値を表し、原点は左上隅です。

    数値、オプション

    CenterRow

    画像全体の基準テンプレートの中心の行。指標テンプレートが画像全体の一部によって定義されている場合にのみ必要です。

    数値、オプション

    CenterColumn

    画像全体の指標テンプレートの中心の列。指標テンプレートが画像全体の一部によって定義されている場合にのみ必要です。

    数値、オプション

    IsSymmetry

    テンプレートが対称かどうかを示すブール型。

    数値、オプション

    出力テーブル

パラメーター

ラベル説明データ タイプ
モザイク データセット

スキャンされたラスター タイプまたはフレーム カメラ ラスター タイプを使用して、スキャンされた航空写真から作成されたモザイク データセット。

Mosaic Layer
出力基準テーブル

画像空間およびフィルム空間内のすべての指標座標情報を格納する出力テーブル。

Table
クエリ定義
(オプション)

指標を計算するためのラスターのサブセットを定義するクエリ定義文字列。

SQL Expression
指標テンプレート
(オプション)

指標ピクチャや他のプロパティを格納する必須フィールドを含む基準テンプレート テーブル。

Table View; File; String
フィルムの座標系
(オプション)

スキャンされた航空写真のフィルム座標系を定義するキーワード。これは、指標情報の計算およびアフィン変換の構築に使用されます。

  • 変更なしモザイク データセットの座標系を維持します。スキャンされた航空写真のフィルム座標系を変更しません。モザイク データセットの座標系を維持します。
  • X 右、Y 上スキャン写真の座標系の原点が中心となり、正の X 点が右、正の Y 点が上になります。
  • X 上、Y 左スキャン写真の座標系の原点が中心となり、正の X 点が上、正の Y 点が左になります。
  • X 左、Y 下スキャン写真の座標系の原点が中心となり、正の X 点が左、正の Y 点が下になります。
  • X 下、Y 右スキャン写真の座標系の原点が中心となり、正の X 点が下、正の Y 点が右になります。
String

arcpy.management.ComputeFiducials(in_mosaic_dataset, out_fiducial_table, {where_clause}, {fiducial_templates}, {film_coordinate_system})
名前説明データ タイプ
in_mosaic_dataset

スキャンされたラスター タイプまたはフレーム カメラ ラスター タイプを使用して、スキャンされた航空写真から作成されたモザイク データセット。

Mosaic Layer
out_fiducial_table

画像空間およびフィルム空間内のすべての指標座標情報を格納する出力テーブル。

Table
where_clause
(オプション)

指標を計算するためのラスターのサブセットを定義するクエリ定義文字列。

SQL Expression
fiducial_templates
(オプション)

指標ピクチャや他のプロパティを格納する必須フィールドを含む基準テンプレート テーブル。

Table View; File; String
film_coordinate_system
(オプション)

スキャンされた航空写真のフィルム座標系を定義するキーワード。これは、指標情報の計算およびアフィン変換の構築に使用されます。

  • NO_CHANGEモザイク データセットの座標系を維持します。スキャンされた航空写真のフィルム座標系を変更しません。モザイク データセットの座標系を維持します。
  • X_RIGHT_Y_UPスキャン写真の座標系の原点が中心となり、正の X 点が右、正の Y 点が上になります。
  • X_UP_Y_LEFTスキャン写真の座標系の原点が中心となり、正の X 点が上、正の Y 点が左になります。
  • X_LEFT_Y_DOWNスキャン写真の座標系の原点が中心となり、正の X 点が左、正の Y 点が下になります。
  • X_DOWN_Y_RIGHTスキャン写真の座標系の原点が中心となり、正の X 点が下、正の Y 点が右になります。
String

コードのサンプル

ComputeFiducials (指標の計算) の例 1 (Python ウィンドウ)

以下は、ComputeFiducials ツールを実行する Python サンプルです。

arcpy.ComputeFiducials_management(r"c:\test\orthomapping.gdb\orthomosaicdataset",
                       r"c:\test\orthomapping.gdb\out_table", "objectID = 1",
                       r"c:\test\fiducilatemplate.csv", "X_RIGHT_Y_UP")
ComputeFiducials (指標の計算) の例 2 (スタンドアロン スクリプト)

以下は、ComputeFiducials ツールを実行するスタンドアロン スクリプト サンプルです。

import arcpy

in_mosaic_dataset = "c:\\test\\ortho.gdb\\ortho_md"
out_fiducial_table = "c:\\test\\ortho.gdb\\fiducial_table"
where_clause = ""
fiducial_template = "c:\\test\\fiducilatemplate.csv"
film_coordinate_system = "NO_CHANGE"


arcpy.ComputeFiducials_management(in_mosaic_dataset, out_fiducial_table,
where_clause,fiducial_template, film_coordinate_system)

関連トピック