JP2014089514A - 電子文書データを生成する装置、方法およびプログラム - Google Patents

電子文書データを生成する装置、方法およびプログラム Download PDF

Info

Publication number
JP2014089514A
JP2014089514A JP2012237924A JP2012237924A JP2014089514A JP 2014089514 A JP2014089514 A JP 2014089514A JP 2012237924 A JP2012237924 A JP 2012237924A JP 2012237924 A JP2012237924 A JP 2012237924A JP 2014089514 A JP2014089514 A JP 2014089514A
Authority
JP
Japan
Prior art keywords
image
image data
electronic document
displayed
setting
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.)
Pending
Application number
JP2012237924A
Other languages
English (en)
Inventor
Atsushi Torisaki
敦 鳥崎
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2012237924A priority Critical patent/JP2014089514A/ja
Publication of JP2014089514A publication Critical patent/JP2014089514A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

【課題】所望のオブジェクトについて立体視画像表示が可能な電子文書データを、簡易な方法によって得る。
【解決手段】電子文書データ内のオブジェクトを立体視画像として表示するかどうか設定する設定手段と、前記設定手段で立体視画像として表示すると設定されたオブジェクトについて、互いに視差のある左眼用画像と右眼用画像とからなる3D画像データを生成する3D画像データ生成手段と、備えることを特徴とする。
【選択図】図2

Description

