JP4086529B2 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP4086529B2
JP4086529B2 JP2002105508A JP2002105508A JP4086529B2 JP 4086529 B2 JP4086529 B2 JP 4086529B2 JP 2002105508 A JP2002105508 A JP 2002105508A JP 2002105508 A JP2002105508 A JP 2002105508A JP 4086529 B2 JP4086529 B2 JP 4086529B2
Authority
JP
Japan
Prior art keywords
task
component
processing
information
components
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002105508A
Other languages
English (en)
Other versions
JP2003303102A5 (ja
JP2003303102A (ja
Inventor
宏明 由雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2002105508A priority Critical patent/JP4086529B2/ja
Priority to US10/408,589 priority patent/US7228347B2/en
Priority to CNB031786014A priority patent/CN1264336C/zh
Priority to EP03008191A priority patent/EP1372071B1/en
Priority to DE60318771T priority patent/DE60318771T2/de
Publication of JP2003303102A publication Critical patent/JP2003303102A/ja
Publication of JP2003303102A5 publication Critical patent/JP2003303102A5/ja
Application granted granted Critical
Publication of JP4086529B2 publication Critical patent/JP4086529B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/48Indexing scheme relating to G06F9/48
    • G06F2209/482Application

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Image Processing (AREA)
  • Facsimiles In General (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、映像の画像処理を行なう画像処理装置及び画像処理方法に関し、特に、ユーザのニーズや用途に応じた画像処理機能を簡単に実現できるようにしたものである。
【0002】
【従来の技術】
近年、デジタル技術の発展やネットワークインフラの充実と共に、携帯端末やパソコン等の様々なブラウザ上で、映像コンテンツをオンデマンドまたはリアルタイムに閲覧する映像配信システムが普及しつつある。これらのシステムでは、サーバが同時に複数の映像を供給し、また、ネットワークの状況または端末の仕様に応じて、映像コンテンツの解像度やビットレート等を変更し、途切れのないスムーズな映像を提供するように構成されている。
【0003】
しかし、映像配信システムと言っても、ユーザの要望によっては、「映像の単なる配信だけのもの」から、「映像中継ノードを介して他ネットワークに配信するために、ビットレート調整やフォーマット変換等を行なうもの」、また、「映像監視用途での画像認識装置と連携する高度なもの」までレンジが広い。このため、様々なニーズに対し、短期間のシステム開発で迅速に応えていくために、機能面での拡張性やカスタマイズが容易なシステムを構築していくことが望まれつつある。
【0004】
この対策として、フォーマット変換、解像度変換、画像認識等の処理部品をそれぞれ独立したオブジェクトとして扱い、全オブジェクト共通の入出力インターフェースと状態遷移とを定義し、管理することで、オブジェクトの再利用性を高めようという分散オブジェクト技術がある。この技術の一例として、OMG団体(Object Management Group)が考案したCORBA(Common Object Request Broker Architecture)やMicrosoft社が開発したCOM(Component Object Model)が挙げられる。
【0005】
CORBAは、分散環境におけるオブジェクト間のやり取りを実現するためのメカニズムで、CORBA規約の上で作成したオブジェクトは、ネットワークを介したリモート環境下でも、お互いに協調して一つの機能を実現することができる。また、COMに関してもCORBAと同程度の機能を実現しており、さらに、選択したオブジェクトに結合可能なオブジェクトを自動抽出し、オブジェクト間を次々と連結することで、一つの機能ソフトウェアを自動生成し、開発効率の向上を図っている。例えば、圧縮映像をファイルから読み出すオブジェクトを選択すると、その圧縮映像を復号するオブジェクト、それをモニタに表示するオブジェクトを自動抽出し、映像再生機能を持つソフトウェアを自動生成することが可能である。
【0006】
この映像処理機能を持つソフトウェアを自動生成する方法は、特開2000−56958号公報にも開示されている。このソフトウェアの自動生成方法を実施する装置は、図27に示すように、画像データに対して処理を行なう入出力の各引数を持つ複数のソフトウェア部品を格納する格納装置93と、処理手順が記述されている概略手順に従って格納装置93からソフトウェア部品を抽出し、画像処理ソフトウェアを自動生成する自動生成装置90とから成り、自動生成装置90は、先に実行されるソフトウェア部品の引数とこのソフトウェア部品に続いて実行されるソフトウェア部品の引数との入出力関係を判断し、先に実行されるソフトウェア部品の引数が出力で、このソフトウェア部品に続いて実行されるソフトウェア部品の引数が入力であれば、これらの各ソフトウェア部品同士を結合候補とする結合候補判定部91と、結合候補判定部91により結合候補とされた各ソフトウェア部品の各引数について、処理する画像データの種類が一致するか否かを判断し、一致すれば各ソフトウェア部品の各引数を結合する結合部92とを備えている。
【0007】
図28は、この方法で自動生成した、半導体の欠陥を検査する画像処理ソフトウェアでのソフトウェア部品の結合関係を示しており、位置合わせ、2値化、マスク処理、膨張収縮の各画像処理ソフトウェア部品と、特徴量抽出のソフトウェア部品と、判定のソフトウェア部品とが自動結合されている。
こうした画像処理ソフトウェアの自動生成機能を映像配信システムの画像処理装置に設け、実現したい機能を概略手順に記述して、映像フォーマット変換、解像度変換、画像認識などのソフトウェア部品を任意に組み合わせわることにより、ユーザのニーズや用途に応じた機能の生成が可能になる。
【0008】
【発明が解決しようとする課題】
しかし、従来の画像処理ソフトウェアの自動生成方法を適用して配信映像等の画像処理を行なう画像処理装置を構成する場合には、次のような問題がある。
(課題1)
同一の部品であっても、実現しようとする画像処理装置の機能によって、各部品の振舞いが異なる。例えば、映像の解像度を変更する部品を用いて、図23(a)に示すように、ライブ映像を中継する映像中継ノード上でリアルタイムに解像度を変更する場合は、リアルタイム性を重視して、ベストエフォート的にフレームを間引いて解像度を変更することが望まれる。一方、図23(b)のように、カメラ映像等をファイルに蓄積し、縦横比や解像度を変換して、オンデマンドにより映像を提供するような場合には、コンテンツの品質維持を重視して、フレームを間引かずに解像度を変更することが望まれる。
【0009】
また、映像配信システムの画像処理装置では、実現する機能毎に、各部品毎の処理の遅延や揺らぎを考慮した詳細な設計が必要になる。例えば、図23(a)を例に用いると、ネットワークの帯域の揺らぎを吸収できるように映像受信部品と解像度変更部品との間にどの程度バッファを配置するか考慮する必要がある。このバッファ量は、ネットワーク環境にも左右される。
これらの問題は、各部品固有のものではなく、画像処理装置が実現しようとする機能に依存するものであり、各部品間のバッファ量、フレームを間引く/間引かない等のデータ受け渡し方法を別途定義し、それに応じて制御できる機構を画像処理装置の中に設ける必要がある。
【0010】
(課題2)
また、複数の映像コンテンツを複数のユーザに解像度やフォーマットを変更して提供する場合を考えると、従来技術では、図24に示すように、画像処理装置の中で、ユーザ端末1向けに、カメラの映像入力の解像度変換やフォーマット変換の処理を行った後、ユーザ端末1に映像を提供し、また、ユーザ端末2向けに、カメラの映像入力の解像度変換やフォーマット変換の処理を行った後、ユーザ端末2に映像を提供することになる。しかし、当然の事ながら、解像度変換やフォーマット変換の画像処理は演算量が高いため、図24のX(映像入力処理)、Y(解像度変換処理)、Z(フォーマット変換処理)部分のように同じ処理については共有化して処理の最適化を図る必要がある。
【0011】
(課題3)
また、映像処理の機能としては、画面合成や映像/音声の多重化等の統合処理、逆多重化等の分離処理、処理部品のパラメータ変更などがあり、画像処理装置は、こうした処理についても、最適化を図るための制御/管理機構を備える必要がある。
【0012】
(課題4)
また、映像の再生処理の機能では、同一の部品群から機能を構成していても、時間軸に沿って順次映像をベストエフォート的にフレームを間引きながら再生するレート再生モードと、一コマずつフレームを間引かずに再生するコマ送り再生モードとが存在し、これらはユーザによって選択される。そのため、画像処理装置は、ユーザの要求に応じて再生モードの切り替えが可能な機構を備える必要がある。
【0013】
(課題5)
さらに、再生処理の機能では、機能を構成する部品点数が多いときに再生モードの切り替えが行われると、モード切り替えに時間が掛かったり、ユーザから見た再生フレームの順序が入れ替わったりすると言う問題がある。
図25は、この模様を具体例で示している。図25(a)は、ディスクからバッファに順方向にフレームが読み込まれ、コマ送り再生が行われている状態を示している。ディスクから読み込まれたフレーム1、2は既にバッファから出力され、バッファ内にはフレーム3、4、‥、8が溜まっている。図25(b)に示すように、ユーザが3フレーム目で逆コマ送りの再生を要求したとする。この要求に基づいて、ディスクからフレーム8の次にフレーム7が読み出される。しかし、フレーム7がバッファから出力されるのは、フレーム4、‥、8の後であるため、バッファに溜まった分だけ逆コマ送りへの切り替えが遅くなる。
このとき、図25(c)に示すように、コマンド切り替え時にバッファをクリアする仕組みを取り入れたとしても、ユーザは、フレーム1→2→3までのコマ送りの後、フレーム3→2→1を期待しているのに、フレーム7→6→5の順で逆コマ送りになるため、不審に感じることになる。
【0014】
(課題6)
また、従来の画像処理ソフトウェアの自動生成方法では、入出力の各引数を持つソフトウェア部品(処理に必要なものを入力し、処理結果を出力するソフトウェア部品)を組み合わせているため、例えば、「画像認識」処理を行なう「非圧縮画像入力→認識結果出力」というソフトウェア部品は、図26(a)に示す機能には使用できる(「画像認識」のソフトウェア部品から出力されるデータの種類が「認識結果記録」のソフトウェア部品の入力データの種類と一致するため)が、図26(b)に示す機能には使用できなくなる(「画像認識」のソフトウェア部品から出力されるデータの種類が「画像圧縮」のソフトウェア部品の入力データの種類と一致しないため)。そのため、ソフトウェア部品を広く活用できる組み合わせ方式が望まれる。
【0015】
本発明は、こうした課題を解決するものであり、ユーザのニーズや用途に応じた画像処理機能を簡単に実現することができる画像処理装置及び画像処理方法を提供することを目的としている。
【0016】
【課題を解決するための手段】
本発明の画像処理装置は、タスクシナリオ情報に基づいてタスクを実行する画像処理装置であって処理対象となるコンテンツを示すコンテンツ識別子と、前記コンテンツに対するタスクを示すタスク識別子とを入力するタスク入力手段と、タスクに用いる処理部品と処理部品間の結合情報とが記述されたタスクシナリオ情報と、処理部品の情報が記述されたコンポーネント情報と、処理部品の実体が格納されたコンポーネントライブラリとを管理するタスク格納手段と、前記タスク入力手段に入力された前記タスク識別子に対応する前記タスクシナリオ情報を解析し、前記タスクに用いる処理部品と前記処理部品間を結合するソフトバスとを決定し、前記コンテンツ識別子で指定されたコンテンツに対する前記タスクの実行を管理するタスク解析管理手段と、タスク解析管理手段が決定した処理部品を前記コンポーネントライブラリより読み出し、処理部品の動作を制御するコンポーネント管理手段と、タスク解析管理手段が決定したソフトバスを生成または削除し、前記処理部品とソフトバスのデータの受け渡しを制御するソフトバス管理手段とを備え、前記前記タスク解析管理手段は、前記タスク入力手段に新規タスクを示す新たなタスク識別子が入力されたときに、動作中のタスクの情報を参照し、前記新たなタスク識別子に対応するタスクシナリオ情報に記述された複数の処理部品のうち、前記動作中のタスクとの共有化が可能な処理部品を判定するタスク共有化判定手段と、新たに生成が必要な処理部品及びソフトバスを決定するタスク生成部品決定手段とを備え、前記タスク共有化判定手段は、前記新規タスクと同一のコンテンツを処理の対象としている動作中の既存タスクを見つけ、前記新規タスク及び既存タスクを構成する複数の処理部品を上流側から順に、同一であるか否かを比較し、同一でない処理部品が現れるまでの同一である前記処理部品を共有化が可能な処理部品として判定し、前記タスク生成部品決定手段は、共有化が不可能な処理部品に関してのみ、処理部品の生成と各処理部品とソフトバスとの結合を決定することを特徴としている。
【0017】
この装置では、ソフトバス管理手段を設けて各処理部品間でのデータの受け渡し( フレームを間引く/ 間引かないなど) を制御する構成を採っているため、このデータ受け渡し方法などを定義するタスクシナリオを書き換えるだけで、ユーザのニーズや用途に応じた機能を持つ画像処理装置を実現することができ、また、タスク間で処理部品を共有しているため、全体の処理演算量を削減することができる。
また、本発明の画像処理方法は、タスクシナリオ情報に基づいて画像処理を実行する画像処理方法であって処理対象となるコンテンツを示すコンテンツ識別子と、前記コンテンツに対するタスクを示すタスク識別子とが入力されると、前記タスク識別子に対応する新規タスクに用いる処理部品と処理部品間の結合情報とが記述されたタスクシナリオ情報を格納手段から読み出すタスクシナリオ情報読み出しステップと、前記コンテンツ識別子に対応するコンテンツと同一のコンテンツを処理の対象としている動作中の既存タスクを見つけ、前記新規タスク及び既存タスクの各タスクシナリオ情報に記述された複数の処理部品を上流側から順に、同一であるか否かを比較し、同一でない処理部品が現れるまでの同一である前記処理部品を共有化が可能な処理部品として判定するタスク共有化判定ステップと、前記新規タスクのタスクシナリオ情報に記述された処理部品の中で、共有化が不可能な処理部品に関してのみ、処理部品の生成と前記処理部品に結合するソフトバスとを決定するタスク生成部品決定ステップと、前記新規タスクのタスクシナリオ情報に記述された結合情報に基づいて、前記タスク生成部品決定ステップで決定されたソフトバスを生成するソフトバス生成ステップと、前記新規タスクのタスクシナリオ情報に記述された処理部品の情報に基づいて、コンポーネントライブラリに格納されている処理部品の中から前記タスク生成部品決定ステップで決定された処理部品を読み出すコンポーネント読み出しステップと、前記コンポーネント読み出しステップで読み出された処理部品を、前記新規タスクのタスクシナリオ情報に記載された順番に起動させるコンポーネント起動ステップと、前記タスク共有化判定ステップで共有化が可能とされた最下流側の処理部品により前記コンテンツの処理が行われたときの出力データを、前記コンポーネント読み出しステップで読み出された最上流側の処理部品の入力データとなるように、前記ソフトバス内において、データの受け渡しを制御し、且つ、前記コンポーネント起動ステップで起動された処理部品の1つが、前記コンテンツを処理することにより生成された出力データを、次の処理部品の入力データとなるように、前記ソフトバス内において、データの受け渡しを制御するソフトバスデータ制御ステップとから成る
この画像処理方法では、ユーザのニーズや用途に応じた画像処理を実行する際の全体の処理演算量を削減することができる。
【0018】
【発明の実施の形態】
(第1の実施形態)
第1の実施形態では、本発明の画像処理装置の基本構成とその動作について説明し、また、処理の共有化について説明する。
この画像処理装置で扱うコンテンツには、そのコンテンツを識別するためのコンテンツ識別子が設定され、また、このコンテンツに対して行われる画像処理(タスク)には、タスクを識別するためのタスク識別子が設定される。
【0019】
この画像処理装置は、図1に示すように、タスク格納手段14を備えており、ここでは、タスク識別子毎にタスクを構成する映像系の処理部品(ソフトウェア部品=コンポーネント)と処理部品間の結合情報とを記述したタスクシナリオ情報15と、映像系の処理部品情報を記述したコンポーネント情報16と、映像系の処理部品の実体が格納されたコンポーネントライブラリ17とが管理されている。
【0020】
タスクシナリオ情報15には、コンポーネントを繋いで実現する機能や、コンポーネントを繋ぐ順序、コンポーネント間を繋ぐバッファ(ソフトバス)とのデータの受け渡し方法(フレームを間引くか間引かないか等)などが記述される。図8(a)にタスクシナリオ情報の一例を示している。
また、コンポーネント情報16には、コンポーネントの機能や、コンポーネントの実体が格納されたコンポーネントライブラリ17の名前、コンポーネントの入力データ、出力データ、コンポーネントのパラメータ情報などが記述される。図8(b)にコンポーネント情報の一例を示している。
【0021】
画像処理装置10は、また、画像処理するコンテンツのコンテンツ識別子とコンテンツに対するタスクのタスク識別子とを入力するタスク入力手段18と、入力されたタスク識別子のタスクシナリオ情報15を解析し、指定されたタスクを実行する上で必要なコンポーネント及びソフトバスを決定して、タスクを管理するタスク解析管理手段11と、タスク解析管理手段11が決定したコンポーネントを生成または削除し、コンポーネントへの制御を行なうコンポーネント管理手段12と、タスク解析管理手段11が決定したソフトバスを生成または削除し、ソフトバスを用いたデータの受け渡しを制御する映像ソフトバス管理手段13とを備えている。
【0022】
図2は、このタスク解析管理手段11、コンポーネント管理手段12及び映像ソフトバス管理手段13の役割を模式的に示している。タスク解析管理手段11は、タスク(図2(a))のタスクシナリオ情報15を解析し、コンポーネント(図2(b))とソフトバス(図2(c))とソフトバスを介したデータの受け渡し方法とを決定する。コンポーネント管理手段12は、コンポーネント情報16を参照し、タスク解析管理手段11が決定したコンポーネントのコンポーネントライブラリ17上の格納位置を確認し、該当するコンポーネント▲1▼▲2▼▲3▼を生成して、その状態を制御する。映像ソフトバス管理手段13は、タスク解析管理手段11が決定したソフトバス1、2を生成し、コンポーネント▲1▼▲2▼▲3▼とのデータの受け渡し方法を制御する。
【0023】
タスク解析管理手段11は、コンテンツ識別子で指定されたコンテンツに対してこのタスクでの画像処理を実行し、タスクが終了すると、コンポーネント▲1▼▲2▼▲3▼及びソフトバス1、2の削除を指示する。これを受けて、コンポーネント管理手段12はコンポーネント▲1▼▲2▼▲3▼を削除し、映像ソフトバス管理手段13はソフトバス1、2を削除する。
【0024】
コンポーネントに対しては、図3に示すように、データ入力I/F(入力バスとのデータ受け渡し方法)と、データ出力I/F(出力バスとのデータ受け渡し方法)と、そのコンポーネントに対する制御手続きとが規定される。コンポーネントの制御手続きは、例えば図4に示すように、“BIND(ソフトバスへのアクセス開始)”“UNBIND(ソフトバスへのアクセス停止)”“PARAMETER CHANGE(コンポーネントのパラメータ変更)”“CTRL(制御コマンド:例えば再正系のPlay、Stop、Pauseコマンド)”で規定され、コンポーネントは“BIND”を指定することによりIDLE状態からActive状態に状態遷移(処理開始)し、“UNBIND”を指定することによりActive状態からIDLE状態に状態遷移する。また、“CTRL”や“PARAMETER CHANGE”の指定でActive状態での処理を行なう。 このように、画像処理装置で扱う映像フォーマット変換、解像度変換、画像認識などのコンポーネントに対し、その構成、制御手続きとそれに伴う状態遷移を共通に定義することにより、ユーザのニーズ/用途に応じて、任意のコンポーネントを自由に組み合わせることが可能となる。
【0025】
また、図5は、映像ソフトバス管理手段13の内部構成を示している。映像ソフトバス管理手段13は、1つのソフトバスとして、データ格納領域21を有する共有メモリ22を複数個循環構造として備えており、また、共有メモリ22への書き込み/読み出し位置や排他制御等を管理するアクセス管理部23を備えている。
図6は、共有メモリ22に記述されるデータのデータ構造フォーマット例を示している。ここには、メディア形式(映像/音声の別)、符号化方式、メディアの重要度、メディアのタイムコード、メディア識別子、格納最大サイズ、実際のデータ格納サイズ、実データポインタ等、映像系コンポーネントが画像処理を行なうために必要な全情報が記述される。
また、アクセス管理部23は、ソフトバスの生成/終了、各コンポーネントの書き込み/読み出し位置の管理、各コンポーネントのソフトバスへのデータ受け渡し方法の管理等の制御管理を行なう。
【0026】
図7は、アクセス管理部23で実現すべき制御機構の仕様を示している。
本仕様では、各ソフトバスに対して、書き込むコンポーネントは1つ、読み出すコンポーネントは複数可能とし、同一共有メモリデータ構造に対しては、同時に書き込み/読み出しを許可しない制御を行う。
また、コンポーネントのデータ受け渡し制御として、a.FIFO/LIOの読み出し、b.非同期/同期型書き込み、c.非同期/同期型ACK、のモードが設定可能である
aのFIFO/LIOの読み出しは、ソフトバス内にある複数のデータ構造をどのように読み出すかを規定したもので、「FIFO読み出し=古いデータ構造から順に渡す」、「LIO読み出し=常に最新のデータ構造を渡す」となる。
bの非同期/同期型書き込みは、共有メモリデータ構造へ再書き込みする場合の条件を規定したもので、「非同期書き込み=共有メモリデータ構造の読み出しがなくても再書込み可能」「同期書き込み=共有メモリデータ構造の読み出しがあるまで再書込み禁止」となる。
cの非同期/同期型ACKは、ソフトバスへの読み出し/書き込みができない場合の応答方法を規定したもので、「非同期ACK=読み出し/書き込みができない場合、その旨をコンポーネントに即伝える」「同期ACK=読み出し/書き込みができない場合、処理ができるようになるまで応答を返さない」となる。
以上のように、コンポーネント毎の詳細なデータ受け渡し方法を設定でき、また、このデータ受け渡し方法はアクセス管理部23で制御するため、各コンポーネントはデータ受け渡し方法の違いを意識する必要はない。
また、タスク解析管理手段11の制御コマンドとして、バスリセット(各コンポーネントのアクセス位置を初期化し、指定パラメータ(FIFO/LIOの読み出し、非同期/同期型書き込み、非同期/同期型ACK)で再設定する)、最新読み出し位置取得(読み出しが行われた最新の共有メモリ構造体の蓄積位置情報を取得する)を要求する。
これにより、タスク解析管理手段11から、各コンポーネントのデータ受け渡し方法の制御が可能となる。
このように、コンポーネント毎の詳細なデータ受け渡し方法が設定される。
【0027】
ソフトバスにデータを書き込むコンポーネントは、アクセス管理部23に対して書き込み要求を出し、アクセス管理部23から書き込み位置のポインタの通知を受けて書き込みを開始する。また、ソフトバスからデータを読み出すコンポーネントは、アクセス管理部23に対して読み出し要求を出し、アクセス管理部23から読み出し位置のポインタの通知を受けて読み出しを開始する。
こうした動作を行なう映像ソフトバス管理手段13が存在するため、各コンポーネントは、それぞれのコンポーネントで処理した結果をデータの入力に付加してデータの出力とすることが可能となり、様々なニーズに応える機能を実現することができる。
【0028】
なお、図8(a)のタスクシナリオ情報では、コンポーネント1について入力バスとのデータ受け渡しモードを規定し、また、コンポーネント2について出力バスのバッファ数及びデータ受け渡しモードを規定しているが、もし、コンポーネントがコンポーネント1と2の二つしか無い場合、あるいは、コンポーネント1、2がタスクの両端のコンポーネントの場合には、これらの規定は不要である。
【0029】
次に、タスク間でコンポーネントの共有化を行なう方法について説明する。
図9は、動作中のタスク1に続いて、同じカメラの映像を画像処理するタスク2を新たに開始する場合に(図9(a))、共通に利用できるコンポーネント“映像入力”及び“フォーマット変換”をタスク間で共有化する例を示している。図9(b)は、このときの画像処理装置の内部状態を表している。タスク1及びタスク2で“映像入力”及び“フォーマット変換”のコンポーネントが共有されており、フォーマット変換コンポーネントの処理結果を出力するソフトバス2に対して、タスク1の解像度変換コンポーネント及びタスク2の端末出力コンポーネントが入力を行なう構成になっている。
【0030】
図10は、こうしたコンポーネントの共有化を自動的に行なうタスク解析管理手段11の構成を示している。このタスク解析管理手段11は、動作中のタスク情報32を参照し、新たに開始するタスクでの共有化が可能なコンポーネントを判定するタスク共有化判定手段31と、共有化が可能なコンポーネントを除いて、生成が必要なコンポーネント及び映像ソフトバスを決定するタスク生成部品決定手段30とを備えている。
【0031】
タスク共有化判定手段31は、タスク入力手段18からコンテンツ識別子及びタスク識別子が入力すると、動作中タスク情報32を参照し、入力されたコンテンツ識別子のコンテンツを処理しているタスクを動作中のタスクの中から見つけ、そのタスクを構成する上流側のコンポーネントから順に、コンポーネントとパラメータとが同一であるか判定し、同一であると判定したコンポーネントまでをタスク間で処理の共有化が可能なコンポーネントと判定する。また、タスク生成部品決定手段30は、処理の共有化が不可能なコンポーネントに関してのみ、必要なコンポーネントと映像ソフトバスとの生成を決定する。
【0032】
図11は、タスク解析管理手段11の内部データ管理構造を表している。タスク解析管理手段11は、「タスク管理」、「コンポーネント管理」及び「ソフトバス管理」のデータ管理を行っている。
「タスク管理」では、画像処理装置内で動作中の各タスクの情報(入力/入出力/出力コンポーネント(CMP)へのパス)を管理する。入力/出力CMPは必ず一つ必要であるが、入出力CMPは複数個(0〜N)存在しても良い。
「コンポーネント管理」では、タスクを構成する入力/入出力/出力コンポーネントの情報(コンポーネント識別番号、パラメータ、ソフトバス情報、参照カウンタ)を管理する。ソフトバス情報は、ソフトバスへアクセスするための情報であり、参照カウンタは、コンポーネントを使用しているタスクの個数を表す。「ソフトバス管理」では、コンポーネント間で使用するソフトバス情報(参照カウンタ、各コンポーネントのデータ受け渡し方法、バッファ量)を管理する。参照カウンタは、ソフトバスへアクセスしているコンポーネントの個数を表す。
図11では、タスク1とタスク2とがコンポーネント入力CMP1を共有する場合を示している。このとき、「タスク管理」のタスク1の入力CMPとタスク2の入力CMPには、共にコンポーネント入力CMP1の「CMP ID」が記入される。
【0033】
この共有化により、コンポーネント入力CMP1のソフトバス情報(OUT)と、タスク1で使用するコンポーネント入出力CMP1のソフトバス情報(IN)と、タスク2で使用するコンポーネント入出力CMP2のソフトバス情報(IN)とが同じになり、共にソフトバス1の情報が記入される。
このようにコンポーネントを共有化することにより、画像処理装置全体の演算量を減らすことができる。
【0034】
次に、この画像処理装置におけるタスク生成時の処理フローを説明する。
1.分岐位置の判定
新たに生成するタスク(新規タスク)の入力コンポーネントが、「コンポーネント管理」に既に存在する場合には、同一の入力コンポーネントを持つタスク(動作中タスク)を「タスク管理」から抽出する。
次に、新規タスクと抽出した動作中タスクとの間で、入力コンポーネントから順に、同一の入出力コンポーネントが連続する数(N:整数)を算出する。これを動作中タスクの個数分判定を行ない、Nが最大となる箇所を新規タスクが動作中タスクから分かれる分岐点と判定する。
【0035】
なお、同一かどうかの判定は、タスクのコンテンツ識別番号が同じで、各コンポーネントとパラメータとが同じであるときに同一とする。また、タスクによっては同一コンポーネントでも、コンポーネントの出力するソフトバス情報(バッファ数、データ受け渡しモード)が異なる場合がある。従って、コンポーネントの出力するソフトバス情報の全情報或いは一部の情報を同一かどうかの判定に追加することも可能である。
2.分岐点までのコンポーネントの参照カウンタを更新
分岐点までのコンポーネントを「コンポーネント管理」から抽出し、各コンポーネントの参照カウンタをインクリメントする。
3.分岐後のコンポーネント及びソフトバスの生成
分岐後のコンポーネントを「コンポーネント管理」へ追加すると共に、コンポーネント間を繋ぐソフトバスを「ソフトバス管理」へ追加する。次に、追加したコンポーネント及びソフトバスを生成し、追加コンポーネントのソフトバスへの接続を開始する。なお、分岐後のコンポーネントの参照カウンタは1となる。
【0036】
次に、タスク終了時の処理フローを説明する。
1.コンポーネントの削除が可能であるかの判定
終了するタスクの入力/入出力/出力コンポーネントに対して、「コンポーネント管理」の参照カウンタをデクリメントし、参照カウンタが0となったコンポーネントを削除可能なコンポーネントと判定する。
2.ソフトバスへの接続終了及びソフトバスの削除
削除可能なコンポーネントに対して、ソフトバスの接続を終了する。この後、「ソフトバス管理」の参照カウンタをデクリメントし、参照カウンタが0となったソフトバスを削除する。
3.コンポーネントの終了
「コンポーネント管理」の参照カウンタが0となったコンポーネントを終了する。
【0037】
このように、この画像処理装置では、各コンポーネント間のバッファ量、フレームを間引く/間引かないなどのデータ受け渡し方法をタスクシナリオ情報で定義し、また、映像ソフトバス管理手段で各コンポーネント間のバスを制御する機構を設けているため、タスクシナリオ情報の書き換えだけで、映像フォーマット変換、解像度変換、画像認識等のコンポーネントを任意に組み合わせて、所望の機能を、再コンパイル等を必要とせずに、動的に実現することができる。
【0038】
また、複数のタスクで解像度変換やフォーマット変換等の演算量が高いコンポーネントを使う場合に、タスク間で処理の共通化が可能なコンポーネントを自動的に共有化し、処理の最適化を図ることができ、それにより全体の処理演算量を削減することができる。
【0039】
また、映像ソフトバス管理手段がソフトバスでのデータの受け渡しを管理することにより、コンポーネントから出力されたデータの一部を選択して下流のコンポーネントに渡すようなことが可能になる。そのため、各コンポーネントは、入力したデータに、コンポーネントで処理した結果を付加して出力することが可能になる。例えば図26(b)のタスクにおいて、画像認識を行なうコンポーネントは、非圧縮伸長された画像データを入力し、その画像認識処理を行ない、(非圧縮伸長画像データ+画像認識結果)をソフトバスに出力する。映像ソフトバス管理手段は、この出力の内、非圧縮伸長画像データを次の画像圧縮のコンポーネントに出力し、画像認識結果をその次の映像記録のコンポーネントに出力する。画像圧縮のコンポーネントは、非圧縮伸長画像データを圧縮して映像記録のコンポーネントに渡し、映像記録のコンポーネントは、圧縮した画像データと画像認識結果とをディスクに蓄積する。
【0040】
このように、映像ソフトバス管理手段を設けたことにより、あたかも製造ラインのように、データの必要な部分だけをピックアップし、上流の工程結果に今回の結果を付加する仕組みが構築できる。
【0041】
また、この画像処理装置では、使用コンポーネントが、どのコンポーネントライブラリ17のどのオブジェクト関数かをコンポーネント情報16に記述できるようにしているため、例えば、UNIX(登録商標)/Linux系のロードライブラリやWindows(登録商標)系のダイナミックロードライブラリ(DLL)を用いて、新規にコンポーネントライブラリを作成し、コンポーネント情報を追加するだけで、画像処理装置の再コンパイルは不必要のまま新規コンポーネントの登録ができる。
【0042】
また、タスク格納手段14が、タスクシナリオ情報15を定期的に読み出し、タスクを構成するコンポーネント間の繋がりが正しいか否かをチェックするようにすれば、人手で記述されたタスクシナリオ情報の誤りを検出することができる。
【0043】
(第2の実施形態)
第2の実施形態では、画面合成や映像/音声の多重化等に伴うパスの統合処理、逆多重化等に伴うパスの分離処理、部品のパラメータ変更処理等について説明する。
【0044】
まず、パスの統合処理について説明する。パスの統合処理は、図12に示すように、複数のカメラから入力した異なる映像を合成して一つの端末に出力したり、カメラとマイクとから入力した映像と音声とを多重化して一つの端末に出力したりするような場合に可能となる。
【0045】
また、図13は、パスの統合処理を含めたコンポーネントの共有化の例を示している。ここでは、カメラ41の映像とカメラ42の映像とを合成して端末44に出力し(タスク1)、カメラ42の映像を単独で端末45に出力し(タスク2)、カメラ42の映像とマイク43の音声とを多重化して端末46に出力する(タスク3)場合を示しており、カメラ42に対する映像入力コンポーネントをタスク2及びタスク3で共有し、また、カメラ42の映像信号の解像度変換コンポーネントをタスク1及びタスク2で共有している。
【0046】
タスクシナリオ情報及びタスク解析管理手段11の管理では、図14(a)に示すように、パスを統合処理した全体のタスクを親タスクとして扱う。親タスクは、統合前の複数の子タスクと統合後の子タスクとから構成される。
【0047】
図14(b)は、タスク解析管理手段11がコンポーネントを共有化しながらパスの統合処理を行なう場合の処理フローを示している。なお、この処理フローの中で「動作中タスク」とは、統合前後の子タスク、パスの統合を行なわない通常のタスクのことを示しており、親タスクは含まない。
ステップ1:全ての結合前タスクに対して動作中タスクと共有可能かをチェックする。
ステップ2:共有可能な結合前タスクが最低1つあるときは、
ステップ3:全ての結合前タスクの全コンポーネントが共有可能かを判別し、YESのときは、
ステップ4:更なる共有の可能性を求めて、動作中タスク内の統合後タスクと統合後タスクとが共有可能かをチェックする。
【0048】
ステップ5:共有可能であるときは、
ステップ6:結合後タスクの非共有コンポーネントを生成する。
また、ステップ3において、NOのときは、
ステップ8:全ての結合前タスクの非共有コンポーネントを生成し、
ステップ9:結合後タスクの全コンポーネントを生成する。
また、ステップ5において、共有可能でないときも、結合後タスクの全コンポーネントを生成する(ステップ9)。
【0049】
また、ステップ2において、共有可能な結合前タスクが無いときは、
ステップ7:親タスク内の全コンポーネントを生成する。
ステップ10:最後に、映像ソフトバスの生成と結合とを行なう。
なお、パス統合を行ったタスクの終了処理は、第1の実施形態で説明した終了処理方法と同様に行なう。
【0050】
次に、パスの分離処理について説明する。パスの分離分割は、図15に示すように、多重化されている映像と音声とを分離して、映像機器と音声機器とに出力するような場合に行われる。
【0051】
図16は、パスの分離・分割処理におけるコンポーネントの共有化を示している。ここでは、多重化されて入力する映像/音声信号から、映像と音声とを分離してユーザ2の映像機器と音声機器とに出力し(タスク1)、入力信号から映像信号のみを分離してユーザ1の映像機器に出力し(タスク2)、また、入力信号から音声信号のみを分離してユーザ3の音声機器に出力する(タスク3)場合を示しており、多重化した信号を入力する映像/音声入力コンポーネント、及び、多重化した映像信号と音声信号とを分離する非多重化のコンポーネントをタスク1、タスク2及びタスク3で共有し、また、カメラ42の映像信号の解像度変換コンポーネントをタスク1及びタスク2で共有している。
また、タスクシナリオ情報及びタスク解析管理手段11の管理では、図17(a)に示すように、パスを分割処理した全体のタスクを親タスクとして扱う。親タスクは、分割前の複数の子タスクと分割後の子タスクとから構成される。
【0052】
なお、図17(a)のように、分割前の子タスク1と分割後の子タスク2とから構成するタスク(例えば、映像/音声を逆多重化して、映像のみ解像度変更して端末へ送信するタスク)に対しては、本画像処理装置では、通常のタスクとしてではなく、パスの分割処理を行なうタスクとして扱う。
【0053】
図17(b)は、タスク解析管理手段11がパスの分割処理を行なう場合の処理フローを示している。なお、この処理フローの中で「動作中タスク」とは、統合前後あるいは分割前後の子タスク、パスの統合を行なわない通常のタスクのことを示しており、親タスクは含まない。
ステップ20:分割前タスクが動作中タスクと共有可能かをチェックする。
ステップ21:分割前タスクが共有可能であるときは、
ステップ22:分割前タスクの全コンポーネントが共有可能かを判別し、YESのときは、
ステップ23:各分割後タスクに対して動作中タスクとの共有可能性をチェックし、
ステップ24:各分割後タスクの非共有コンポーネントを生成する。
【0054】
ステップ25:全ての分割後タスクをチェックするまで、ステップ23〜ステップ24の処理を繰り返す。
ステップ22においてNOのときは、
ステップ26:分割前タスクの非共有コンポーネントを生成し、
ステップ27:全分割後タスクの全コンポーネントを生成する。
また、ステップ21において、分割前タスクが共有可能でないときは、
ステップ28:親タスク内の全コンポーネントを生成する。
ステップ29:最後に、映像ソフトバスの生成と結合とを行なう。
なお、パス分割を行ったタスクの終了処理は、第1の実施形態で説明した終了処理方法と同様に行なう。
【0055】
次に、共有化しているコンポーネントのパラメータの変更処理について説明する。
パラメータには、解像度変換における画質精度を高めるときのように、他のタスクに影響を与えても良いパラメータもあれば、解像度変換における縦横比のように、他のタスクに影響を与えずに、タスク単位で変更すべきパラメータも存在する。
タスク間で共有しているコンポーネントのパラメータを変更する場合、「他のタスクに影響を与えても良いパラメータ」であれば、コンポーネントの共有化を維持したままコンポーネントのパラメータを変更する。また、「タスク単位で変更すべき固有のパラメータ」の場合は、コンポーネントを新設しタスクを再生成する必要がある。
【0056】
図18は、このパラメータの変更処理を模式的に示している。図18(a)は、異なる端末に同じ映像信号を出力するタスク1、タスク2、タスク3の処理において、映像入力及び解像度変換を共通のコンポーネントで行っている状態を示している。この解像度変換では、縦横比のパラメータが1/2、画質精度のパラメータが中に設定されている。なお、ここでは、「他のタスクに影響を与えても良いパラメータ」が画質精度のパラメータであり、「タスク単位で変更すべき固有のパラメータ」が縦横比のパラメータであるとする。
【0057】
タスク1の解像度変換における縦横比のパラメータを1/4に変更する場合は、図18(b)に示すように、タスク1の解像度変換を行なうコンポーネントを新たに生成し、そのパラメータを縦横比1/4、画質精度中に設定する。タスク2及びタスク3の解像度変換は、共有化したコンポーネントをそのまま使用して行なう。
【0058】
一方、タスク1の解像度変換における画質精度のパラメータを中から上に高める場合は、図18(c)に示すように、共有化したコンポーネントの画質精度のパラメータを中から上に変更する。その結果、タスク1、タスク2、タスク3の全ての画像処理における画質が向上する。
【0059】
図19は、このパラメータ変更処理を行なうタスク解析管理手段11の構成を示している。このタスク解析管理手段11は、動作中のタスク情報32を参照してパラメータを変更するコンポーネントがタスク間で共有されているか否かを判定する処理部品共有化判定手段50と、パラメータの変更処理を行なうパラメータ変更手段51とを備えている。
【0060】
この処理部品共有化判定手段50は、タスク入力手段18からタスク番号及びコンポーネントのパラメータが入力すると、動作中のタスク情報32を参照して、パラメータを変更するコンポーネントがタスク間で共有されているか否かを判定する。パラメータ変更手段51は、パラメータを変更するコンポーネントが処理部品共有化判定手段50によりタスク間で共有されていると判定された場合、そのパラメータの種類に応じて、共有されているコンポーネントのパラメータ値を変更し、または、タスクを再生成して、新たなコンポーネントに入力されたパラメータ値を設定する。パラメータ変更手段51によって変更されたパラメータは、コンポーネント管理手段12や映像ソフトバス管理手段13に伝えられる。
【0061】
このように、この画像処理装置では、画面合成や映像/音声の多重化等の統合処理、映像と音声とを分離する分割処理、及び、コンポーネントのパラメータ変更処理に対しても、タスク間の処理の共通化を加味した制御が可能である。
【0062】
(第3の実施形態)
第3の実施形態では、ユーザの要求に応じて再生モードを切り替え、スムーズな映像の再生を行なう処理について説明する。
【0063】
図20は、この再生処理を行なうタスク解析管理手段11の構成を示している。このタスク解析管理手段11は、タスクを構成する全コンポーネントを一旦アイドル状態にしたり、全コンポーネントの動作を再開したりするコンポーネント停止再開手段60と、コンポーネント間を結合する映像ソフトバスのバッファ量や、データ受け渡し方法の変更を行なう映像ソフトバスモード変更手段61とを備えている。 いま、図21で、コマ送り再生中であるとする。コンポーネント▲1▼は、ディスクから読み出したデータを処理してソフトバス1に書き込み、コンポーネント▲2▼は、ソフトバス1から読み込んだデータを処理してソフトバス2に書き込み、コンポーネント▲3▼は、ソフトバス2から読み込んだデータを処理して端末に出力している。端末には、フレーム5が届き、ソフトバス2にはフレーム6及びフレーム7が、また、ソフトバス1にはフレーム8及びフレーム9が書き込まれているとする。
ユーザが再生方法を変更すると、タスク入力手段18から動作中のタスク番号と、ソフトバスのバッファ量やデータ受け渡し方法を変更(「フレームを間引かない」→「フレームを間引く」等)するバス変更情報とが入力する。
【0064】
このときの処理手順を図22に示している。タスク解析管理手段11は、動作中タスク情報32を参照し、指定されたタスクのコンポーネントの動作を停止するようにコンポーネント管理手段12に要求し、コンポーネント▲1▼▲2▼▲3▼の動作が停止する(▲1▼)。映像ソフトバスモード変更手段61は、映像ソフトバス管理手段13のソフトバス2にフレーム6が書き込まれていることを検出して、現再生フレームがフレーム5であることを認識し(▲2▼)、次いで、ソフトバス1、2のバスリセットを映像ソフトバス管理手段13に指示する(▲3▼)。
バスリセットにより、ソフトバス1、2に対するアクセスが全て解除され、ソフトバス1、2のデータの受け渡し方法がタスク入力手段18から入力された方法に変更され、ソフトバス1、2のデータがクリアされる。
【0065】
次に、コンポーネント停止再開手段60は、コンポーネント管理手段12にコンポーネントの動作の開始を要求する(▲4▼)。コンポーネント▲1▼▲2▼▲3▼の動作が開始されると、映像ソフトバスモード変更手段61は、コンポーネント▲1▼に現再生フレーム(フレーム5)を通知する(▲5▼)。
コンポーネント▲1▼が、現再生フレーム(フレーム5)の次から、指定された動作を開始することにより、図21に示すように、ユーザの指示が逆コマ送りへの切り替えであった場合には、フレーム4、フレーム3、‥の順で端末にデータが送られ、また、ユーザの指示が2倍速再生への切り替えであった場合には、フレーム7、フレーム9、‥の順で端末にデータが送られる。
【0066】
このように、この画像処理装置では、ユーザの再生モードの切り替え要求に応じて、映像ソフトバス内の映像情報を全てクリアし、タスクの中で最下流にあるコンポーネントが処理を施した最新のフレームの識別子を取得して、最上流のコンポーネントに通知することにより、ユーザの要求通りの再生を実施することができる。
【0067】
なお、本発明の画像処理装置は、インターネットやイントラネット等のIPネットワークを介して、携帯端末やパソコン等の複数のブラウザへ様々な映像コンテンツを配信する映像配信システムを始めとし、放送システム、監視システムなど、各種のシステムでの利用が可能である。
【0068】
【発明の効果】
以上の説明から明らかなように、本発明の画像処理装置は、タスクを構成するコンポーネントやソフトバスでのデータ受け渡し方法などを定義するタスクシナリオを書き換えるだけで、ユーザのニーズや用途に応じた機能を持たせることができる。また、本発明の画像処理方法は、ユーザのニーズや用途に応じた画像処理を実行することができる。
【0069】
また、タスクファイルの書き換えだけで、映像フォーマット変換、解像度変換、画像認識等の処理部品を任意に組み合わせた機能を再コンパイル等の必要なしに動的に実現することができる。
また、複数の機能で解像度変換やフォーマット変換等の演算量が高い部品を使う場合に、機能間で処理の共通化ができる部品を自動的に最適化することで、全体の処理演算量を削減することができる。
【0070】
また、画面合成や映像/音声の多重化等の統合処理、逆多重化等の処理の分離処理、処理部品のパラメータ変更の機能に対しても、機能間で処理の共通化を加味した制御が可能である。
また、コンポーネント管理手段で各コンポーネントの状態をアイドル状態にし、続いて、映像ソフトバス管理手段でコンポーネント間のバスのモードを変更することで、ユーザの要求に応じて、レート再生モードやコマ送り再生モード等の再生モードを切替えることができる。
【0071】
さらに、ユーザが再生しているフレームの識別子を一番上流にある部品に通知することで、再生モードの切り替えに掛かる時間を短縮し、且つ、スムーズな映像を再生することができる。
【0072】
また、製造ラインのように必要な部分だけをピックアップし、上流の工程結果に今回の結果を付加する仕組みを構築することで、様々なニーズに応えた機能を実現することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態における画像処理装置の構成を示すブロック図
【図2】第1の実施形態における画像処理の各手段の役割を示す図
【図3】第1の実施形態におけるコンポーネントの構成を示す図
【図4】第1の実施形態におけるコンポーネントの制御手続きと状態遷移を示す図
【図5】第1の実施形態における映像ソフトバス管理手段の構成を示す図
【図6】第1の実施形態における共有メモリのデータ構造を示す図
【図7】第1の実施形態における共有メモリのアクセス管理の仕様を示す図
【図8】第1の実施形態におけるタスクシナリオとコンポーネント情報のフォーマットを示す図
【図9】第1の実施形態におけるコンポーネントの共有を説明する図
【図10】第1の実施形態におけるタスク解析管理手段の構成を示す図
【図11】第1の実施形態におけるタスク解析管理手段の管理テーブルを示す図
【図12】本発明の第2の実施形態における画像処理装置のパスの統合処理を示す図
【図13】第2の実施形態におけるパスの統合処理を含むコンポーネントの共有化を示す図
【図14】第2の実施形態におけるパスの統合処理手順を示す図
【図15】第2の実施形態におけるパスの分割処理を示す図
【図16】第2の実施形態におけるパスの分割処理を含むコンポーネントの共有化を示す図
【図17】第2の実施形態におけるパスの分割処理手順を示す図
【図18】第2の実施形態におけるパラメータの変更処理を示す図
【図19】第2の実施形態におけるパラメータの変更処理を行なうタスク解析管理手段の構成を示す図
【図20】本発明の第3の実施形態におけるタスク解析管理手段の構成を示す図
【図21】第3の実施形態における画像処理装置の再生処理を説明する図
【図22】第3の実施形態における画像処理装置の再生処理手順を示す図
【図23】従来の画像処理装置の画像配信における課題を説明する図
【図24】従来の画像処理装置の処理効率化に関する課題を説明する図
【図25】従来の画像処理装置の再正系での課題を説明する図
【図26】従来の画像処理装置のソフトウェア部品組み合わせ時の課題を説明する図
【図27】従来の画像処理ソフトウェア自動生成装置の構成を示すブロック図
【図28】従来の画像処理ソフトウェア自動生成装置で生成したソフトウェアを示す図
【符号の説明】
10 画像処理装置
11 タスク解析管理手段
12 コンポーネント管理手段
13 映像ソフトバス管理手段
14 タスク格納手段
15 タスクシナリオ情報
16 コンポーネント情報
17 コンポーネントライブラリ
18 タスク入力手段
21 データ格納領域
22 共有メモリ
23 アクセス管理部
30 タスク生成部品決定手段
31 タスク共有化判定手段
32 動作中タスク情報
41 カメラ
42 カメラ
43 マイク
44 端末
45 端末
46 端末
50 処理部品共有化判定手段
51 パラメータ変更手段
60 コンポーネント停止再開手段
61 映像ソフトバスモード変更手段
90 自動生成装置
91 結合候補判定部
92 結合部
93 格納装置

Claims (7)

  1. タスクシナリオ情報に基づいてタスクを実行する画像処理装置であって、
    処理対象となるコンテンツを示すコンテンツ識別子と、前記コンテンツに対するタスクを示すタスク識別子とを入力するタスク入力手段と、
    タスクに用いる処理部品と前記処理部品間の結合情報とが記述されたタスクシナリオ情報と、前記処理部品の情報が記述されたコンポーネント情報と、前記処理部品の実体が格納されたコンポーネントライブラリとを管理するタスク格納手段と、
    前記タスク入力手段に入力された前記タスク識別子に対応する前記タスクシナリオ情報を解析し、前記タスクに用いる処理部品と前記処理部品間を結合するソフトバスとを決定し、前記コンテンツ識別子で指定されたコンテンツに対する前記タスクの実行を管理するタスク解析管理手段と、
    前記タスク解析管理手段が決定した前記処理部品を前記コンポーネントライブラリより読み出し、前記処理部品の動作を制御するコンポーネント管理手段と、
    前記タスク解析管理手段が決定した前記ソフトバスを生成または削除し、前記処理部品と前記ソフトバスのデータの受け渡しを制御するソフトバス管理手段と
    を備え
    前記前記タスク解析管理手段は、前記タスク入力手段に新規タスクを示す新たなタスク識別子が入力されたときに、動作中のタスクの情報を参照し、前記新たなタスク識別子に対応するタスクシナリオ情報に記述された複数の処理部品のうち、前記動作中のタスクとの共有化が可能な処理部品を判定するタスク共有化判定手段と、新たに生成が必要な処理部品及びソフトバスを決定するタスク生成部品決定手段とを備え、
    前記タスク共有化判定手段は、前記新規タスクと同一のコンテンツを処理の対象としている動作中の既存タスクを見つけ、前記新規タスク及び既存タスクを構成する複数の処理部品を上流側から順に、同一であるか否かを比較し、同一でない処理部品が現れるまでの同一である前記処理部品を共有化が可能な処理部品として判定し、
    前記タスク生成部品決定手段は、共有化が不可能な処理部品に関してのみ、処理部品の生成と各処理部品とソフトバスとの結合を決定することを特徴とする
    画像処理装置。
  2. 前記コンポーネントライブラリは、動的にリンクして呼び出すことが可能であり、前記コンポーネント情報には、前記ライブラリにリンクするための必要な情報が記述されている請求項1に記載の画像処理装置。
  3. 前記タスクシナリオ情報に、前記処理部品の繋がりを表すパスの複数を統合するタスクを記述できる請求項に記載の画像処理装置。
  4. 前記タスクシナリオ情報に、前記処理部品の繋がりを表すパスを複数のパスに分割するタスクを記述できる請求項に記載の画像処理装置。
  5. 前記コンポーネント管理手段により生成された前記処理部品が、入力したデータに、前記処理部品で処理した結果を付加して出力する請求項1に記載の画像処理装置。
  6. 前記タスク格納手段が、前記タスクシナリオ情報を定期的に読み出し、前記タスクに用いた前記処理部品の間の繋がりが正しいか否かをチェックする請求項1に記載の画像処理装置。
  7. タスクシナリオ情報に基づいて画像処理を実行する画像処理方法であって、
    処理対象となるコンテンツを示すコンテンツ識別子と、前記コンテンツに対するタスクを示すタスク識別子とが入力されると、前記タスク識別子に対応する新規タスクに用いる処理部品と処理部品間の結合情報とが記述されたタスクシナリオ情報を格納手段から読み出すタスクシナリオ情報読み出しステップと、
    前記コンテンツ識別子に対応するコンテンツと同一のコンテンツを処理の対象としている動作中の既存タスクを見つけ、前記新規タスク及び既存タスクの各タスクシナリオ情報に記述された複数の処理部品を上流側から順に、同一であるか否かを比較し、同一でない処理部品が現れるまでの同一である前記処理部品を共有化が可能な処理部品として判定するタスク共有化判定ステップと、
    前記新規タスクのタスクシナリオ情報に記述された処理部品の中で、共有化が不可能な処理部品に関してのみ、処理部品の生成と前記処理部品に結合するソフトバスとを決定するタスク生成部品決定ステップと、
    前記新規タスクのタスクシナリオ情報に記述された結合情報に基づいて、前記タスク生成部品決定ステップで決定されたソフトバスを生成するソフトバス生成ステップと、
    前記新規タスクのタスクシナリオ情報に記述された処理部品の情報に基づいて、コンポーネントライブラリに格納されている処理部品の中から前記タスク生成部品決定ステップで決定された処理部品を読み出すコンポーネント読み出しステップと、
    前記コンポーネント読み出しステップで読み出された処理部品を、前記新規タスクのタスクシナリオ情報に記載された順番に起動させるコンポーネント起動ステップと、
    前記タスク共有化判定ステップで共有化が可能とされた最下流側の処理部品により前記コンテンツの処理が行われたときの出力データを、前記コンポーネント読み出しステップで読み出された最上流側の処理部品の入力データとなるように、前記ソフトバス内において、データの受け渡しを制御し、且つ、前記コンポーネント起動ステップで起動された処理部品の1つが、前記コンテンツを処理することにより生成された出力データを、次の処理部品の入力データとなるように、前記ソフトバス内において、データの受け渡しを制御するソフトバスデータ制御ステップと、
    から成る画像処理方法。
JP2002105508A 2002-04-08 2002-04-08 画像処理装置及び画像処理方法 Expired - Fee Related JP4086529B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2002105508A JP4086529B2 (ja) 2002-04-08 2002-04-08 画像処理装置及び画像処理方法
US10/408,589 US7228347B2 (en) 2002-04-08 2003-04-07 Image processing device and image processing method
CNB031786014A CN1264336C (zh) 2002-04-08 2003-04-08 图像处理设备和图像处理方法
EP03008191A EP1372071B1 (en) 2002-04-08 2003-04-08 Management of software components in an image processing system
DE60318771T DE60318771T2 (de) 2002-04-08 2003-04-08 Verwaltung der Softwarekomponenten in einem Bildverarbeitungssystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002105508A JP4086529B2 (ja) 2002-04-08 2002-04-08 画像処理装置及び画像処理方法

Publications (3)

Publication Number Publication Date
JP2003303102A JP2003303102A (ja) 2003-10-24
JP2003303102A5 JP2003303102A5 (ja) 2005-09-08
JP4086529B2 true JP4086529B2 (ja) 2008-05-14

Family

ID=29390179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002105508A Expired - Fee Related JP4086529B2 (ja) 2002-04-08 2002-04-08 画像処理装置及び画像処理方法

Country Status (5)

Country Link
US (1) US7228347B2 (ja)
EP (1) EP1372071B1 (ja)
JP (1) JP4086529B2 (ja)
CN (1) CN1264336C (ja)
DE (1) DE60318771T2 (ja)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4285307B2 (ja) 2004-04-02 2009-06-24 株式会社日立製作所 データ処理装置およびその方法
JP2006031261A (ja) * 2004-07-14 2006-02-02 Matsushita Electric Ind Co Ltd マルチメディア処理システム
JP2006309533A (ja) * 2005-04-28 2006-11-09 Hitachi Kokusai Electric Inc 分散処理プログラム
JP4828927B2 (ja) * 2005-12-16 2011-11-30 パナソニック株式会社 ストリーム制御装置
US20070156879A1 (en) * 2006-01-03 2007-07-05 Klein Steven E Considering remote end point performance to select a remote end point to use to transmit a task
JP2007282199A (ja) * 2006-03-15 2007-10-25 Ricoh Co Ltd フロー実装システム、フロー実装方法、フロー実装プログラム及び画像処理装置
JP4826407B2 (ja) * 2006-09-21 2011-11-30 株式会社日立製作所 記録再生装置
US9792090B2 (en) * 2006-11-03 2017-10-17 Metropolitan Life Insurance Co. Method and apparatus for achieving efficient upgrade of insurance products
CN101939727A (zh) * 2007-11-08 2011-01-05 遗传学金融(巴巴多斯)有限公司 执行复杂算法的分布式网络
JP2009116881A (ja) * 2008-11-07 2009-05-28 Hitachi Ltd データ処理装置およびその方法
RU2576498C2 (ru) * 2009-07-31 2016-03-10 Самсунг Электроникс Ко., Лтд. Способ и устройство для создания комплексного интерфейса пользователя
JP4973714B2 (ja) * 2009-10-15 2012-07-11 株式会社日立製作所 記録再生装置
KR101059658B1 (ko) * 2010-07-01 2011-08-25 엔에이치엔(주) 개발자 인터페이스 제공 방법 및 시스템
JP4875199B1 (ja) 2010-11-30 2012-02-15 株式会社東芝 番組合成装置および番組合成方法
CN102486738B (zh) * 2010-12-06 2013-07-24 中国航空工业集团公司第六三一研究所 高可靠性空投空降任务管理计算机
KR20130039213A (ko) * 2011-10-11 2013-04-19 한국전자통신연구원 장치 클라우드를 이용한 가상 머신 제공 시스템 및 그 방법
US9626273B2 (en) * 2011-11-09 2017-04-18 Nec Corporation Analysis system including analysis engines executing predetermined analysis and analysis executing part controlling operation of analysis engines and causing analysis engines to execute analysis
WO2013099062A1 (ja) * 2011-12-28 2013-07-04 日本電気株式会社 解析処理システム
US20140007004A1 (en) * 2012-06-29 2014-01-02 Nokia Corporation Method and apparatus for task chaining
US9378055B1 (en) 2012-08-22 2016-06-28 Societal Innovations Ipco Limited Configurable platform architecture and method for use thereof
CA2953297A1 (en) * 2014-05-21 2015-11-26 Societal Innovations Ipco Limited System and method for fully configurable real time processing
US10154095B2 (en) 2014-05-21 2018-12-11 N.Io Innovation, Llc System and method for aggregating and acting on signals from one or more remote sources in real time using a configurable platform instance
US9891893B2 (en) 2014-05-21 2018-02-13 N.Io Innovation, Llc System and method for a development environment for building services for a platform instance
JP6531374B2 (ja) * 2014-10-31 2019-06-19 キヤノンマーケティングジャパン株式会社 情報処理装置、その制御方法、及びプログラム
US10073707B2 (en) 2015-03-23 2018-09-11 n.io Innovations, LLC System and method for configuring a platform instance at runtime
US20210208929A1 (en) * 2015-11-20 2021-07-08 N.Io Innovation, Llc System And Method For Providing Configurable Communications For A Software Platform On A Per Service Basis
CN106959863B (zh) * 2017-03-30 2021-03-12 成都长天信息技术有限公司 一种静态流媒体处理方法及装置
CN107291565B (zh) * 2017-06-09 2020-07-14 千寻位置网络有限公司 运维可视化自动化作业平台及实现方法
CN107910003A (zh) * 2017-12-22 2018-04-13 智童时刻(厦门)科技有限公司 一种用于智能设备的语音交互方法及语音控制系统
JP7449841B2 (ja) * 2020-11-02 2024-03-14 株式会社日立製作所 中継装置および中継方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100318330B1 (ko) * 1991-04-08 2002-04-22 가나이 쓰도무 감시장치
JP2000056958A (ja) 1998-08-10 2000-02-25 Toshiba Corp 画像処理ソフトウエアの自動生成方法及びその装置
JP3880277B2 (ja) * 2000-03-03 2007-02-14 キヤノン株式会社 画像処理装置およびその制御方法
EP1132863A1 (en) 2000-03-08 2001-09-12 MVTec Software GmbH Method and system for developing image processing applications
US6785748B2 (en) * 2000-07-18 2004-08-31 Canon Kabushiki Kaisha Image communication apparatus wirelessly connectable to other apparatuses, system having the image communication apparatus, and method for controlling the same
US6925475B2 (en) * 2001-10-12 2005-08-02 Commissariat A L'energie Atomique Process and apparatus for management of multimedia databases
US20040030992A1 (en) * 2002-08-06 2004-02-12 Trandafir Moisa System and method for management of a virtual enterprise

Also Published As

Publication number Publication date
CN1264336C (zh) 2006-07-12
DE60318771T2 (de) 2009-01-22
CN1476232A (zh) 2004-02-18
EP1372071A3 (en) 2006-05-03
EP1372071A2 (en) 2003-12-17
DE60318771D1 (de) 2008-03-13
US20030212831A1 (en) 2003-11-13
JP2003303102A (ja) 2003-10-24
US7228347B2 (en) 2007-06-05
EP1372071B1 (en) 2008-01-23

Similar Documents

Publication Publication Date Title
JP4086529B2 (ja) 画像処理装置及び画像処理方法
US9502074B2 (en) Media foundation media processor
US7523457B2 (en) Dynamic reconfiguration of multimedia stream processing modules
US10897655B2 (en) AV server and AV server system
US7725920B2 (en) Media foundation media sink
MXPA03007574A (es) Interfase de programacion de aplicacion de desmultiplexor.
CA3167877A1 (en) Realtime distribution of granular data streams on a network
KR100719416B1 (ko) 데이터 처리 장치 및 데이터 처리 방법
JPH088907A (ja) ビデオ・オン・デマンド・サーバ
EP1256050B1 (en) High speed data transfer mechanism
US10887636B2 (en) AV server system and AV server
EP0713308B1 (en) Data sending device
JP3416498B2 (ja) サーバ装置およびその制御方法並びにサーバ装置制御プログラムを記録した記録媒体
JPH10285535A (ja) 映像音声処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050310

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070816

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071120

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080219

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110228

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4086529

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140228

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees