(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022178304
(43)【公開日】2022-12-02
(54)【発明の名称】情報処理装置、制御方法、および制御プログラム
(51)【国際特許分類】
G06F 13/00 20060101AFI20221125BHJP
【FI】
G06F13/00 520A
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2021085024
(22)【出願日】2021-05-20
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100121083
【弁理士】
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【弁理士】
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(72)【発明者】
【氏名】山口 伸康
【テーマコード(参考)】
5B084
【Fターム(参考)】
5B084AA23
5B084AB07
5B084BB12
5B084CD02
5B084CD26
5B084DC04
(57)【要約】
【課題】動画データを複数の処理装置に配備されたモジュールで分散処理する場合に、動画データの伝送負荷を低減する。
【解決手段】一実施形態に係る情報処理装置は、動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備する配備部と、複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、複数のモジュール間での動画データの受け渡しを第1の方式から、動画データの送受信を伴わない第2の方式に変更する変更部と、を含む。
【選択図】
図6
【特許請求の範囲】
【請求項1】
動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備する配備部と、
前記複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、前記複数のモジュール間での動画データの受け渡しを第1の方式から、前記動画データの送受信を伴わない第2の方式に変更する変更部と、
を含む、情報処理装置。
【請求項2】
前記第2の方式は、記憶装置における前記動画データの記憶場所を表す参照情報を伝送先のモジュールに通知する方式である、請求項1に記載の情報処理装置。
【請求項3】
前記変更部は、更に前記複数のモジュール間での前記動画データの前記第1の方式による受け渡しで実行される前記動画データの圧縮および復号を、前記第2の方式では実行しないように変更する、請求項1または請求項2に記載の情報処理装置。
【請求項4】
前記複数のモジュールのうちの第1のモジュールが出力するデータの伝送先の第2のモジュールが前記第1の処理装置とは異なる第2の処理装置に配備されている場合に、前記第1のモジュールと前記第2のモジュールとの間の通信方式を、前記第2のモジュールでの処理に要求される性能条件に基づいて、複数の通信方式のうちから選択する選択部、
を更に含み、
前記性能条件は、前記第2のモジュールに伝送されるデータに許容されるロス率および前記第2のモジュールで実行される処理で求められるリアルタイム性の少なくとも一方に関連する条件を含む、
請求項1から3のいずれか1項に記載の情報処理装置。
【請求項5】
動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備し、
前記複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、前記複数のモジュール間での動画データの受け渡しを第1の方式から、前記動画データの送受信を伴わない第2の方式に変更する、
ことを含む、コンピュータが実行する制御方法。
【請求項6】
動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備し、
前記複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、前記複数のモジュール間での動画データの受け渡しを第1の方式から、前記動画データの送受信を伴わない第2の方式に変更する、
処理を、コンピュータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、制御方法、および制御プログラムに関する。
【背景技術】
【0002】
近年、様々なビジネスの領域において、例えば、カメラなどの撮影装置で撮影した動画データを画像処理し、解析する需要が急激に増加している。こうした画像処理技術では、AI(人工知能)およびディープラーニング(深層学習)などがしばしば利用されている。一例として、ディープラーニングなどの機械学習によって得られた認識モデルを用いて動画から人の行動を認識することが行われている。
【0003】
画像処理技術では、例えばGPU(Graphics Processing Unit)などの処理装置のリソースを大量に要求されることがしばしばあり、また、用途によってはリアルタイムに画像処理を実行することが望まれることもある。そのため、処理負荷を低減するために、複数の処理装置をネットワーク通信回線で接続し、複数の処理装置を連携させて画像処理を実行するシステムがある。
【0004】
また、複数の処理装置を連携させて対象の処理を実行させる場合に、処理を複数の処理に分割し、処理のモジュールをコンテナとして要求されるリソース搭載量を満たす処理装置に自動的に配備し、処理を実行させるモジュールの運用管理技術も知られている。
【0005】
また、画像処理の制御に関連する技術が知られている(例えば、特許文献1および特許文献2)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2009-54003号公報
【特許文献2】特開2006-279278号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
例えば、動画データに対する一連の処理を複数の処理に分割し、複数の処理のモジュールを複数の処理装置に分散配備して動画データを処理することがある。この場合に、動画データの伝送負荷が増加してしまい、処理の遅延を招くことがある。
【0008】
1つの側面では、本発明は、動画データを複数の処理装置に配備されたモジュールで分散処理する場合に、動画データの伝送負荷を低減することを目的とする。
【課題を解決するための手段】
【0009】
本発明の一つの態様の情報処理装置は、動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備する配備部と、複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、複数のモジュール間での動画データの受け渡しを第1の方式から、動画データの送受信を伴わない第2の方式に変更する変更部と、を含む。
【発明の効果】
【0010】
動画データを複数の処理装置に配備されたモジュールで分散処理する場合に、動画データの伝送負荷を低減することができる。
【図面の簡単な説明】
【0011】
【
図1】実施形態に係る処理システムを例示する図である。
【
図2】実施形態に係る管理装置の機能ブロック構成を例示する図である。
【
図3】例示的な動画データの処理の流れと処理に対応するモジュールの複数の処理装置への配備を示す図である。
【
図4】実施形態に係る同じ処理装置に配備されたモジュール間でのデータの受け渡しの方式の変更を例示する図である。
【
図5】実施形態に係る配備情報を例示する図である。
【
図6】実施形態に係る動画データ受け渡し方式の変更処理の動作フローを例示する図である。
【
図7】実施形態に係る処理装置の設定情報への変更を例示する図である。
【
図8】第2の実施形態に係る異なる処理装置に配置されたモジュール間の通信方式の設定の変更を例示する図である。
【
図9】第2の実施形態に係る入出力情報を例示する図である。
【
図10】第2の実施形態に係る性能条件情報を例示する図である。
【
図11】第2の実施形態に係る通信方式情報を例示する図である。
【
図12】第2の実施形態に係る動画データ受け渡し方式の変更処理の動作フローを例示する図である。
【
図13】第2の実施形態に係る接続情報を例示する図である。
【
図14】同じ処理装置内のモジュール間での動画データの受け渡しの方式を変更した後の接続情報を例示する図である。
【
図15】異なる処理装置に配備されたモジュール間での通信方式を変更した後の接続情報を例示する図である。
【
図16】設定情報における通信方式の設定の変更を例示する図である。
【
図17】解析モジュールを用いたデータの種別情報の収集を例示する図である。
【
図18】実施形態に係る管理装置および処理装置を実現するためのコンピュータのハードウェア構成を例示する図である。
【発明を実施するための形態】
【0012】
以下、図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
【0013】
図1は、実施形態に係る処理システム100を例示する図である。処理システム100は、例えば、管理装置101と、複数の処理装置102とを含む。管理装置101および複数の処理装置102は、例えば、ネットワーク105を介して接続されていてよい。
【0014】
管理装置101は、例えば、サーバコンピュータなどの情報処理装置であってよく、処理装置102に実行させる処理を管理する。
【0015】
処理装置102は、例えば、パーソナルコンピュータ(PC)、モバイルPC、タブレット端末、スマートフォン、および携帯電話機などの端末、並びにエッジサーバおよびクラウドサーバといったサーバコンピュータなどのコンピュータであってよい。処理装置102は、例えば、管理装置101の指示に従って処理を実行する。また、処理装置102は、例えば、カメラなどの撮影装置103と接続されていてもよく、撮影装置103で撮影された動画データを取得してよい。なお、動画データは、例えば、映像データと呼ばれてもよい。
【0016】
管理装置101は、例えば、処理装置102に、その処理装置102に実行させる処理と対応するモジュールを配備する。処理装置102は、配備されたモジュールで対応する処理を実行する。一例として、画像処理では、上述のように、処理装置102のリソース(例えばGPU)を大量に要求されることがしばしばある。そのため、例えば、処理負荷を分散するために、動画データに対して実行される画像処理を複数の処理に分割し、処理と対応するモジュールを複数の処理装置に分散配備して動画データを処理させることが行われる。この場合、管理装置101の指示に従って複数の処理装置102は連携して動作し、動画データを順次処理して対象の画像処理を実行する。それにより、例えば、処理負荷を分散することができ、大量のデータを処理することが可能になる。
【0017】
なお、モジュールは、一例では、コンテナとして処理装置102に配備されてよい。コンテナは、コンピュータの仮想化方式の一つである。コンテナは、稼働中のオペレーティングシステム(OS)上に他と隔離された専用のエリアを作成して仮想的に新たなOS実行環境を作り出し、その上でソフトウェアを動作させる方式であり、この隔離された領域をコンテナと呼ぶことがある。コンテナを利用することで、配備したプラットフォームに依存せずに安定して処理を実行することができる。以下の実施形態では、モジュールは、コンテナであってよい。しかしながら、実施形態に係るモジュールはコンテナに限定されるものではなく、その他の形態で処理装置102に配備されてもよい。一例では、コンテナの代わりに、1個から複数個のコンテナをまとめたポッド(POD)と呼ばれる形式でモジュールが管理されてもよい。
【0018】
図2は、実施形態に係る管理装置101の機能ブロック構成を例示する図である。管理装置101は、例えば、制御部201、記憶部202、および通信部203を含む。制御部201は、例えば配備部211、変更部212、および選択部213などを含み、またその他の機能部を含んでもよい。管理装置101の記憶部202は、例えば、後述する配備情報500、設定情報700、入出力情報900、性能条件情報1000、通信方式情報1100、接続情報1300,1400,1500などの情報を記憶している。通信部203は、例えば、制御部201の指示に従って、処理装置102などの他の装置と通信する。これらの各部の詳細および記憶部202に格納されている情報の詳細については後述する。
【0019】
図3は、例示的な動画データの処理の流れと、処理と対応するモジュールの複数の処理装置への配備を示す図である。
【0020】
図3(a)は、動画データの処理の流れを例示している。実施形態では、管理装置101の制御部201は、動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に配備する。例えば、
図3(a)では、動画データの処理は、モジュール1からモジュール6の6つの処理に分割されており、そのモジュールの一連の処理のフローが示されている。
図3の例では動画データに対して、モジュール1で画像補正、モジュール2で人検出、モジュール3で骨格検出、モジュール4で行動判定、モジュール5で結果表示の処理を実行する。また、モジュール1の画像補正の下流の処理はモジュール6にも分岐しており、モジュール6では元動画の表示処理を実行する。なお、モジュール化される処理は、これらの例に限定されるものではない。例えば、動画データには、利用目的に応じて様々な処理が実行されてよく、その処理をモジュール化してモジュールが生成されてよい。例えば、モジュール化される動画データの処理は、動画データに含まれる画像の加工、動画データからの物体検出、動画データに写る対象の色判定および動き判定などのその他の処理を含んでよい。
【0021】
図3(b)では、
図3(a)の動画データに対する一連の処理のモジュールをコンテナとして、複数の処理装置102に配備する例を示している。例えば、
図3(b)では、管理装置101の制御部201は、処理装置1にはモジュール1からモジュール3を配備しており、処理装置2にはモジュール4およびモジュール5を配備しており、処理装置3にはモジュール6を配備している。
【0022】
そして、例えば、コンテナなどの仮想化技術を利用する場合、モジュール間の通信は、ネットワーク通信方式で実行される。これは、例えば、異なる処理と対応するモジュールのコンテナが、同じ処理装置102に配備される場合にも同様で、同じ処理装置102に配備されたコンテナ間での通信は仮想化された疑似的なネットワーク通信として処理される。
【0023】
また、動画データを伝送する場合、ネットワークに流れるデータ量を削減するために、圧縮および復号の処理が実行される。そして、動画データを複数の処理装置102で処理する場合、コンテナ間での動画データの伝送にかかる時間と、伝送の際の動画データの圧縮および復号にかかる時間とから、処理に時間がかかってしまうことがある。その結果、せっかく複数の処理装置102を用いた分散処理により処理速度を速めたとしても、処理の遅延を招くことがある。そのため、動画データを複数の処理装置に配備されたモジュールで分散処理する場合に、動画データの伝送負荷を低減することのできる技術の提供が望まれている。
【0024】
以下で述べる実施形態では、例えば、モジュール間の動画データの通信において伝送元のモジュールと伝送先のモジュールとが同じ処理装置102に配備されているとする。この場合に、管理装置101の制御部201は、例えば、そのモジュール間でのデータの受け渡しを動画データの送受信を伴わない方式に変更する。例えば、制御部201は、同じ処理装置102に配備されているモジュール間でのデータの受け渡しを、ネットワーク通信方式から共有メモリ渡しの方式に変更してよい。
【0025】
図4は、実施形態に係る同じ処理装置102に配備されたモジュール間でのデータの受け渡しの方式の変更を例示する図である。
図4では、処理装置1のモジュール1とモジュール2との間の動画データの受け渡し、および、モジュール2とモジュール3との間の動画データの受け渡しが、ネットワーク通信方式(
図4(a))から共有メモリ渡しの方式(
図4(b))に変更されている。また、制御部201は、動画データの受け渡しの方式の変更において、更に動画データの圧縮および復号を実行しないように変更してもよい。
【0026】
共有メモリ渡しは、例えば、対象のデータ自体を伝送することなく、データの格納されている記憶場所を示す情報を渡すことで、伝送先のモジュールがデータにアクセスすることを可能にする方式であってよい。例えば、共有メモリ渡しでは、制御部201は、記憶装置においてデータが格納されている記憶領域を示すポインタ、およびアドレスなどの情報を参照情報として通知し、伝送先のモジュールにデータの所在を伝えてよい。
【0027】
共有メモリ渡しでは、例えば、動画データのコピーといった動画データの送受信などの伝送が実行されなくてもよいため、伝送先のモジュールが動画データを利用可能になるまでにかかる時間を短縮することができる。また、共有メモリ渡しでは、例えば、ネットワーク通信による伝送と比較して、動画データの圧縮および復号などのデータ変換が実行されなくてもよいため、伝送先のモジュールがデータを利用可能になるまでにかかる時間を短縮することができる。なお、共有メモリ渡しは、例えば、伝送元と伝送先のモジュールが同一の処理装置102に配備されている場合に利用することができる。
【0028】
従って、実施形態によれば、例えば、処理システム100による動画データの処理において伝送負荷を低減することができ、高速な処理の実行が可能になる。以下、実施形態を更に詳細に説明する。
【0029】
図5は、実施形態に係る配備情報500を例示する図である。配備情報500には、例えば、処理装置識別子と、配備モジュールとを対応づけるレコードが登録されている。処理装置識別子は、例えば、処理装置を識別するための識別子であってよい。配備モジュールには、例えば、レコードの処理装置識別子で識別される処理装置102に配備されているモジュールを示す情報が登録されていてよい。例えば、制御部201は、配備情報500を参照することで、それぞれの処理装置102にどのモジュールが配備されているのか特定することができる。
【0030】
図6は、実施形態に係る管理装置101の制御部201によって実行される動画データ受け渡し方式の変更処理の動作フローを例示する図である。制御部201は、例えば、動画データ受け渡し方式の変更処理の実行指示が入力されると
図6の動作フローを開始してよい。
【0031】
ステップ601(以降、ステップを“S”と記載し、例えば、S601と表記する)において制御部201は、例えば、モジュールを処理装置に配備する。なお、制御部201は、1つの処理装置102に複数のモジュールを配備してもよい。例えば、制御部201は、動画データに対して実行する画像処理を複数の処理に分割し、複数の処理と対応するモジュールのコンテナを生成する。そして、制御部201は、例えば、得られた複数のモジュールのコンテナを、それぞれのコンテナで要求されるリソースの条件および複数のモジュールが実行される順序などに基づいて処理装置102に配備する。
【0032】
S602において制御部201は、配備結果を保存する。例えば、制御部201は、処理装置102にモジュールを配備した場合に、その処理装置102と、その処理装置102に配備したモジュールとを対応づけるレコードを配備情報500に登録することで、配備結果を記憶部202に保存してよい。
【0033】
S603において制御部201は、例えば、複数のモジュールが配備されている処理装置102を抽出する。例えば、制御部201は、配備情報500において、複数のモジュールと対応づけられている処理装置識別子で識別される処理装置102を抽出してよい。
【0034】
S604において制御部201は、複数のモジュールが配備されている処理装置102が抽出されたか否かを判定する。例えば、複数のモジュールが配備されている処理装置102が無い場合(S604がNO)、本動作フローは終了する。一方、例えば、複数のモジュールが配備されている処理装置102が抽出された場合(S604がYES)、フローはS605に進む。
【0035】
S605において制御部201は、抽出された同じ処理装置102に配備されたモジュール間でのデータの受け渡しを共有メモリ渡しに変更し、本動作フローは終了する。一例では、制御部201は、処理装置102でのモジュールによる処理の実行を制御するための設定情報において、同じ処理装置102に配備されたモジュール間の通信の設定を共有メモリ渡しに変更してよい。
【0036】
図7は、実施形態に係る処理装置1の設定情報700への変更を例示する図である。
図7の例では、設定情報700には、処理装置1に配備されているモジュール間のデータの伝送方式が設定されている。そして、
図7(a)では、TCP(Transmission Control Protocol)による通信に設定されていたモジュール間の通信が、
図7(b)では共有メモリ渡しに変更されている。例えば、制御部201は、
図7に示すように、変更対象の処理装置102の設定情報700を変更し、変更した設定情報700を処理装置102に送り込むことで、処理装置102に配備されたモジュールによる動画データの受け渡しの方式を制御してよい。例えば、処理装置1は、処理対象の動画データを受信した場合に、設定情報700を読み込んでモジュールの処理を実行する。それにより、処理装置1は、例えば、モジュール1とモジュール2と間の動画データの受け渡しを、メモリなどの記憶装置における動画データの記憶領域を参照する参照情報を伝送先のモジュール2に通知することで実行してよい。また、処理装置1は、例えば、モジュール2とモジュール3との間の動画データの受け渡しを、動画データの記憶領域を参照する参照情報を伝送先のモジュール3に通知することで実行してよい。
【0037】
それにより、
図6の動作フローによれば、例えば、制御部201は、処理装置に複数のモジュールが配備されている場合に、動画データのモジュール間の伝送負荷を低減することができる。
【0038】
また、
図7に示すように制御部201は、同じ処理装置102内のモジュール間での動画データの受け渡し方式の変更において、更に動画データの圧縮および復号を実行しないように変更してもよい。それにより、動画データの圧縮および復号にかかっていた時間を短縮することができる。
【0039】
(第2の実施形態)
続いて、第2の実施形態を説明する。上述の実施形態では、同じ処理装置102に配備されたモジュール間での動画データの受け渡しの方式を、動画データの送受信を伴わない方式に変更することで、動画データの伝送にかかる負荷を低減する実施形態を例示している。第2の実施形態では、異なる処理装置102に配備されているモジュール間での動画データの受け渡しの方式を、処理フローにおいて下流にある伝送先のモジュールでの動画データの利用の仕方に応じて変更する例を述べる。
【0040】
例えば、動画データの伝送先のモジュールが、伝送元のモジュールの配備されている処理装置102とは異なる別の処理装置102に配備されているとする。この場合に、実施形態では制御部201は、例えば、伝送先のモジュールの動画データの処理内容に応じて、伝送先のモジュールへの動画データの伝送に用いるプロトコルを変更してもよい。
【0041】
例えば、データの伝送に利用される方式として、TCP、UDP、およびSRTなどの方式が知られている。なお、UDPは、例えば、User Datagram Protocolの略称である。SRTは、例えば、Secure Reliable Transportの略称である。
【0042】
TCPは、例えば、伝送中にパケットの一部が損失した場合、受信側からの受信通知が確認されるまで同じパケットを再送信し続ける方式のプロトコルである。TCP方式は、確実なデータ伝送を可能とする。一方で、TCPを用いる場合、パケットロスにより伝送対象の動画データに再送が繰り返し発生したりすると、大きな遅延が生じたり、バッファ不足によって動画データの再生が停止してしまったりすることがある。
【0043】
UDPは、例えば、パケットロスの発生時の再送要求、およびジッタ防止機能を備えていない方式のプロトコルであり、非常に簡素に且つ高速にデータの送受信を行うことができる。一方で、UDPでは、例えば、データが伝送先に未到達であったり、ジッタが発生したりすると、映像および音声にノイズが発生することがある。
【0044】
SRTは、例えば、受信側でロスしたデータだけを送信側へ通知する方式であり、UDPと比較してデータ損失による映像の乱れを抑制することができ、一方で、TCPと比較して伝送処理を速く実施することができる方式である。
【0045】
以上のように、動画データの通信方式には複数の種類が存在する。一方、モジュール間の動画データの受け渡しの方式は、例えば、TCPなどの特定の方式に固定的に設定されることがある。そこで、第2の実施形態では、制御部201は、動画データに対する処理フローで伝送先となるモジュールにおける動画データの用途に応じて通信方式を選択する。それにより、動画データの伝送負荷を低減したり、伝送速度を速めたり、および伝送されるデータの信頼性を高めたりすることが可能である。
【0046】
一例として、証拠などとして用いるために動画データの収集が行われる場合、伝送に時間がかかっても動画データの全体が高精度に取得されることが望ましいことがある。この場合、制御部201は、例えば、通信方式をTCPに設定してよく、それにより高い信頼性でデータを収集することが可能となる。
【0047】
また、例えば、リアルタイムで動画データに処理を実行する場合などデータに欠落が生じても素早くデータが欲しいこともある。この場合、制御部201は、通信方式をUDPに設定してよく、それにより高速にデータを伝送することが可能となる。
【0048】
また、データの処理のリアルタイム性とデータのロス率の低減の両方が望まれる場合、制御部201は、通信方式をSRTに設定してよい。それにより、リアルタイム性とデータのロス率の低減の両立を図ることができる。
【0049】
図8は、第2の実施形態に係る異なる処理装置102に配置されたモジュール間の通信方式の設定の変更を例示する図である。
【0050】
図8(a)は、異なる処理装置102に配置されたモジュール間の変更前の通信方式を表しており、異なる処理装置102に配置されたモジュール間の通信方式は一律にTCPに設定されている。即ち、例えば、伝送元のモジュール3から、伝送先のモジュール4およびモジュール5へのデータの通信方式、および伝送元のモジュール1からモジュール6へのデータの通信方式はTCPに設定されている。
【0051】
図8(b)は、異なる処理装置102に配置されたモジュール間の通信方式の設定の変更後を表している。例えば、モジュール5は動画データに写る人物の行動の検出結果を表示する処理を実行するモジュールであり、この結果表示のモジュールの処理では動画データのロス率の低減と、処理のリアルタイム性との両方が要求されるとする。この場合、
図8(b)に示すように、制御部201は、モジュール3からモジュール5への動画データの伝送に用いる通信方式を、TCPからSRTに変更してよい。それにより、リアルタイム性とデータのロス率の低減の両立を図ることができる。
【0052】
また、例えば、モジュール6は元動画を表示する処理を実行するモジュールであり、この元動画表示のモジュールの処理では動画データのロスよりも、即時の表示が可能となるようにリアルタイム性が優先されるとする。この場合、
図8(b)に示すように、制御部201は、モジュール1からモジュール6への動画データの伝送に用いる通信方式を、TCPからUDPに変更してよい。それにより、動画データの伝送速度を速めることができるため、リアルタイム性を高めることができる。
【0053】
なお、例えば、モジュール4は、動画データに写る人物に対する行動判定を実行するモジュールであり、モジュール3から出力されたテキストデータに対して行動判定の処理を実行する。この様に、伝送されるデータがテキストデータなどの動画データと比較してデータ量が少ないデータである場合、制御部201は、通信方式を変更しなくてもよい。
図8(b)に示す例では、制御部201は、モジュール3からモジュール4へのテキストデータの伝送に用いる通信方式はTCPのままとしており、変更を行っていない。
【0054】
なお、別の例として、動画データを証拠として残す場合などのように、動画データを高い精度で保存することが望まれることがある。例えば、証拠保存などの高い信頼性で動画データを保存することが望まれる処理を実行するモジュールに動画データを伝送する場合、制御部201は、そのモジュールへの動画データの伝送に用いる通信方式としてTCPを選択してもよい。
【0055】
以上に述べたように、第2の実施形態では、異なる処理装置102に配置されたモジュール間での動画データの伝送に用いる通信方式を、複数の通信方式のうちから動画データの用途に応じて選択する。それにより、動画データの伝送負荷を低減したり、伝送速度を速めたり、および伝送されるデータの信頼性を高めたりすることが可能である。以下、第2の実施形態を更に詳細に説明する。
【0056】
図9は、第2の実施形態に係る入出力情報900を例示する図である。入出力情報900には、例えば、機能と、入力データ形式と、出力データ形式とを対応づけるレコードが登録されている。機能は、レコードのモジュールが有する機能を示す情報である。入力データ形式は、レコードの機能を有するモジュールに入力される入力データのデータ形式を示す情報である。出力データ形式は、レコードの機能を有するモジュールが出力する出力データのデータ形式を示す情報である。
【0057】
図10は、第2の実施形態に係る性能条件情報1000を例示する図である。例えば、
図10では性能条件情報1000には、機能と、性能条件とを対応づけるレコードが登録されている。機能は、レコードのモジュールが有する機能を示す情報である。性能条件は、例えば、レコードの機能を有するモジュールで求められる性能を示す性能条件を示す情報である。一例では、性能条件は、レコードのモジュールに伝送されるデータに許容されるロス率、およびレコードのモジュールで実行される処理で求められるリアルタイム性の少なくとも一方に関連する条件を含む。
【0058】
図11は、第2の実施形態に係る通信方式情報1100を例示する図である。例えば、
図11では通信方式情報1100には、性能条件と、通信方式とを対応づけるレコードが登録されている。性能条件は、例えば、モジュールの処理で求められる性能を示す性能条件を示す情報である。通信方式は、例えば、レコードの性能条件に適した通信方式が登録されている。
図11の例では、性能条件:データのロス率の低減には通信方式:TCPが設定されている。また、性能条件:リアルタイム性には通信方式:UDPが設定されている。性能条件:リアルタイム性とデータのロス率の低減の両立には通信方式:SRTが設定されている。また、性能条件:無しにはTCPが設定されている。なお、性能条件:無しは、例えば、伝送対象のデータが動画データではなく、伝送負荷が低い場合に用いられてよい。そして、性能条件:無しには、一例では、通信方式としてTCPが設定されていてよい。
【0059】
図12は、第2の実施形態に係る管理装置101の制御部201によって実行される動画データ受け渡し方式の変更処理の動作フローを例示する図である。制御部201は、例えば、動画データ受け渡し方式の変更処理の実行指示が入力されると
図12の動作フローを開始してよい。
【0060】
S1201からS1204の処理は、例えば、S601からS604の処理とそれぞれ対応していてよく、一例では、制御部201は、S601からS604の処理と同様の処理を実行してよい。ただし、S1202の処理では制御部201は、配備情報500に処理装置102に配備したモジュールの情報を登録し、更に、接続情報1300にモジュール間の接続に関する情報を登録してよい。
【0061】
図13は、第2の実施形態に係る接続情報1300を例示する図である。
図13の例では、接続情報1300には、伝送元、伝送先および方式を対応づけるレコードが登録されている。接続情報1300の伝送元は、例えば、レコードと対応するモジュール間の通信における伝送元のモジュールを示す情報である。接続情報1300の伝送先は、例えば、レコードと対応するモジュール間の通信における伝送先のモジュールを示す情報である。
図13の例では、伝送元および伝送先にはモジュール識別子と、そのモジュールの機能とを示す情報が登録されている。方式は、例えば、レコードと対応するモジュール間でのデータの受け渡しに設定されている方式が登録されている。例えば、制御部201は、複数の処理装置102にモジュールを配備する際に、処理フローにおけるモジュール間の接続に基づいて、伝送元および伝送先の情報を接続情報1300に登録してよい。また、制御部201は、一例では、接続情報1300にレコードを登録する際に、方式には初期値としてTCPを設定してよい。
【0062】
そして、制御部201は、S1205の処理では、同じ処理装置102内のモジュール間での伝送されるデータが動画データであるか否かを判定する。例えば、制御部201は、同じ処理装置102間でデータを伝送するモジュールの伝送先のモジュールの機能を特定し、特定した機能と入出力情報900において対応づけられる入力データ形式が動画データを含む場合に、S1205においてYESと判定してよい。例えば、同じ処理装置102間でデータを伝送するモジュールとしてモジュール1とモジュール2が特定されているとする。この場合に、例えば、伝送先のモジュール2の機能:人検出と対応する入力データ形式として、入出力情報900には動画データが登録されているため、制御部201は、S1205においてYESと判定してよい。そして、例えば、同じ処理装置102内でデータを伝送するモジュール間で伝送されるデータが動画データでない場合(S1205がNO)、フローはS1207に進む。一方、同じ処理装置102内でデータを伝送するモジュール間で伝送されるデータが動画データである場合(S1205がYES)、フローはS1206に進む。
【0063】
S1206の処理では制御部201は、同じ処理装置102内のモジュール間での動画データの受け渡しの方式を共有メモリ渡しに変更してよい。
【0064】
図14は、同じ処理装置102内のモジュール間での動画データの受け渡しの方式を変更した後の接続情報1400を例示する図である。伝送元:モジュール1から伝送先:モジュール2への受け渡しの方式および伝送元:モジュール2から伝送先:モジュール3への受け渡しの方式が、共有メモリ渡しに変更されている。
【0065】
続いてS1207の処理では制御部201は、処理フローにおけるモジュール間の接続と、配備情報500に基づいて、別の処理装置102間でデータ伝送するモジュールを抽出する。
【0066】
S1208において制御部201は、別の処理装置102間でデータ伝送するモジュールが抽出されたか否かを判定する。別の処理装置102間でデータ伝送するモジュールが抽出されなかった場合(S1208がNO)、フローはS1211に進む。一方、別の処理装置102間でデータを伝送するモジュールが抽出された場合(S1208がYES)、フローはS1209に進む。
【0067】
S1209において制御部201は、別の処理装置102間でデータを伝送するモジュールで伝送されるデータが動画データであるか否かを判定する。例えば、制御部201は、別の処理装置102間でデータを伝送するモジュールの伝送先のモジュールの機能を特定し、特定した機能と入出力情報900において対応づけられる入力データ形式が動画データを含む場合に、S1209においてYESと判定してよい。例えば、別の処理装置102間でデータを伝送するモジュールとしてモジュール3とモジュール4が特定されているとする。この場合に、例えば、伝送先のモジュール4の機能:行動判定と対応する入力データ形式として、入出力情報900にはテキストデータが登録されており、動画データは含まれていないため、制御部201は、S1209においてNOと判定してよい。一方、例えば、別の処理装置102間でデータを伝送するモジュールとしてモジュール3とモジュール5が特定されているとする。この場合に、例えば、伝送先のモジュール5の機能:結果表示と対応する入力データ形式として、入出力情報900には動画データが登録されているため、制御部201は、S1209においてYESと判定してよい。そして、別の処理装置102間でデータを伝送するモジュールにおいて伝送されるデータが動画データでない場合(S1209がNO)、フローはS1212に進む。一方、別の処理装置102間でデータを伝送するモジュールにおいて伝送されるデータが動画データである場合(S1209がYES)、フローはS1210に進む。
【0068】
S1210において制御部201は、別の処理装置102間でデータを伝送するモジュールの伝送先のモジュールの性能条件を取得する。例えば、制御部201は、別の処理装置102間でデータを伝送するモジュールの伝送先のモジュールの機能を特定し、特定した機能と性能条件情報1000において対応づけられる性能条件を取得してよい。例えば、別の処理装置102間でデータを伝送するモジュールとしてモジュール3とモジュール5が特定されたとする。この場合に、制御部201は、例えば、伝送先のモジュール5の機能:結果表示と対応する性能条件として、性能条件情報1000からリアルタイム性とデータのロス率の低減を特定してよい。
【0069】
そして、S1211において制御部201は、性能条件情報に基づき通信方式を設定する。例えば、制御部201は、別の処理装置102間でデータを伝送するモジュールの伝送先のモジュールに対して特定した性能条件と対応する通信方式を通信方式情報1100から特定し、特定した通信方式を接続情報1400に設定してよい。例えば、別の処理装置102間でデータを伝送するモジュールとして特定されたモジュール3とモジュール5の伝送先のモジュール5に対して、性能条件としてリアルタイム性とデータのロス率の低減が特定されたとする。この場合に、制御部201は、リアルタイム性とデータのロス率の低減と対応するSRTを通信方式情報1100から特定し、接続情報1400において伝送元がモジュール3で伝送先がモジュール5のレコードの通信方式をSRTに設定してよい。
【0070】
図15は、異なる処理装置102に配備されたモジュール間での動画データの受け渡しの方式を変更した後の接続情報1500を例示する図である。
図15の例では、伝送元:モジュール3から伝送先:モジュール5への受け渡しの方式がSRTに変更されている。なお、
図15の例では、更に伝送元:モジュール1から伝送先:モジュール6への受け渡しの方式がUDPに変更されている。
【0071】
S1212において制御部201は、モジュールを配備した処理装置102に対する設定情報700を編集する。例えば、制御部201は、変更後の接続情報1500に基づいて、
図7の設定情報700に示すように、同じ処理装置102内に配備されたモジュール間のデータの受け渡しの方式を共有メモリ渡しに変更してよい。また、制御部201は、変更後の接続情報1500に基づいて、
図16の設定情報700に示すように、異なる処理装置102に配備されたモジュール間の動画データの通信方式を変更してよい。
【0072】
図16は、設定情報700における異なる処理装置102に配備されたモジュール間の動画データの受け渡しの方式の設定の変更を例示する図である。
図16に示すように、モジュール3とモジュール5との間の方式がSRTに変更されており、また、モジュール1とモジュール6との間の方式がUDPに変更されている。
【0073】
そして、S1213において制御部201は、設定の変更後の設定情報700を、処理装置102に送信する。それにより、制御部201は、処理装置102に配備されたモジュールによる動画データの受け渡しの方式を制御してよい。例えば、処理装置1は、処理対象の動画データを受信した場合に、設定情報700に基づいて、モジュール1とモジュール2と間の動画データの受け渡しを、メモリなどの記憶装置の動画データの記憶領域を参照する参照情報を通知することで実行してよい。また、例えば、処理装置1は、処理対象の動画データを受信した場合に、設定情報700に基づいて、モジュール2とモジュール3と間の動画データの受け渡しを、動画データの記憶領域を参照する参照情報を通知することで実行してよい。また、処理装置1は、設定情報700に基づいて、モジュール3とモジュール5との間の通信をSRTを用いて実行してよく、また、モジュール1とモジュール6との間の通信をUDPを用いて実行してよい。
【0074】
以上に述べたように、
図12の動作フローによれば、制御部201は、動画データを複数の処理装置に配備されたモジュールで分散処理する場合に、動画データの伝送負荷を低減することができる。例えば、制御部201は、同じ処理装置102内に配備されたモジュール間での動画データの受け渡しに共有メモリ渡しを用いることで、伝送負荷を低減することができる。また、第2の実施形態では制御部201は、異なる処理装置102に配備されたモジュール間での動画データの伝送に、伝送先のモジュールでの動画データの用途に応じた通信方式を用いている。それにより、動画データの伝送負荷を低減したり、伝送速度を速めたり、および伝送されるデータの信頼性を高めたりすることが可能である。
【0075】
なお、第2の実施形態では制御部201は、例えば、S1205およびS1209の処理で伝送される対象のデータが動画データであるか否かの確認を実行している。そして、制御部201は、伝送対象のデータが動画データである場合に、データの受け渡しの方式を変更したり、データの伝送の際に用いる通信方式を変更したりしている。動画データは、データ量が大きく伝送負荷が高くなることが多い。また、データ量が大きいため、圧縮復号といったデータの変換処理を伴うこともある。こうしたデータ量の多い動画データに対して、上述の実施形態を適用することで、伝送負荷を効率的に低減することができる。また、一方で、テキストデータなどのデータは、動画データと比較してデータサイズがそれほど大きくならないことが多い。こうしたデータ量の少ないデータでは、上述の実施形態で述べたデータの受け渡しの方式の変更およびデータの伝送に用いる通信方式の変更を行っても、伝送負荷に与える影響は少ない。そのため、例えば、動画データか否かを判定して、動画データではない場合には、実施形態に係るデータの受け渡しの方式の変更およびデータの伝送に用いる通信方式の変更を行わなくてもよい。また、それにより、データの受け渡しの方式の変更およびデータの伝送に用いる通信方式の変更にかかる処理量を低減することができる。
【0076】
なお、実施形態に係るデータの受け渡しの方式の変更およびデータの伝送に用いる通信方式の変更は、動画データ以外にもデータ量の多い別の種類のデータなどのその他のデータに対して適用されてもよい。
【0077】
以上において、実施形態を例示したが、実施形態はこれに限定されるものではない。例えば、上述の動作フローは例示であり、実施形態はこれに限定されるものではない。可能な場合には、動作フローは、処理の順番を変更して実行されてもよく、別に更なる処理を含んでもよく、または、一部の処理が省略されてもよい。例えば、
図12のS1205およびS1209の処理は、実行されなくてもよく、全ての種別のデータに対して実施形態に係るデータの受け渡しの方式の変更およびデータの伝送に用いる通信方式の変更が実行されてもよい。
【0078】
また、上述の実施形態では、制御部201は、モジュールを配備する際に、配備結果に基づいて同じ処理装置102内に配備するモジュールの情報を配備情報500に登録する例を述べている。しかしながら、実施形態はこれに限定されるものではない。例えば、制御部201は、データの伝送元のモジュールのIPアドレス・ポートと、データの伝送先のモジュールのIPアドレス・ポートとが対応しているかを確認することで、同じ処理装置102内に配備されたモジュールを特定してもよい。
【0079】
また、上述の実施形態では、例えば、
図9に示すように、モジュールとして実装される機能と対応づけて、モジュールの入力データ形式と出力データ形式の情報が予め入出力情報900に登録されている場合を例に説明を行っている。しかしながら、実施形態はこれに限定されるものではない。例えば、制御部201は、処理装置102に、その処理装置102に配備されているモジュールに入力されるデータの種別を解析する解析モジュールを更に配備してよい。そして、制御部201は、配備した解析モジュールから各モジュールに入力されるデータのデータ形式の情報を収集して、入出力情報900に登録してもよい。
【0080】
図17は、解析モジュール1701を用いたデータの種別情報の収集を例示する図である。
図17に示すように、管理装置101の制御部201は、処理装置102にモジュールを配備する際に、各モジュールの入力側に解析モジュール1701を配備してよい。その後、管理装置101の制御部201は、例えば、配備したモジュールに動画データをいったん処理させて、各モジュールに入力されるデータの種別を解析モジュール1701で判別する。一例では、解析モジュール1701は、入力データのフォーマットを解析し、動画データに特有のプロトコルおよびフォーマットが利用されているか否かを判定する。そして、解析モジュール1701は、データの解析結果を管理装置101に送信してよい。それにより、管理装置101の制御部201は、解析結果に基づいて、それぞれのモジュールに入力されるデータが動画データであるか否かの情報を取得することができる。そして、一例では制御部201は、解析結果に基づいて入出力情報900を生成してよい。なお、解析モジュール1701は、入力データの解析結果を管理装置101に送信すると動作を終了させてよく、以降は、処理システム100では解析モジュール1701を介さずに動画データの処理が実行されてよい。
【0081】
上述の実施形態において、例えば、S601およびS1201の処理では、制御部201は、配備部211として動作する。また、例えば、S605、S1206、およびS1213の処理では、制御部201は、変更部212として動作する。例えば、S1211の処理では、制御部201は、選択部213として動作する。
【0082】
図18は、実施形態に係る管理装置101および処理装置102を実現するためのコンピュータ1800のハードウェア構成を例示する図である。
図18のハードウェア構成は、例えば、プロセッサ1801、メモリ1802、記憶装置1803、読取装置1804、通信インタフェース1806、および入出力インタフェース1807を備える。なお、プロセッサ1801、メモリ1802、記憶装置1803、読取装置1804、通信インタフェース1806、入出力インタフェース1807は、例えば、バス1808を介して互いに接続されている。
【0083】
プロセッサ1801は、例えば、シングルプロセッサであっても、マルチプロセッサやマルチコアであってもよい。管理装置101のプロセッサ1801は、メモリ1802を利用して例えば上述の動作フローの手順を記述したプログラムを実行することにより、上述した制御部201の一部または全部の機能を提供する。例えば、管理装置101のプロセッサ1801は、記憶装置1803に格納されているプログラムを読み出して実行することで、配備部211、変更部212、および選択部213として動作する。また、処理装置102のプロセッサ1801は、例えば、メモリ1802を利用してプログラムを実行することにより、上述した処理装置102の一部または全部の機能を提供する。
【0084】
メモリ1802は、例えば半導体メモリであり、RAM領域およびROM領域を含んでいてよい。記憶装置1803は、例えばハードディスク、フラッシュメモリ等の半導体メモリ、または外部記憶装置である。なお、RAMは、Random Access Memoryの略称である。また、ROMは、Read Only Memoryの略称である。
【0085】
読取装置1804は、プロセッサ1801の指示に従って着脱可能記憶媒体1805にアクセスする。着脱可能記憶媒体1805は、例えば、半導体デバイス、磁気的作用により情報が入出力される媒体、光学的作用により情報が入出力される媒体などにより実現される。なお、半導体デバイスは、例えば、USB(Universal Serial Bus)メモリである。また、磁気的作用により情報が入出力される媒体は、例えば、磁気ディスクである。光学的作用により情報が入出力される媒体は、例えば、CD-ROM、DVD、Blu-ray Disc等(Blu-rayは登録商標)である。CDは、Compact Discの略称である。DVDは、Digital Versatile Diskの略称である。
【0086】
管理装置101の記憶部202は、例えばメモリ1802、記憶装置1803、および着脱可能記憶媒体1805を含んでいる。例えば、管理装置101の記憶装置1803には、配備情報500、設定情報700、入出力情報900、性能条件情報1000、通信方式情報1100、接続情報1300,1400,1500などの情報が格納されている。また、処理装置102の記憶装置1803には、設定情報700、コンテナなどのモジュールの情報が格納されていてよい。
【0087】
通信インタフェース1806は、プロセッサ1801の指示に従って、他の装置と通信する。例えば、管理装置101の通信インタフェース1806は、ネットワークを介して処理装置102などの他の装置とデータを送受信してよい。処理装置102の通信インタフェース1806は、ネットワークを介して管理装置101、他の処理装置102、および撮影装置103などの他の装置とデータを送受信してよい。なお、通信インタフェース1806は、管理装置101の通信部203の一例である。
【0088】
入出力インタフェース1807は、例えば、入力装置および出力装置との間のインタフェースであってよい。入力装置は、例えばユーザからの指示を受け付けるキーボード、マウス、タッチパネルなどのデバイスである。出力装置は、例えばディスプレーなどの表示装置、およびスピーカなどの音声装置である。
【0089】
実施形態に係る各プログラムは、例えば、下記の形態で管理装置101および処理装置102に提供される。
(1)記憶装置1803に予めインストールされている。
(2)着脱可能記憶媒体1805により提供される。
(3)プログラムサーバなどのサーバから提供される。
【0090】
なお、
図18を参照して述べた管理装置101および処理装置102を実現するためのコンピュータ1800のハードウェア構成は、例示であり、実施形態はこれに限定されるものではない。例えば、上述の構成の一部が、削除されてもよく、また、新たな構成が追加されてもよい。また、別の実施形態では、例えば、上述の管理装置101および処理装置102の一部または全部の機能がFPGA、SoC、ASIC、およびPLDなどによるハードウェアとして実装されてもよい。なお、FPGAは、Field Programmable Gate Arrayの略称である。SoCは、System-on-a-chipの略称である。ASICは、Application Specific Integrated Circuitの略称である。PLDは、Programmable Logic Deviceの略称である。
【0091】
以上において、いくつかの実施形態が説明される。しかしながら、実施形態は上記の実施形態に限定されるものではなく、上述の実施形態の各種変形形態および代替形態を包含するものとして理解されるべきである。例えば、各種実施形態は、その趣旨および範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、前述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して、または実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。
【0092】
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備する配備部と、
前記複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、前記複数のモジュール間での動画データの受け渡しを第1の方式から、前記動画データの送受信を伴わない第2の方式に変更する変更部と、
を含む、情報処理装置。
(付記2)
前記第2の方式は、記憶装置における前記動画データの記憶場所を表す参照情報を伝送先のモジュールに通知する方式である、付記1に記載の情報処理装置。
(付記3)
前記変更部は、更に前記複数のモジュール間での前記動画データの前記第1の方式による受け渡しで実行される前記動画データの圧縮および復号を、前記第2の方式では実行しないように変更する、付記1または付記2に記載の情報処理装置。
(付記4)
前記複数のモジュールのうちの第1のモジュールが出力するデータの伝送先の第2のモジュールが前記第1の処理装置とは異なる第2の処理装置に配備されている場合に、前記第1のモジュールと前記第2のモジュールとの間の通信方式を、前記第2のモジュールでの処理に要求される性能条件に基づいて、複数の通信方式のうちから選択する選択部、
を更に含み、
前記性能条件は、前記第2のモジュールに伝送されるデータに許容されるロス率および前記第2のモジュールで実行される処理で求められるリアルタイム性の少なくとも一方に関連する条件を含む、
付記1から3のいずれかに記載の情報処理装置。
(付記5)
前記選択部は、前記性能条件が、前記動画データの処理のリアルタイム性を優先する性能条件である場合、前記通信方式としてUDPを選択する、付記4に記載の情報処理装置。
(付記6)
前記選択部は、前記性能条件が、前記動画データの処理のリアルタイム性および前記動画データのロス率の低減を優先する性能条件である場合、前記通信方式としてSRTを選択する、付記4に記載の情報処理装置。
(付記7)
前記選択部は、前記性能条件が、リアルタイム性およびデータロスの低減の両立を優先する性能条件である場合、前記通信方式としてSRTを選択する、付記4に記載の情報処理装置。
(付記8)
動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備し、
前記複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、前記複数のモジュール間での動画データの受け渡しを第1の方式から、前記動画データの送受信を伴わない第2の方式に変更する、
ことを含む、コンピュータが実行する制御方法。
(付記9)
動画データに対して実行する複数の処理を含む処理フローの各処理をモジュールとして、複数の処理装置に分散して配備し、
前記複数の処理装置の第1の処理装置に複数のモジュールが配備された場合に、前記複数のモジュール間での動画データの受け渡しを第1の方式から、前記動画データの送受信を伴わない第2の方式に変更する、
処理を、コンピュータに実行させる制御プログラム。
【符号の説明】
【0093】
100 処理システム
101 管理装置
102 処理装置
103 撮影装置
105 ネットワーク
201 制御部
202 記憶部
203 通信部
211 配備部
212 変更部
213 選択部
1701 解析モジュール
1800 コンピュータ
1801 プロセッサ
1802 メモリ
1803 記憶装置
1804 読取装置
1805 着脱可能記憶媒体
1806 通信インタフェース
1807 入出力インタフェース
1808 バス