本発明は、立体視画像表示のための電子文書データの生成に関する。
昨今、3D映画等における立体視画像表示技術が普及しつつある。また、3Dプロジェクタが登場したことにより、映画館や家庭における娯楽用途だけでなく、一般企業におけるプレゼンテーションといったビジネス用途においても、3Dによる映像表示の利用場面が増えていくことが予想される。
人間が物を見る時、左眼と右眼で物の見える位置は微妙にずれている。左右の眼それぞれで見たずれのある2つの画像が脳内で1つの画像に変換されることにより、人間は物を立体的に認識している。つまり、左右それぞれの眼で捉えられた2つの画像のずれ量によって人間は奥行きを感じている。立体視画像表示技術ではこのような人間の眼の性質を利用している。
特開2011−82999号公報
立体視画像の表示を可能にする従来の3D画像データは、3Dカメラに代表される専用の装置を使って作成されるか、或いは2D画像データを3D画像データに変換するための専用の装置を使って作成されている。つまり、いずれにしても3D画像データを得るための専用の装置が必要であった。
また、特許文献1に開示された技術では、視差のある複数の画像の全体が立体視画像として表示可能な画像データに変換され、立体視画像として表示する必要のない部分まで3D画像データ化されていた。
本発明に係る装置は、電子文書データ内のオブジェクトを立体視画像として表示するかどうか設定する設定手段と、前記設定手段で立体視画像として表示すると設定されたオブジェクトについて、互いに視差のある左眼用画像と右眼用画像とからなる3D画像データを生成する3D画像データ生成手段と、備えることを特徴とする。
本発明によれば、所望のオブジェクトについて立体視画像表示が可能な電子文書データを、簡易な方法によって得ることができる。
実施例1に係る情報処理装置のハードウェア構成を示す図である。 実施例1に係る情報処理装置において、立体視画像の表示を可能にする電子文書データを生成する処理の流れを示すフローチャートである。 オブジェクトに対して立体視画像として表示する旨の指定を行うためのUI画面の一例を示す図である。 3Dスライドショー設定を行うためのUI画面の一例を示す図である。 変換効果と透過率の関係を示す図である。 飛び出し効果の設定を行うためのUI画面の一例を示す図である。 3Dオブジェクトの表示画面からの飛び出し位置と、3Dオブジェクトの表示画面上のずらし量(両眼視差)との関係を示す図である。 3D画像データ生成処理の流れを示すフローチャートである。 グラフオブジェクトと文字オブジェクトとで構成されるスライドにおいて、グラフオブジェクトに対し3Dオブジェクトの指定がなされた場合の3D画像データ化の様子を示す図である。 情報処理装置において3D画像データを含む電子文書データを表示(スライドショー)する処理の流れを示すフローチャートである。 3Dスライドショーの実行を指示するためのUI画面の一例を示す図である。
以下、本発明を実施するための形態について図面を用いて説明する。
図1は、本実施例に係る情報処理装置のハードウェア構成を示す図である。
情報処理装置101は、PC等の情報処理を行う端末であり、CPU102、メモリ103、HDD104、入力I/F部1005、外部I/F部1006で構成される。
各部を統括的に制御するプロセッサ(CPU)102は、制御プログラムを読み出して各種制御処理を実行する。
メモリ103は、ROMとRAMで構成される。ROMは、CPU102で実行される各種命令(OSやアプリケーションプログラム等)を記憶する。RAMは、CPU102の主メモリ、ワークエリア等の一時記憶領域として用いられる。
HDD104は、RAMに読み出されるプログラムや実行結果などの格納領域として用いられる。
操作部105は、キーボードやマウス、或いはタッチパネル式のLCD表示部などで構成され、この操作部105を介してユーザは各種操作指示を行う。操作部105で入力された情報は、CPU102に伝えられて所望の処理が実行され、その処理結果等は不図示の外部モニタ或いはLCD表示部に表示される。すなわち、情報処理装置としては、入力操作にキーボードやマウス等を用いる一般的なPCでもよいし、キーボードやマウスを用いないタブレット端末であってもよい。
外部インタフェース部106は、LAN等のネットワークを介して、画像形成装置等の外部装置との通信を行う。
なお、本実施例に係る情報処理装置で生成された電子文書データは、立体視画像の表示が可能な外部モニタ或いは3Dプロジェクタに出力される。
(電子文書データの生成処理)
図2は、本実施例に係る情報処理装置において、立体視画像の表示を可能にする電子文書データを生成する処理の流れを示すフローチャートである。なお、この一連の処理は、以下に示す手順を記述したコンピュータ実行可能なプログラムをROMからRAM上に読み込んだ後、CPU102によって該プログラムを実行することによって実施される。
ステップ201において、CPU102は、プレゼンテーション用アプリケーション(以下、単に「アプリ」と呼ぶ。)上で作成された電子文書の処理対象ページ(スライド)内に、立体視画像として表示する旨が指定されたオブジェクトがあるかどうかを判定する。図3は、アプリ中でユーザが、オブジェクトに対して立体視画像として表示する旨の指定を行うためのUI画面の一例を示している。図3の(a)は、図形描画ツールバーの中の“図形の効果”のプルダウン表示によって表示されるメニューリスト内で指定する場合のUI画面である。メニューリストの中から“3D表示”を選択することで3Dオブジェクトの指定がなされる。図3の(b)は、図形描画ツールバーの中の“配置”の中の“オブジェクトの選択と表示”のサブウィンドウ内で指定する場合のUI画面である。3Dオブジェクトに指定されたオブジェクトの横には“3D”と書かれたアイコンが付加されているのが分かる。このようなUI画面を介して、オブジェクト単位で「3D表示」の指定がなされると、当該オブジェクトについては立体視表示を可能にする、互いに視差のある左眼用画像と右眼用画像とからなる画像データ(以下、「3D画像データ」と呼ぶ。)が生成される。なお、上記UI画面を介してユーザがオブジェクト単位で指定した内容は、メモリ103内のRAMに保存される。処理対象ページ内のオブジェクトに対し、「3D表示」の指定がなされていると判定された場合、ステップ202に進む。一方、「3D表示」が指定されたオブジェクトがないと判定された場合はステップ205に進む。
ステップ202において、CPU102は、3Dスライドショーの設定を取得する。本実施例における3Dスライドショー設定では、変換効果の設定がなされる。図4は、アプリ中で、ユーザが3Dスライドショー設定を行うためのUI画面の一例を示している。設定ツールバーの中の“3Dスライドショーの設定”を選択すると、変換効果を設定するためのサブウィンドウが表示される。なお、この3Dスライドショー設定は、オブジェクト単位やページ単位ではなく、文書単位でなされるものである。
ここで、変換効果設定について説明する。変換効果設定は、指定された変換効果の内容(ここでは、「大きい」、「普通」、「小さい」のうちのいずれか)に応じて、3Dオブジェクトの透過率を段階的に変化させるための設定である。図5は、変換効果と透過率の関係を示す図である。視聴者からの距離を5段階(ここでは、遠い、やや遠い、普通、やや近い、近い)に分け、それぞれの距離における透過率を、変換効果の大小(ここでは、「大きい」、「普通」、「小さい」の3段階)に応じて変化させている。図5の例では、変換効果が「大きい」に設定された場合、視聴者からの距離が近い3Dオブジェクトから順に0%、20%、40%、60%、80%のように透過率が変化する。同様に、変換効果が「普通」に設定された場合、視聴者からの距離が近い3Dオブジェクトから順に0%、10%、20%、30%、40%のように透過率が変化する。同じく、変換効果が「小さい」に設定された場合、視聴者からの距離が近いオブジェクトから順に0%、5%、10%、15%、20%のように透過率が変化する。このように、いずれの場合も視聴者からの距離が遠くなるにつれて透過率は段階的に高くなる。透過率が高い程に3Dオブジェクトの色は薄れて視聴者は遠くにあると感じることから、設定された変換効果が大きい場合には最大透過率が大きくなるように、設定された変換効果が小さい場合には最大透過率が小さくなるように各値が定められている。図5に示した変換効果の大小や透過率の値は一例であり、例えば、設定可能な変換効果を5段階にしたり、透過率を10段階に細分化してもよい。なお、本実施例ではユーザが変換効果を特に指定しない場合は、デフォルト設定の内容(例えば「普通」)が適用されるものとする。
図2のフローチャートの説明に戻る。
ステップ203において、CPU102は、「3D表示」が指定された3Dオブジェクトについての飛び出し効果についての設定内容を、オブジェクト毎に取得する。この飛び出し効果の設定は、3Dで表示させたいオブジェクト毎に、表示画面からどの程度飛び出して見えるようにするのかを指定するものである。図6は、ユーザが飛び出し効果の設定を行うためのUI画面の一例を示している。図6で示すUI画面は、図3の(b)で示したUI画面を前提としている。図3の(b)のUI画面において、“3D”のアイコンが押下された場合に表示されるサブウィンドウにおいて飛び出し効果の設定を行う。図6の例では、1〜3の3段階で設定可能となっており(0は、3Dオブジェクトではなくなってしまうため設定不可)、値が大きいほど表示画面から飛び出て見える度合いが大きくなる。本実施例の場合、設定された値が3の場合は両眼視差が両眼間隔と同じになるように、設定された値が2の場合は両眼視差が両眼間隔の2/3となるように、設定された値が1の場合は両眼視差が両眼間隔の1/3となるように3D画像データが生成される。
図7は、3Dオブジェクトの表示画面からの飛び出し位置と、3Dオブジェクトの表示画面上のずらし量(両眼視差)との関係を示す図である。ここで、表示画面の位置からユーザの視聴位置までの距離をL、3Dオブジェクトの表示画面上のずらし量(両眼視差)をp、ユーザの両眼間隔をe、表示画面の位置から飛び出し位置までの距離(飛び出し量)をdとする。この場合において、表示画面の位置、視聴位置、及び飛び出し位置の相互間には以下の式(1)の関係が成立する。
d:p=(L−d):e ・・・式(1)
そして上記式(1)から、飛び出し量dを表す式(2)が導かれる。
d=pL/(p+e) ・・・式(2)
例えば、視聴距離L=5000mm、両眼間隔e=65mm(成人の場合)、飛び出し効果が3(即ち、p=65mm)と仮定すると、飛び出し量dは、上記式(2)から2500mmとなる。即ち、この場合の3Dオブジェクトは、画面とユーザの視聴位置の真ん中まで飛び出してくることになる。
同様に、視聴距離L=5000mm、両眼間隔e=65mm、飛び出し効果が2(p=43mm)と仮定すると、飛び出し量dは1991mmとなる。
また、視聴距離L=5000mm、両眼間隔e=65mm、飛び出し効果が1(p=21mm)と仮定すると、飛び出し量dは1221mmとなる。
なお、視聴距離Lは、予め任意の値が設定されるものとする。
図2のフローチャートの説明に戻る。
ステップ204において、CPU102は、「3D表示」が指定された3Dオブジェクトについて3D画像データを生成する。ここで、3Dオブジェクトの生成処理について、別フローチャートを用いて説明する。図8は、3D画像データ生成処理の流れを示すフローチャートである。
ステップ801において、CPU102は、ステップ203で取得した3Dオブジェクトの飛び出し効果設定の設定内容に基づいて、3Dオブジェクトの両眼視差pを決定する。両眼視差pは、以下の式(3)によって求めることができる。
p=両眼間隔e×飛出効果の設定値/3 ・・・式(3)
例えば、ユーザの両眼間隔eを65mmとすると、上述のとおり、飛び出し効果設定が3であれば両眼視差pは65mm、飛び出し効果設定が2であれば両眼視差pは43mm、飛び出し効果設定が1であれば両眼視差pは21mmとなる。
ステップ802において、CPU102は、ステップ801で決定された両眼視差pに基づいて、互いに視差のある左眼用画像と右眼用画像とからなる3D画像データを生成する。図9は、グラフオブジェクト901と文字オブジェクト902とで構成されるスライド900において、グラフオブジェクト901に対し3Dオブジェクトの指定がなされた場合の3D画像データ化の様子を示している。この場合、3Dオブジェクトに指定されたグラフオブジェクト901の部分を所定の方向に一定量(単位:画素)だけシフトさせた左眼用画像903と右眼用画像904とが生成されることになる。まず、スライド内の3Dオブジェクト(ここでは、グラフオブジェクト901)について、ビットマップ化がなされる。そして、得られたビットマップ画像における3Dオブジェクトに対して、所定の画素数分だけ位置をずらす処理がなされる。ここで、ずらし量(画素数)は、表示画面の横方向の解像度Ydpi(25.4mmあたりY個の画素が存在)と両眼視差pとから、以下の式(4)で求められる。
ずらし量=両眼視差p×Y/25.4 ・・・式(4)
例えば、両眼視差pが65mm(飛び出し効果設定が3)で、表示画面の解像度が100dpiであったと仮定すると、ずらし量は、255.9(画素)となる。なお、得られたずらし量が整数でない場合は四捨五入し、整数画素数分だけずらせばよい。(上記の場合、ずらし量は256(画素)となる。)ここで、上記式(4)によって得られるずらし量は、左眼用画像と右眼用画像との間でどれだけずらすかを表すものである、よって、得られたずらし量の半分の量(ここでは128(画素))ずつ、左眼用画像では右方向に、右眼用画像では左方向にそれぞれシフトさせることになる。こうして、3Dオブジェクトを所定の方向に一定量だけずらしたビットマップ画像である左眼用画像903及び右眼用画像904が生成される。このようにして生成された3D画像データを構成する左眼用画像と右眼用画像のビットマップ画像のデータは、ページ番号に対応付けられて、左眼用画像メモリと右眼用画像メモリに保存される。
ステップ803において、CPU102は、すべての3Dオブジェクトについて3D画像データが生成されたかどうかを判定する。未処理の3Dオブジェクトがあればステップ801に戻り、ステップ801及びステップ802の処理を行う。一方、未処理の3Dオブジェクトがなければ本処理を終える。
図2のフローチャートの説明に戻る。
ステップ205において、CPU102は、ページ内のオブジェクトのうち、「3D表示」の指定がなされていないオブジェクトについて、2D画像データ(左眼用画像と右眼用画像との間に視差のない画像データ)を生成する。具体的には、3Dの指定がないオブジェクトをビットマップ化してビットマップ画像を生成する。上述した図9の例では、文字オブジェクト902が3Dオブジェクトには指定されていないオブジェクトなので、この文字オブジェクト902がビットマップ化される。得られたビットマップ画像のデータは、上述のようなオブジェクト位置をずらす処理がなされることなくページ番号に対応付けられて、左目用画像メモリと右目用画像メモリに保存される。
ステップ206において、CPU102は、ステップ204で生成された3D画像データとステップ205で生成された2D画像データとを合成して、処理対象ページの画像データを生成する。
ステップ207において、CPU102は、ステップ205と同様、処理対象ページ内の3D表示が指定されなかったオブジェクトについて、2D画像データを生成する。具体的には、ページ内のすべてのオブジェクトをビットマップ化してビットマップ画像を生成する。得られたビットマップ画像のデータは、ページ番号に対応付けられて、左目用画像メモリと右目用画像メモリに保存される。
ステップ208において、CPU102は、アプリ上で作成された電子文書内に未処理のページがあるかどうかを判定する。未処理のページがあればステップ201に戻り、ステップ201〜ステップ206を繰り返す。一方、全てのページの処理が完了していれば、本処理を終える。
このようにして、特定のオブジェクト毎に立体視画像で表示可能なプレゼンテーション用電子文書データが得られる。
(電子文書データの表示処理)
次に、3D画像データを含む電子文書データの表示処理について説明する。
図10は、情報処理装置において3D画像データを含む電子文書データを表示(スライドショー)する処理の流れを示すフローチャートである。なお、この一連の処理は、以下に示す手順を記述したコンピュータ実行可能なプログラムをROMからRAM上に読み込んだ後、CPU102によって該プログラムを実行することによって実施される。
ステップ1001において、CPU102は、特定の電子文書データについて3Dスライドショーを実行する旨の指示がユーザからなされたかどうかを判定する。図11は、アプリ中で、ユーザが3Dスライドショーの実行を指示するためのUI画面の一例であり、“プレゼンテーションの表示”のツールバーの中にある「3Dスライドショー」を選択すると、3Dスライドショーの実行が指示される。このようなUI画面を介して3Dスライドショーの実行が指示されている場合、ステップ1302に進む。一方、3Dスライドショーの実行が指示されていなければ、本処理を抜ける。
ステップ1002において、CPU102は、3Dスライドショーの対象となる電子文書データにおける表示対象のページ内に3Dオブジェクトがあるかどうかを判定する。ページ内に3Dオブジェクトがあれば、ステップ1003に進む。一方、ページ内に3Dオブジェクトがなければ、ステップ1004に進む。
ステップ1003において、CPU102は、3Dオブジェクトがあるページの3D画像データをメモリから読み出し、3Dスライドショーで表示する。
ステップ1004において、CPU102は、3Dオブジェクトのないページの2D画像データをメモリから読み出し、通常のスライドショー(2Dスライドショー)で表示する。
ステップ1005において、CPU102は、3Dスライドショーの実行が指示された電子文書データ内に未表示のページがあるかどうかを判定する。未表示のページがあれば、ステップ1002に戻り、ステップ1002〜ステップ1004の処理を繰り返す。一方、全てのページの表示が完了していれば、本処理を終える。
本実施例では、情報処理装置内のメモリ103に格納されたプログラムに基づいて一連の処理を行う態様について説明したが、プログラムは情報処理装置の外部から提供してもよい。。その場合、LAN等のネットワークを介してプログラムが提供されると共に、一連の処理に必要なデータやパラメータも提供される。
以上のとおり本実施例に係る発明によれば、プレゼンテーション用電子文書データ内の所望のオブジェクト毎に3D画像データ化し、所望のオブジェクトだけを3D表示することができる。これにより、視聴者にとって満足度、理解度が大きいプレゼンテーションを簡易に行うことが可能となる。
(その他の実施形態)
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。

