Macromedia:マルチメディア情報の分析と解釈。 M-lang

この記事は、マクロメディア技術の使用と開発の一般的な問題に焦点を当てています。 分析と情報処理のよく知られた原則と方法に基づいて、著者は、マルチメディア情報の分析プロセスを記述するための生成文法と言語の開発に必要な基本概念と規則を定義するという目標を設定しました。

マルチメディア情報の分析には、コンテンツとコンテンツ解釈の2つのアプローチが考えられます。 また、この記事では、基本的なルールを示し、グラフィック情報分析アルゴリズム-M-Langを記述するための言語の設計と仕様の例を示します。



はじめに



近年のインターネットの発展に関する観察と研究に基づいて、最も単純なテキスト形式と比較して、マルチメディアおよびグラフィック情報を保存、出力、処理、および検索するための一般的な数の新技術について結論を出すことができます。 この理由は明らかです。接続の帯域幅の増加、計算能力とディスク容量の増加、商業用の開発環境におけるリソース所有者の高い競争(その可能性はすぐに使い果たされることはありません)。

さらに、シンプルなアイデア、優れた広告、斬新で思慮深い実行のおかげで、FaceBook、Twitter、YouTube、およびロシアのVKontakteとOdnoklassnikiなどの成功したリソースが大きな人気を獲得しました。 このように、新しい情報エンティティの開発のために2つの定義条件が形成されました-「マクロメディア」テクノロジー。

一般に、マクロメディアは、マルチメディアコンテンツの転送、保存、処理、表示、分析、解釈のための一連の技術です。 Macromediaの特徴は次のとおりです。表示フロー、つまり、ユーザーへの同時送信とユーザー側での表示。 主にマルチメディア(ビデオ/オーディオ)情報の性質。 この情報の解釈、分析、比較のプロセス。 マルチメディア情報の分析の問題は未解決のままですが、転送、保存、処理、表示のタスク自体はよく研究されています。



1.コンテンツ分析方法。



最も一般的なケースでは、マルチメディア情報を分析するタスクは、テキスト情報を分析するタスクに似ています。 ただし、テキスト分析は、データを別の抽象化レベルでの分析に便利な表現に解釈する必要がないという理由だけで、はるかに簡単なプロセスです。 また、タスクは、グラフィック情報のデータサイズの順序に比べて少しだけ簡素化されています。



例1

2つのテキストファイルがサーバーにアップロードされました。

A.txt B.txt
庭の草、草の上のwood。 バーチfire、安価。 ヤードからの自費での出荷。 電話番号 123-45-67


最も単純な関連性分析は次のように行われます。

システムは、各ファイルをトークンの配列に分割し、サービスワード、句読点を削除し、形態を考慮して、あるファイルから別のファイルへのトークンの双方向検索を実行します。 その結果、「firewood」と「yard」という単語間の接続が検出され、ファイル間の検索インデックスに反映されます。

もちろん、テキスト情報を分析するための最新のテクノロジーは大幅に、数十倍複雑で、多くのパラメーターで動作しますが、その本質は同じままです-ファイルを構造に解釈して内容を比較します。

より複雑なのは、マルチメディア情報を分析するタスクです。

例2

2つの画像がサーバーにアップロードされました。

A.bmp B.bmp
画像画像


ファイルをコンテンツごとに直接比較しても何も得られません-マシンの観点から見ると、これらは異なるイメージですが、実際にはそうではありません。

この段階では、この問題を解決するための2つのアプローチが表示されます。

コンテンツ分析方法は比較的単純なアプローチであり、データの類似性を判断および測定することができますが、それ以上はできません。 このアプローチの本質は、例1:データをコンポーネントに分割し、それらを直接比較することに似ています。 例2では、​​次のようになります。

画像

したがって、変換を考慮せずに比較すると(この場合、3番目の要素の水平反射)、画像は75%同一であり、変換を考慮して、それらは100%同一です。 「{A、B}(75/100)」と表記し、このような記録を引き続き守ります(M-Langと呼びましょう)。 2番目のケースでは、両方の画像が特定のセットに属しているという結論を導き出すことができます。 たとえば、「笑顔」。 次に、2番目のアプローチが表示されます。

2.コンテンツ解釈。



このアプローチの本質は、マルチメディアデータの構成部分を正式な言語の特定の概念に解釈し、これらの概念間の関係を構築することです。 このアプローチの主な利点は、システムの学習可能性です。 合成/分解は無制限に発生する可能性があり、分析プロセスで発生する可能性のある再帰および/または反復の回数にも注意してください。

最も単純なケースを考えてみましょう。

例として、「タグ」の概念を使用して例2を拡張し、すべての情報の共通テーブルを作成します。

例3

画像

さらに、重み、確率と統計、述語論理とブール論理の概念を使用して、システムの動作をM-Langの観点から説明します。 M-Langは、グラフィック情報の認識、分析、解釈のためのアルゴリズム、ルール、仕様を記述するために著者が開発した言語です。

M-lang言語の基本的な規則と構成:

  1. {O1、...、On}-オブジェクトのジョイントセット。
  2. {O1、...、On}(K)-オブジェクトは共同でKパーセント同一
  3. O1 [(N)“ word”]-O1オブジェクトにはwordタグがあり、タグ内のオブジェクトの重みはNです
  4. O1 = {P1、P2、P3}-オブジェクトO1はオブジェクトP1、P2、P3で構成されます
  5. {O1 | ... | On}-オブジェクトはセットに属します。
  6. また、ブール論理および述語論理の演算子と変換が言語で許可されています。
  7. ファジーロジックのルールを使用できます。


