ALTO (Analyzed Layout and Text Object) XMLについて
概要
ALTO (Analyzed Layout and Text Object) XMLについて、GPT-4に問い合わせた結果を共有します。
必須項目
ALTO (Analyzed Layout and Text Object) XMLは、OCR生成テキストとそのレイアウトを表現するためのXMLスキーマです。その構造は非常に柔軟で、多くの要素と属性が存在しますが、必須の要素は限られています。
最も単純な形式のALTO XMLは、以下のような階層構造を持ちます:
-
<alto>: ルート要素です。ALTO XMLスキーマのバージョンを示す@xmlns属性と@xmlns:xsi属性を持つ必要があります。また、<Description>と<Layout>という二つの子要素を持つ必要があります。 -
<Description>: ファイルのメタデータを含みます。この要素自体に必須の子要素はありませんが、通常、<MeasurementUnit>,<sourceImageInformation>や<OCRProcessing>などの子要素を含むでしょう。 -
<Layout>: ファイルの物理的なレイアウトを表現します。これは<Page>という子要素を1つ以上含む必要があります。 -
<Page>: 一つのページを表現します。この要素は@IDと@WIDTHと@HEIGHTという三つの必須属性を持つべきです。また、<PrintSpace>という子要素を1つ持つことができます。
上記の要素はALTO XMLの最も基本的な構造を表現していますが、テキストの内容やそのレイアウトを詳細に表現するためには、さらに多くの要素と属性を使用することが可能です。例えば、<PrintSpace>, <TextBlock>, <TextLine>, <String>などの要素を使用することで、テキストの物理的な配置や内容を詳細に表現することができます。それぞれの要素や属性の詳細については、ALTO XMLスキーマのドキュメンテーションを参照してください。
OCRProcessing要素
OCRProcessing要素は、ALTO XML内の<Description>エレメント内で使用されます。この要素は、特定のOCRプロセスに関する情報を格納します。それは以下のサブ要素を持つことができます:
-
ocrProcessingStep: OCR処理の各ステップを記述します。この要素はprocessingDateTime,processingAgency,processingSoftware,processingStepSettings,processingStepDescriptionといった属性を持つことができます。
以下に、OCRProcessingエレメントの使用例を示します:
<Description>
...
<OCRProcessing ID="OCR1">
<ocrProcessingStep>
<processingDateTime>2023-08-01T00:00:00</processingDateTime>
<processingAgency>Agency Name</processingAgency>
<processingSoftware>
<softwareCreator>Software Creator Name</softwareCreator>
<softwareName>Software Name</softwareName>
<softwareVersion>Software Version</softwareVersion>
</processingSoftware>
<processingStepSettings>Settings</processingStepSettings>
<processingStepDescription>Description of the processing step</processingStepDescription>
</ocrProcessingStep>
</OCRProcessing>
...
</Description>
ここで、processingDateTimeはOCR処理が行われた日時を表し、processingAgencyはその処理を行った機関名を表します。processingSoftwareはOCR処理に使用されたソフトウェアに関する情報を含み、processingStepSettingsとprocessingStepDescriptionはそれぞれ設定と処理手順の説明を提供します。
このようにして、OCRProcessing要素を使用することで、OCR処理に関する詳細な情報をALTO XML内に格納することができます。
まとめ
誤りなど含む可能性がありますが、参考になりましたら幸いです。
Discussion