Claims (6)

  1. 電子文書データ内のオブジェクトを立体視画像として表示するかどうか設定する設定手段と、
    前記設定手段で立体視画像として表示すると設定されたオブジェクトについて、互いに視差のある左眼用画像と右眼用画像とからなる3D画像データを生成する3D画像データ生成手段と、
    備えることを特徴とする装置。
  2. 前記立体視画像として表示するオブジェクトについて、表示画面からの飛び出し位置を設定する手段をさらに備え、
    前記3D画像データ生成手段は、設定された飛び出し位置に応じた前記3D画像データを生成することを特徴とする請求項1に記載の装置。
  3. 前記3D画像データ生成手段は、前記立体視画像として表示するオブジェクトの透過率を視聴者からの距離に応じて段階的に変化させた前記3D画像データを生成することを特徴とする請求項1又は2に記載の装置。
  4. 前記3D画像データを用いて、前記設定手段で前記立体視画像として表示すると設定されたオブジェクトのみを立体視画像として表示する、前記電子文書データのスライドショーを行なう表示手段をさらに備えたことを特徴とする請求項1〜3のいずれか1項に記載の装置。
  5. 電子文書データ内のオブジェクトを立体視画像として表示するかどうか設定する設定ステップと、
    前記設定ステップで立体視画像として表示すると設定されたオブジェクトについて、互いに視差のある左眼用画像と右眼用画像とからなる3D画像データを生成する3D画像データ生成ステップと、
    含むことを特徴とする、電子文書データを生成する方法。
  6. コンピュータを、請求項1〜4のいずれか1項に記載の装置として機能させるためのプログラム。