オブジェクトとは、現在の抽象化レベルで分離された明確なエンティティを意味することを明確にする必要があります。たとえば、画像、画像の一部、何かを説明する文などです。 オブジェクトは他のオブジェクトで構成され、オブジェクトの一部でもあります。 画像は好きなだけ分解できますが、あいまいなオブジェクトのセットが表示されなくなるまでこれを行うことは合理的です。

例3の図に基づいて、画像認識プロセスの説明の例を考えてみましょう。

フォーミュラ 解読
{A、B、C}(75/75) オブジェクトA、B、およびCは、変換を除いて共同で75%、変換と75%が同一です。
{A、B}(75/100) オブジェクトAとBは、変換を除いて共同で75%、変換と100%同一です。
{A ["スマイル"]、C ["スマイル"]}(75/75) オブジェクトAには明示的な「スマイル」タグがあり、オブジェクトCには明示的な「スマイル」タグがありますが、オブジェクトAとCは、変換に関係なく75%、変換に関係なく75%同一です。
A = {a1(50%); A2(25%); a3(25%)}または{a1(50%); A2(25%); a3(25%)} = A オブジェクトAは、割合2 \ 1 \ 1のパーツa1、a2およびa3、または割合2 \ 1 \ 1のパーツa1、a2およびa3で構成され、オブジェクトAを構成します。
{a1(50%); a2(25%); a3(25%)} [「笑顔」]

-> T0:({a1} [(50)“ smile”] | {a2} [(25)“ smile”] | {a3} [(25)“ smile”])

a1、a2、a3は、割合2 \ 1 \ 1で結合され、明示的な笑顔タグがあるため、ステートメントT0:部分a1は笑顔タグに50の重みがあり、a2は笑顔タグに25の重みがあり、a3はタグに25の重みがあります「笑顔。」
{b1(50%); b2(25%); b3(25%)} [「悲しみ」]

-> T1:({b1} [(50)“ sadness”] | {b2} [(25)“ sadness”] | {b3} [(25)“ sadness”])

b1、b2、およびb3は、割合2 \ 1 \ 1で結合され、明示的な悲しみタグがあるため、T1ステートメント:パーツb1は悲しみタグに50の重みがあり、b2は悲しみタグに25の重みがあり、b3はタグに25の重みがあります「悲しみ。」
{c1(50%); c2(25%); c3(25%)} [「笑顔」]

-> T2:({c1} [(50)“ smile”] | {c2} [(25)“ smile”] | {c3} [(25)“ smile”])

割合2 \ 1 \ 1で結合されたc1、c2およびc3は、明示的な笑顔タグがあるため、ステートメントT2:部分c1は笑顔タグに50の重みがあり、c2は笑顔タグに25の重みがあり、c3はタグに25の重みがあります「笑顔。」
T3:{a1、b1、c1}(100/100)

T4:{a2、b2、c2}(100/100)

ステートメントT3:パーツa1、b1、およびc1は、変換なしで100%同一であり、変換ありで100%です。

ステートメントT4:パーツa2、b2、およびc2は、変換なしで100%同一であり、変換ありで100%です。

T1 v T2-> T5:

({a1 | b1 | c1} [(100) "smile"])|

({a2 | b2 | c2} [(50) "smile"])|

({a3 | b3 | c3} [(25) "スマイル"])

ステートメントT1、T2、T3、およびT4の和集合に基づいて、ステートメントT5は次のようになります。

a1、b1、c1の「笑顔」タグの重みは100です。

a2、b2、c2の「笑顔」タグの重みは50です。

a3、b3、c3の「笑顔」タグのウェイトは25

T5 v T3 v T4-> b1 [(100)“ smile”] v b2 [(50)“ smile”]-> B [(100)“ sad”] [(150)“ smile”] ステートメントT5、T4、およびT3の組み合わせに基づいて、パーツb1およびb2の笑顔タグの重みはそれぞれ100および50であるため、オブジェクトBには明示的な悲しみタグと、重み150の暗黙の笑顔タグがあります。


したがって、オブジェクトBには、コンテンツの比較と解釈に基づいて、タグ「Smile」が割り当てられました。

この例は簡単で、M-lang言語の文法は単純化されています。 たとえば、ビデオファイルの場合、空間内のパーツの位置、色、品質、形式、コーデック、および入力ファイルの圧縮メカニズム(時間の長さ)は考慮されません。 オーディオストリームの分析には、個別の言語仕様が必要です。 しかし、著者は、さらなる開発により、M-langがマルチメディア情報の分析と解釈のためのルールをモデリングおよび作成するための強力なツールになると確信しています。

M-langの主な利点。

  1. 言語の文法のシンプルさ。
  2. 確率、重み、ファジーロジックなど、幅広い普遍的な概念を使用する
  3. この言語は、公式言語とアルゴリズム言語の両方で簡単に解釈できます。
  4. この言語は、M-langの説明を使用せずに開発されたシステムを含む、既製のシステムの検証および検証のために、アルゴリズム全体または一般ルールの開発の両方に使用できます。
  5. わかりやすい。


おわりに



標準の欠如と多かれ少なかれ現在のオープンソース技術により、マルチメディア情報を分析および解釈するための開発モデルとアルゴリズムの記述を作成する必要性が緊急に生じています。 このような言語は、アルゴリズムと機能の開発言語の要素、確率理論と数学統計、ブール代数と述語論理の要素を使用してルールとアルゴリズムを記述するM-langによって開発できます。 この言語の主な利点は、アルゴリズム言語と自然言語の両方に簡単に翻訳できることです。



All Articles