IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社 インターコムの特許一覧

特許7403115映像送信装置、アプリケーションプログラム及び映像送信方法
<>
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図1
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図2
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図3
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図4
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図5
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図6
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図7
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図8
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図9
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図10
  • 特許-映像送信装置、アプリケーションプログラム及び映像送信方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-14
(45)【発行日】2023-12-22
(54)【発明の名称】映像送信装置、アプリケーションプログラム及び映像送信方法
(51)【国際特許分類】
   H04N 21/4402 20110101AFI20231215BHJP
   H04N 21/436 20110101ALI20231215BHJP
   H04N 7/18 20060101ALI20231215BHJP
【FI】
H04N21/4402
H04N21/436
H04N7/18 K
【請求項の数】 6
(21)【出願番号】P 2019128627
(22)【出願日】2019-07-10
(65)【公開番号】P2021016032
(43)【公開日】2021-02-12
【審査請求日】2022-03-30
(73)【特許権者】
【識別番号】597085992
【氏名又は名称】株式会社 インターコム
(74)【代理人】
【識別番号】110000752
【氏名又は名称】弁理士法人朝日特許事務所
(72)【発明者】
【氏名】浅井 景粋
【審査官】大西 宏
(56)【参考文献】
【文献】特開2008-046567(JP,A)
【文献】特開2012-079170(JP,A)
【文献】特開2013-172301(JP,A)
【文献】特開2014-212473(JP,A)
【文献】特開2015-029297(JP,A)
【文献】特開2017-199314(JP,A)
【文献】特開2017-212744(JP,A)
【文献】特開2018-061214(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 -21/858
H04N 7/18
(57)【特許請求の範囲】
【請求項1】
オペレーティングシステム及びアプリケーションプログラムに従って画面を表示し、ユーザの操作を受け付けるUI手段と、
圧縮された映像データであって前記UI手段に表示されている画面を示す映像データの入力を受け付ける受け付け手段と、
前記映像データをデコードしてフレーム画像を取得する取得手段と、
前記フレーム画像を解析し、秘匿すべき部分を自動的に特定する特定手段と、
前記フレーム画像のうち前記特定された部分にマスク処理を施す処理手段と、
前記マスク処理後の1以上のフレーム画像を記憶する記憶手段と、
前記マスク処理されたフレーム画像をエンコードし、映像データを生成する生成手段と、
前記生成された映像データを、前記ユーザとは別のユーザが操作する映像受信装置に送信する送信手段と
を有し、
一のフレーム画像において特定のパターンが検知された場合、前記送信手段は、当該特定のパターンが検知された時点で前記記憶手段に記憶されているフレーム画像をエンコードした映像データを出力することなしに、映像データの出力を停止し、
前記特定のパターンが、
異なる複数のアプリケーションプログラムのウインドウが一画面に含まれるパターン、又は
パスコードの入力画面のパターン
である
映像送信装置。
【請求項2】
前記映像データは、前記映像送信装置において表示される画面の時間変化を示す
請求項に記載の映像送信装置。
【請求項3】
前記映像データは、第1ソフトウェアから出力され、
前記受け付け手段、前記取得手段、前記特定手段、前記処理手段、前記生成手段、及び前記送信手段は、前記第1ソフトウェアと異なる第2ソフトウェアにより実装される
請求項1又は2に記載の映像送信装置。
【請求項4】
前記第1ソフトウェアは、前記オペレーティングシステムである
請求項に記載の映像送信装置。
【請求項5】
オペレーティングシステムがインストールされ、当該オペレーティングシステム及びアプリケーションプログラムに従って画面を表示し、ユーザの操作を受け付けるUI手段を有するコンピュータに処理を実行させる当該アプリケーションプログラムであって、当該処理が、
圧縮された映像データであって前記UI手段に表示されている画面を示す映像データの入力を受け付けるステップと、
前記映像データをデコードしてフレーム画像を取得するステップと、
前記フレーム画像を解析し、秘匿すべき部分を自動的に特定するステップと、
前記フレーム画像のうち前記特定された部分にマスク処理を施すステップと、
前記マスク処理後の1以上のフレーム画像を記憶手段に記憶するステップと、
前記マスク処理されたフレーム画像をエンコードし、映像データを生成するステップと、
前記生成された映像データを、前記ユーザとは別のユーザが操作する映像受信装置に送信するステップと
を含み、
一のフレーム画像において特定のパターンが検知された場合、当該特定のパターンが検知された時点で前記記憶手段に記憶されているフレーム画像をエンコードした映像データを出力することなしに、映像データの出力を停止し、
前記特定のパターンが、
異なる複数のアプリケーションプログラムのウインドウが一画面に含まれるパターン、又は
パスコードの入力画面のパターン
である
アプリケーションプログラム。
【請求項6】
オペレーティングシステム及びアプリケーションプログラムに従って画面を表示し、ユーザの操作を受け付けるUI手段を有するコンピュータに実装される映像送信方法であって、
前記コンピュータが、圧縮された映像データであって前記UI手段に表示されている画面を示す映像データの入力を受け付けるステップと、
前記コンピュータが、前記映像データをデコードしてフレーム画像を取得するステップと、
前記コンピュータが、前記フレーム画像を解析し、秘匿すべき部分を自動的に特定するステップと、
前記コンピュータが、前記フレーム画像のうち前記特定された部分にマスク処理を施すステップと、
前記コンピュータが、前記マスク処理後の1以上のフレーム画像を記憶手段に記憶するステップと、
前記コンピュータが、前記マスク処理されたフレーム画像をエンコードし、映像データを生成するステップと、
前記コンピュータが、前記生成された映像データを、前記ユーザとは別のユーザが操作する映像受信装置に送信するステップと
を有し、
一のフレーム画像において特定のパターンが検知された場合、当該特定のパターンが検知された時点で前記記憶手段に記憶されているフレーム画像をエンコードした映像データを出力することなしに、映像データの出力を停止し、
前記特定のパターンが、
異なる複数のアプリケーションプログラムのウインドウが一画面に含まれるパターン、又は
パスコードの入力画面のパターン
である
映像送信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像を送信する技術に関する。
【背景技術】
【0002】
複数のコンピュータ装置で画面を共有するシステムにおいて、画面上において情報を秘匿するための技術が提案されている。例えば特許文献1には、画面共有するコンピュータシステムにおいて、プライバシーを保護するため、画面上の領域の指定を受け付け、指定された領域(又は指定された領域の外)をモザイク処理する技術が開示されている。また、特許文献2には、リアルタイムで画面共有するシステムにおいて、隠蔽すべき文字列が表示されるまでの過程において文字の隠蔽が難しいという課題を解決するため、隠蔽すべき文字が表れる可能性が高い単語又は文字列を検出し、これらが検出された場合には入力フォームを隠蔽する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第6375070号
【文献】特許第6369034号
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の技術においてはモザイク処理する領域をユーザが手動で指定する必要があり、煩雑であった。特許文献2に記載の技術においては画面の静止画の画像データを別途取得する必要があり、煩雑であった。
【0005】
これに対し本発明は、画面を他の装置と共有するシステムにおいて、情報をより簡単に秘匿する技術を提供する。
【課題を解決するための手段】
【0006】
本発明は、圧縮された映像データの入力を受け付ける受け付け手段と、前記映像データをデコードしてフレーム画像を取得する取得手段と、前記フレーム画像を解析し、秘匿すべき部分を特定する特定手段と、前記フレーム画像のうち前記特定された部分にマスク処理を施す処理手段と、前記マスク処理されたフレーム画像をエンコードし、映像データを生成する生成手段と、前記生成された映像データを送信する送信手段とを有する映像送信装置を提供する。
【0007】
前記映像送信装置は、前記マスク処理後の1以上のフレーム画像を記憶する記憶手段を有し、一のフレーム画像において特定のパターンが検知された場合、前記送信手段は、その時点で前記記憶手段に記憶されているフレーム画像をエンコードした映像データを出力することなしに、映像データの出力を停止してもよい。
【0008】
前記映像データは、前記映像送信装置において表示される画面の時間変化を示してもよい。
【0009】
前記映像データは、第1ソフトウェアから出力され、前記受け付け手段、前記取得手段、前記特定手段、前記処理手段、前記生成手段、及び前記送信手段は、前記第1ソフトウェアと異なる第2ソフトウェアにより実装されてもよい。
【0010】
前記第1ソフトウェアは、前記映像送信装置のオペレーティングシステムであってもよい。
【0011】
本発明は、コンピュータに、圧縮された映像データの入力を受け付けるステップと、前記映像データをデコードしてフレーム画像を取得するステップと、前記フレーム画像を解析し、秘匿すべき部分を特定するステップと、前記フレーム画像のうち前記特定された部分にマスク処理を施すステップと、前記マスク処理されたフレーム画像をエンコードし、映像データを生成するステップと、前記生成された映像データを出力するステップとを実行させるためのプログラムを提供する。
【0012】
本発明は、圧縮された映像データの入力を受け付けるステップと、前記映像データをデコードしてフレーム画像を取得するステップと、前記フレーム画像を解析し、秘匿すべき部分を特定するステップと、前記フレーム画像のうち前記特定された部分にマスク処理を施すステップと、前記マスク処理されたフレーム画像をエンコードし、映像データを生成するステップと、前記生成された映像データを出力するステップとを有する映像送信方法を提供する。
【発明の効果】
【0013】
本発明によれば、画面を他の装置と共有するシステムにおいて、情報をより簡単に秘匿することができる。
【図面の簡単な説明】
【0014】
図1】一実施形態に係る画面共有システム1の構成を例示する図。
図2】映像送信装置10の機能構成を例示する図。
図3】映像送信装置10のハードウェア構成を例示する図。
図4】映像送信装置10のソフトウェア構成を例示する図。
図5】UI部105に表示される画面を例示する図。
図6】映像送信装置10が行う処理の流れを例示するシーケンスチャート。
図7】特定のパターンを例示する図。
図8】マスク処理が施されたフレーム画像を例示する図。
図9】映像送信装置10が行う処理の流れを例示するシーケンスチャート。
図10】映像データの送信タイミングを例示するタイムチャート。
図11】特定のパターンを例示する図。
【発明を実施するための形態】
【0015】
1.構成
図1は、一実施形態に係る画面共有システム1の構成を例示する図である。画面共有システム1は、映像送信装置10の画面を共有するサービスを提供するシステムである。画面共有システム1は、映像送信装置10及び映像受信装置20を有する。一例において、画面共有システム1は、ソフトウェアのサポートサービスに用いられる。映像送信装置10は、画面共有サービスを受ける顧客により使用される端末である。映像受信装置20は、画面共有サービスを提供するサポート事業者により使用される端末である。サポート事業者は、画面を共有するためのアプリケーション(以下「画面共有アプリ」という)で顧客の端末(映像送信装置10)の画面を共有しながら、顧客による映像送信装置10の操作等のサポートを行う。映像送信装置10及び映像受信装置20は、例えばスマートフォン、タブレット端末、又はラップトップ型コンピュータ等の汎用コンピュータである。映像送信装置10は通信回線2により映像受信装置20に接続されている。通信回線2は、例えば、インターネット、移動体通信網、電話回線、又はLAN(Local Area Network)を含む。
【0016】
映像送信装置10及び映像受信装置20には、オペレーティングシステム(以下「OS」という)及びアプリケーションプログラム等のソフトウェアがインストールされており、インストールされたアプリケーションはユーザにより使用される。特に、映像送信装置10及び映像受信装置20には、画面を共有するための画面共有アプリが予めインストールされている。画面共有アプリにより映像送信装置10に表示される画面が映像受信装置20と共有される。
【0017】
図1では図面を簡単にするために単一の映像送信装置10及び単一の映像受信装置20を図示しているが、複数の映像送信装置10及び複数の映像受信装置20が画面共有システム1に含まれてもよい。
【0018】
図2は、映像送信装置10にインストールされた画面共有アプリに係る機能構成を例示する図である。図において、映像送信装置10は、受け付け手段11、取得手段12、特定手段13、処理手段14、生成手段15、送信手段16、及び記憶手段17を有する。受け付け手段11は、圧縮された映像データの入力を受け付ける。取得手段12は、映像データをデコードしてフレーム画像を取得する。特定手段13は、フレーム画像を解析し、秘匿すべき部分を特定する。処理手段14は、フレーム画像のうち特定された部分にマスク処理を施す。この実施形態においてマスク処理とは、特定の部分の画像が持つ情報を秘匿する処理、例えば、元の画像を別の画像に差し替えたり、元の画像を判別できない態様に加工したりする画像処理をいう。マスク処理は例えば、特定の部分の画像を黒色単色の画像若しくは白色単色の画像に差し替える処理、モザイク処理、又はぼかし処理である。生成手段15は、マスク処理されたフレーム画像をエンコードし、映像データを生成する。送信手段16は、生成された映像データを送信する。記憶手段17は、マスク処理後の1以上のフレーム画像を記憶する。
【0019】
図3は、映像送信装置10のハードウェア構成を例示する図である。プロセッサ101は、映像送信装置10の他の要素を制御するプロセッサである。メモリ102は、プロセッサ101がプログラムを実行するためのワークエリアとして機能する記憶装置であり、例えばRAM(Random Access Memory)を含む。記憶装置103は各種のプログラム及びデータを記憶する記憶装置であり、例えば、SSD(Solid State Drive)又はHDD(Hard Disk Drive)を含む。
【0020】
通信IF104は、予め定められた無線又は有線の通信規格(例えば、Wi-Fi(登録商標)、Bluetooth(登録商標)、又はイーサネット(登録商標))に従って他の装置と通信を行う。UI部105は例えばタッチスクリーンとキーとを備える。UI部105は映像送信装置10に内蔵されていてもよく、また、外付けされて外部接続されるものであってもよい。
【0021】
この例で、記憶装置103は、OSのプログラム、画面共有アプリのプログラム、及びその他のアプリケーションプログラムを記憶する。プロセッサ101が画面共有アプリのプログラムを実行することにより、図2に示される機能が実装される。このプログラムを実行しているプロセッサ101は、受け付け手段11、取得手段12、特定手段13、処理手段14、及び生成手段15の一例である。このプログラムを実行しているプロセッサ101及び/又は通信IF104は送信手段16の一例である。メモリ102又は記憶装置103は記憶手段17の一例である。
【0022】
図4は映像送信装置10のソフトウェア構成を例示する図である。プロセッサ101が記憶装置103に記憶されたコンピュータプログラムを実行することにより、図4に示されるオペレーティングシステム151、アプリ152、及び画面共有アプリ153等のソフトウェアが映像送信装置10に実装される。OS151(第1ソフトウェアの一例)は映像送信装置10のオペレーションを司るソフトウェアである。
【0023】
アプリ152は、OS151上においてフォアグラウンドで動作するアプリケーションソフトウェアである。アプリ152はユーザの操作に応じた画面をUI部105に表示する機能を備える。アプリ152は例えば、非公開データを取り扱う企業においてその非公開データを解析するアプリケーションである。
【0024】
図5は、アプリ152により表示される画面を例示した図である。図5の例では、非公開データを取り扱う企業においてその非公開を解析するアプリケーションにより表示される画面SC1が例示されている。画面SC1には、複数の顧客の「顧客ID」、「顧客名」、「売上高」、及び「営業利益」等が表示される。映像送信装置10のユーザは、UI部105を用いてボタンB1又はB2を選択する等、顧客データを解析するための操作を行う。
【0025】
図4の説明に戻る。画面共有アプリ153(第2ソフトウェアの一例)は、映像送信装置10のUI部105に表示されている画像を他の装置(映像受信装置20等)と共有するためのソフトウェアである。画面共有アプリ153はバックグラウンドで動作し、システムに常駐する。
【0026】
OS151は、UI部105に表示される画面の変化を映像データ(例えば、H.264規格の動画データ)で出力する機能を備える。画面共有アプリ153は、この機能により出力される映像データを用いて画面共有を行う。画面共有アプリ153は、取得部31、デコーダー32、フレームメモリ37、解析部33、マスク処理部34、エンコーダー35、送信部36を備える。取得部31(受け付け手段11の一例)は、OSから映像データを取得する。デコーダー32(取得手段12の一例)は、映像データをデコードしてフレーム画像を取得する。取得されたフレーム画像はフレームメモリ37(記憶手段の一例)に記憶される。解析部33(特定手段13の一例)は、フレームメモリ37に記憶されているフレーム画像を解析し、秘匿すべき部分を特定する。マスク処理部34(処理手段14の一例)は、フレーム画像のうち特定された部分にマスク処理を施す。エンコーダー35(生成手段15の一例)は、マスク処理されたフレーム画像をエンコードし、映像データを生成する。送信部36(送信手段16の一例)は、生成された映像データを送信する。送信部36はバッファを備え、エンコーダー35によりエンコードされた映像データはこのバッファに格納される。
【0027】
2.動作
映像送信装置10のユーザは、UI部105を用いてアプリ152を起動する。映像送信装置10はユーザの操作に応じた画面(例えば、図5に例示した画面)をUI部105に表示する。アプリ152がフォアグラウンドで動作している状態において、画面共有アプリ153はバックグラウンドで動作し、UI部105に表示される画像を他の端末と共有するための処理を実行する。
【0028】
図6は、画面共有アプリ153が行う映像送信処理の流れを例示するシーケンスチャートである。ステップS101において、取得部31は、圧縮された映像データの入力を受け付ける。この映像データは、映像送信装置10において表示される画面の時間変化を示すデータである。この実施形態では、取得部31は、OS151から出力される、画面の変化を表す映像データ(H.264規格の映像データ)を取得する。取得された映像データはデコーダー32に供給される。
【0029】
ステップS102において、デコーダー32は、OS151から取得された映像データをデコードし、ビットマップ形式のフレーム画像を取得する。デコードされて生成されたビットマップ形式のフレーム画像は、ステップS103においてフレームメモリ37に時系列に格納される。
【0030】
ステップS104において、解析部33は、フレームメモリ37からフレーム画像を読み出す。ステップS105において、解析部33は、読み出したフレーム画像を解析する。解析部33は、フレームメモリ37に格納された一のフレーム画像において特定のパターンが検知されたかを判定する。この判定は、例えば、解析部33がフレーム画像に対しエッジ検出処理等の特徴検出処理を行い、フレーム画像から特定のパターンが検出されるかによって判定される。特定のパターンとは、例えば、複数の同形状の図形(矩形図形、等)がマトリクス状に並べて配置された画面から検知されるパターンである。マトリクス状に配置された図形は例えば、ウィンドウ、又はアイコンである。
【0031】
図7は、特定のパターンの画面SC2を例示した図である。図7の例では、ウィンドウw21、w22、w23、w24の4つのウィンドウが、UI部105に表示されている。これらのウィンドウのうち、ウィンドウw22は、映像送信装置10のユーザがサポートを受けたいアプリ152により表示されるウィンドウである。一方、ウィンドウw21、w23及びw24は、ユーザがサポートの対象としないアプリケーションにより表示されるウィンドウである。すなわち、映像送信装置10のユーザは、ウィンドウw22の映像をサポート事業者と共有することを求める一方、ウィンドウw21、w23、及びw24が共有されることを望まない。そのため、この実施形態では、UI部105に複数のウィンドウが表示されている場合(すなわちフレーム画像から特定のパターンが検出された場合)、映像送信装置10は映像データの送信を停止する制御を行う。
【0032】
図6の説明に戻る。図6には、ステップS105の解析処理においてフレーム画像から特定のパターンが検出されなかった場合の動作が示されている。ステップS106において、解析部33は、ビットマップ形式のフレーム画像を解析し、秘匿すべき部分を特定する。秘匿すべき部分とは、例えば、非公開データを取り扱う企業におけるその非公開データを示す文字列(顧客の名称、売上金額、等)が記されている領域である。これら特定の文字列は、画面共有アプリ153が有する(又はアクセス可能な)データベース(図示略)において定義される。この実施形態では、解析部33は、フレーム画像に対し文字認識処理を行ってフレーム画像から文字列を抽出し、抽出された文字列から特定の文字又は文字列(以下、単に「特定文字列」という)が記されている領域(以下「特定領域」という)を特定する。抽出される特定文字列は、例えば、「円」、「¥」、「氏名」、又は「顧客名」である。解析部33は、特定領域との位置関係が予め定められた条件を満たす領域を秘匿すべき部分として特定する。
【0033】
例えば、特定された特定文字列が「円」である場合、特定された特定文字列の左側に隣接して描画された文字列の領域が、秘匿すべき部分として特定される。また、例えば、特定文字列が「¥」である場合、特定文字列の右側に隣接して描画された文字列の領域が、秘匿すべき部分として特定される。また、例えば、特定文字列が「氏名」又は「顧客名」である場合であって、その特定文字列が複数の行と複数の列を有するテーブルに含まれている場合、その特定文字列に対応するフィールドの領域が、秘匿すべき部分として特定される。解析部33による特定結果はステップS107においてマスク処理部34に供給される。
【0034】
ステップS108において、マスク処理部34は、フレーム画像のうち解析部33により特定された部分にマスク処理を施す。マスク処理が施されたフレーム画像はステップS109においてフレームメモリ37に記憶される。なお、ステップS106において秘匿すべき部分が特定されなかった場合には、ステップS108のマスク処理は行われない。
【0035】
図8は、マスク処理が施されたフレーム画像を例示する図である。図8の例では、「円」、及び「顧客名」が特定文字列として特定され、「円」の左側の文字列の領域がマスク処理されるとともに、「顧客名」に対応するフィールドがマスク処理されている。
【0036】
図6の説明に戻る。ステップS110において、エンコーダー35は、マスク処理されたフレーム画像をフレームメモリ37から読み出し、ステップS111において、入力された映像データと同じ規格(例えば、H.264)でフレーム画像をエンコードし、映像データを生成する。生成された映像データはステップS112において送信部36のバッファに格納される。
【0037】
ステップS113において、送信部36は、エンコーダー35により生成された映像データを映像受信装置20に送信する。OS151から映像データが取得される毎に、図6のステップS102乃至S113の処理が繰り返し実行され、マスク処理が施された映像データが逐次、映像受信装置20に送信される。
【0038】
映像受信装置20は、映像送信装置10から映像データを受信し、受信された映像データの表す映像を自装置のUI部に表示する。これにより、映像送信装置10のUI部105に表示されている画面が映像受信装置20と映像送信装置10とで共有される。このとき、映像受信装置20のUI部には、映像送信装置10のUI部105に表示された画面がそのまま表示されるのではなく、秘匿すべき部分がマスク処理された画面(例えば、図8の画面)が表示される。
【0039】
図9は、画面共有アプリ153が行う映像送信処理の流れを例示するシーケンスチャートであり、図6のステップS105の解析処理においてフレーム画像から特定のパターンが検出された場合の動作を例示したものである。図6のステップS105の解析処理においてフレーム画像から特定のパターンが検出された場合、図6のステップS106乃至S113の処理に代えて、ステップS121の処理が実行される。ステップS105において一のフレーム画像において特定のパターンが検知された場合、送信部36は、ステップS121において、映像データの出力を直ちに停止する。すなわち、送信部36は、その時点でフレームメモリ37に記憶されているフレーム画像をエンコードした映像データを送信することなしに、映像データの出力を停止する。
【0040】
すなわち、映像送信装置10のUI部105において特定のパターンの画面(例えば、複数のウィンドウがマトリクス状に配置された画面)が表示されている場合、映像送信装置10から映像受信装置20への映像データの送信は行われない。そのため、映像送信装置10の画面の共有は行われない。
【0041】
ここで、映像データの送信が停止される場合(図9のステップS121)における映像データの送信の停止タイミングについて、図面を参照しつつ説明する。
【0042】
図10は、映像データの送信タイミングを例示するタイムチャートである。図において、横軸は時刻を示す。フレーム画像f1、f2、f3、f4及びf5は映像送信装置10のバッファに格納されるフレーム画像であり、時刻t1、t2、t3、t4、及びt5においてUI部105に表示される画面に対応するフレーム画像である。図10の例では、時刻t2においてユーザにより画面遷移の操作がなされ、画面が図5に例示した画面から図7に例示した画面に遷移している。
【0043】
映像送信装置10のフレームメモリ37には、図6のステップS102でデコードされたフレーム画像が順次格納される。格納されたフレーム画像は解析されてパターン検知された後、マスク処理が施され、エンコードされて映像データとして映像受信装置20に送信される。マスク処理やエンコード処理等は処理時間を要するため、一のフレーム画像が解析されてから送信開始されるまでには、タイムラグΔtが発生する。
【0044】
図10の例では、フレーム画像f1からは特定のパターンは検知されないため、フレーム画像f1はマスク処理が施され、エンコードされて映像受信装置20へ送信される。フレーム画像f2、f3も同様に順次マスク処理及びエンコード処理が施される。一方、フレーム画像f4については、図6のステップS105の処理において特定のパターンが検知され、特定のパターンが検知されたタイミングで、送信部36は映像データの送信を停止する。このとき、上述のようにマスク処理及びエンコード処理には時間が要されるため、フレーム画像f4において特定のパターンが検知されたタイミングにおいては、フレーム画像f2及びf3は未だエンコード処理が完了しておらず、フレーム画像f2及びf3は未だ送信されていない。すなわち、フレーム画像f4において特定のパターンが検知されたタイミングにおいて送信処理が停止されることにより、数フレーム前(フレーム画像f2)に遡って送信が停止されることとなり、フレーム画像f3の画面が共有されてしまうことが防止される。例えば、(OSの仕様により、)単一のウィンドウが表示される画面(例:フレーム画像f2)から複数のウィンドウが並べられた画面(例:フレーム画像f4)に遷移する際に、アニメーションによる遷移画面(例:フレーム画像f3)を経て遷移する場合、複数のウィンドウが並べられた画面は特定のパターンとして検知できるものの、遷移途中の画面は検知できないことがある。遷移途中の画面には他のアプリケーションのウィンドウが含まれる可能性、すなわち秘匿を要する可能性がある。この例によれば、特定のパターンが検知されるとその数フレーム前に遡って送信が停止されることになるので、秘匿を要する画面をより簡単に秘匿することができる。
【0045】
映像送信装置10は、フレーム画像から特定のパターンが検知されている期間においては、フレーム画像のマスク処理やエンコード処理を行うことなく(図9参照)、フレームメモリ37に記憶されたフレーム画像を破棄する。一方、フレーム画像から特定のパターンが検知されなくなったタイミングで、映像送信装置10はフレーム画像のマスク処理がエンコード処理を再開し、映像データの送信を再開する。すなわち、特定のパターンが検知されなかったフレーム画像の映像データから、送信が再開される。そのため、特定のパターンが検知されたフレーム画像の画面は共有されることがない。
【0046】
以上説明したようにこの実施形態では、画面を他の装置と共有するシステムにおいて、マスク処理する領域をユーザが手動で指定したり画面の静止画の画像データを別途取得したりする必要がなく、情報がより簡単に秘匿される。
【0047】
3.変形例
本発明は上述の実施形態に限定されるものではなく、種々の変型実施が可能である。以下、変形例をいくつか説明する。以下の変形例のうち2つ以上のものが組み合わせて用いられてもよい。
【0048】
3-1.変形例1
上述の実施形態では、図6のステップS105において検出する特定のパターンとして、図7を例示した。検出される特定のパターンは上述の実施形態で示したものに限られない。例えば、パスコード(暗証番号)の入力画面から検知されるパターンであってもよい。また、他の例として、例えば、図11に例示されるような、複数のウィンドウが重畳して表示された画面から検知されるパターンであってもよい。
【0049】
3-2.変形例2
上述の実施形態では、フォアグラウンドで動作するアプリケーション(アプリ152)が非公開データを取り扱う企業においてその非公開データを解析するアプリケーションである場合の動作を説明した。アプリ152は上述した実施形態で示したものに限られない。アプリ152は、種々のものが適用可能である。例えば、アプリ152は、汎用のカメラアプリケーションであってもよい。この場合、カメラで撮影された画像(例えば、書類の画像)に所定の文字列が含まれていると、その文字列の部分がマスク処理された画面が共有される。このように、フォアグラウンドで動作するアプリケーションが汎用のカメラアプリである場合であっても、上述の実施形態と同様に、画面を他の装置と共有するシステムにおいて、情報がより簡単に秘匿される。
【0050】
3-3.変形例3
データ処理の流れは実施形態において例示したものに限定されない。OS151は、圧縮された映像データを出力する代わりに、圧縮されていない(すなわちデコード不要の)映像データを出力してもよい。この場合、画面共有アプリ153はデコーダー32を有さなくてもよい。取得部31は、OS151から圧縮されていない映像データを取得する。取得部31は、映像データをフレームメモリに書き込む。以下は、OS151が圧縮された映像データを出力する場合と同様である。
【0051】
また、映像送信装置10から映像受信装置20に送信される映像データは、圧縮されたデータに限定されない。圧縮されていない映像データが、映像送信装置10から映像受信装置20に送信されてもよい。この場合、画面共有アプリ153はエンコーダー35を有さなくてもよい。送信部36は、マスク処理部34にマスク処理された映像をエンコードせずに送信する。
【0052】
3-4.変形例4
映像送信装置10の機能構成は図2で例示したものに限定されない。図2に示した機能の一部が省略されてもよく、また、図示されていない機能が追加されてもよい。また、画面共有システム1を構成する装置における機能の分担は、実施形態において例示したものに限定されない。例えば、映像データの解析処理やマスク処理を映像受信装置20が行ってもよい。また、例えば、画面共有システム1がクラウドサーバを備える構成とし、映像送信装置10がクラウドサーバに映像データを送信し、クラウドサーバが映像データの解析処理やマスク処理を実行してもよい。
【0053】
映像送信装置10のハードウェア構成は、図3に例示されたものに限定されない。要求される機能を実現できるものであれば、映像送信装置10は、どのようなハードウェア構成を有していてもよい。
【0054】
映像送信装置10において実行されるプログラムは、光ディスク、磁気ディスク、半導体メモリなどの記憶媒体により提供されてもよいし、インターネット等の通信回線を介してダウンロードされてもよい。
【符号の説明】
【0055】
1…画面共有システム、2…通信回線、10…映像送信装置、11…受け付け手段、12…取得手段、13…特定手段、14…処理手段、15…生成手段、16…送信手段、17…記憶手段、20…映像受信装置、101…プロセッサ、102…メモリ、103…記憶装置、104…通信IF
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11