JP2012237924A 2012-10-29 2012-10-29 電子文書データを生成する装置、方法およびプログラム Pending JP2014089514A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012237924A JP2014089514A (ja) 2012-10-29 2012-10-29 電子文書データを生成する装置、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012237924A JP2014089514A (ja) 2012-10-29 2012-10-29 電子文書データを生成する装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2014089514A true JP2014089514A (ja) 2014-05-15

Family

ID=50791388

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012237924A Pending JP2014089514A (ja) 2012-10-29 2012-10-29 電子文書データを生成する装置、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2014089514A (ja)

Similar Documents

Publication Publication Date Title
US9766793B2 (en) Information processing device, information processing method and program
US9760976B2 (en) Image processing apparatus and image processing method
WO2018188499A1 (zh) 图像、视频处理方法和装置、虚拟现实装置和存储介质
CN110770785B (zh) 用于在vr中显示的屏幕共享
US20210256941A1 (en) Image processing apparatus, image processing method, and storage medium
WO2017012360A1 (zh) 一种虚拟现实显示设备响应外设设备操作的方法
US20120050269A1 (en) Information display device
KR102257132B1 (ko) 몰입형 비디오 컨텐츠를 생성 및 렌더링하기 위한 방법들, 시스템들 및 매체들
US11068147B2 (en) Techniques for displaying shared digital assets consistently across different displays
JP2016038728A (ja) 画像表示装置、画像表示装置の制御方法、及びプログラム
KR101781869B1 (ko) 영상변환장치
JP2019146155A (ja) 画像処理装置、画像処理方法およびプログラム
JP5830055B2 (ja) 画像処理装置および画像処理システム
JP5701687B2 (ja) 画像処理装置、画像処理方法
KR101632514B1 (ko) 깊이 영상 업샘플링 방법 및 장치
KR102132406B1 (ko) 디스플레이 장치 및 그의 제어 방법
JP2014089514A (ja) 電子文書データを生成する装置、方法およびプログラム
JP2013168781A (ja) 表示装置
JP2002091643A (ja) 映像表示装置、映像表示方法及び記憶媒体
US11962743B2 (en) 3D display system and 3D display method
JP2014095995A (ja) 視差を付加する装置、方法およびプログラム
EP3073482A1 (en) Display apparatus and display method thereof
EP4290348A1 (en) Image processing apparatus, image processing method, program, and image display system
US20240069712A1 (en) Techniques for Displaying Shared Digital Assets Consistently across Different Displays
TWM628625U (zh) 3d顯示系統