JP6950436B2 - 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法 - Google Patents

画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法 Download PDF

Info

Publication number
JP6950436B2
JP6950436B2 JP2017196949A JP2017196949A JP6950436B2 JP 6950436 B2 JP6950436 B2 JP 6950436B2 JP 2017196949 A JP2017196949 A JP 2017196949A JP 2017196949 A JP2017196949 A JP 2017196949A JP 6950436 B2 JP6950436 B2 JP 6950436B2
Authority
JP
Japan
Prior art keywords
image
series
combined
partial
superimposed
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.)
Active
Application number
JP2017196949A
Other languages
English (en)
Other versions
JP2019070962A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017196949A priority Critical patent/JP6950436B2/ja
Publication of JP2019070962A publication Critical patent/JP2019070962A/ja
Application granted granted Critical
Publication of JP6950436B2 publication Critical patent/JP6950436B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Description

本発明は、例えば、表示装置に表示される画像をキャプチャする画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法に関する。
Webブラウザといった、画像を表示するために使用されるアプリケーションにおける画像表示領域(以下、単に表示領域と呼ぶこともある)よりも大きなサイズを持つ画像がある。Webブラウザは、一度にこのような画像全体を表示することができないので、画像の一部がWebブラウザにより表示される。そして、Webブラウザに設けられたスクロールなどの表示対象となる領域の範囲を変える機能を用いて、画像中で表示される領域が変更される。そこで、画像全体を表すキャプチャ画像を生成するために、例えば、画像中のWebブラウザに表示される部分を変更しつつ、表示された部分のそれぞれをキャプチャすることで複数の部分画像を生成し、生成した各部分画像が結合される。
しかし、コンテンツによっては、表示領域に表示される画像の表示範囲が変更されても、表示領域中の同じ位置に、広告あるいはアイコン等の画像(以下、重畳画像と呼ぶ)が表示され続けることがある。このような場合、上記のような方法により画像全体を表すキャプチャ画像が生成される際に、キャプチャされる部分画像ごとに、同じ位置にその重畳画像が重畳されるため、キャプチャ画像においても、所々に重畳画像が重畳されることになる。そこで、表示領域に表示されているWebページ内の任意の領域と固定画像との相対位置関係に基づいて生成される、ウェブページと固定画像とを合成した合成画像に基づいて、Webページに固定画像が重ならない印刷対象画像を生成する技術が提案されている(例えば、特許文献1を参照)。
特開2014−2494号公報
上記の技術では、重畳画像は、表示領域の上端または下端といった特定の位置に表示されることが前提となっている。しかし、重畳画像の表示位置が事前に分からないこともある。このような場合、上記の技術では、重畳画像が重畳されないキャプチャ画像を生成できないことがある。
一つの側面では、本発明は、表示領域上の特定の位置に重畳される画像が表示される場合でも、表示領域よりも大きいサイズを持つ画像をその重畳される画像を除いてキャプチャする画像キャプチャ用コンピュータプログラムを提供することを目的とする。
一つの実施形態によれば、画像キャプチャ用コンピュータプログラムが提供される。この画像キャプチャ用コンピュータプログラムは、重畳画像を表示する表示領域よりも大きいサイズを持ち、かつ、キャプチャ対象となる画像をスクロールする度に表示領域に表示された画像の部分をキャプチャすることでその画像の部分に重畳画像が重畳された一連の第1の部分画像を生成し、キャプチャ対象となる画像を、一連の第1の部分画像の何れとも表示領域に表示される部分が異なるようにスクロールする度に表示領域に表示されたその画像の部分をキャプチャすることでその画像の部分に重畳画像が重畳された一連の第2の部分画像を生成し、一連の第1の部分画像を結合して第1の結合画像を生成し、一連の第2の部分画像を結合して第2の結合画像を生成し、第1の結合画像と第2の結合画像間で互いに異なる候補領域を、第1の結合画像と第2の結合画像のそれぞれについて抽出し、第1の結合画像上の複数の候補領域のうち、一連の第1の部分画像上での対応位置が第2の結合画像上の複数の候補領域の何れかの一連の第2の部分画像上の対応位置と一致する候補領域を、第1の結合画像上での重畳画像が表された不変領域として特定し、第1の結合画像上の不変領域を、第2の結合画像の対応領域で置換することで、重畳画像が除去され、かつキャプチャされた画像を合成する、ことをコンピュータに実行させるための命令を含む。
一つの側面によれば、表示領域上の特定の位置に重畳される画像が表示される場合でも、表示領域よりも大きいサイズを持つ画像をその重畳される画像を除いてキャプチャすることができる。
一つの実施形態による、画像キャプチャ装置のハードウェア構成図である。 画像キャプチャ処理に関するプロセッサの機能ブロック図である。 キャプチャ対象となる画像と、第1及び第2の部分画像と、第1及び第2の結合画像の関係の一例を示す図である。 第1及び第2の結合画像とマスク画像の一例を示す図である。 マスク画像、各部分マスク画像及び不変領域の関係の一例を示す図である。 第1及び第2の結合画像と合成されるキャプチャ画像の関係の一例を示す図である。 画像キャプチャ処理の動作フローチャートである。 変形例において生成される一連の第1の部分画像及び一連の第2の部分画像と、第1及び第2の結合画像の一例を示す図である。 上記の実施形態またはその変形例による画像キャプチャ装置が実装されたサーバクライアントシステムの概略構成図である。
以下、図を参照しつつ、画像キャプチャ装置、及び、その画像キャプチャ装置で利用される画像キャプチャ方法及び画像キャプチャ用コンピュータプログラムについて説明する。この画像キャプチャ装置は、表示領域中の所定の位置に重畳画像が表示される場合において、その重畳画像が除かれた、表示領域よりも大きいサイズを持つ画像全体を表すキャプチャ画像を生成する。その際、この画像キャプチャ装置は、キャプチャ対象となる画像をスクロールすることで、その画像の互いに異なる一部ずつを表示領域に表示し、表示されたそれぞれの一部をキャプチャすることで一連の第1の部分画像を生成する。そしてこの画像キャプチャ装置は、一連の第1の部分画像を結合して、各第1の部分画像の所定の位置に対応する領域に重畳画像が重畳された第1の結合画像を生成する。またこの画像キャプチャ装置は、スクロール方向におけるスクロール開始位置を変更して、再度キャプチャ対象となる画像の互いに異なる一部ずつを表示領域に表示し、表示されたそれぞれの一部をキャプチャすることで一連の第2の部分画像を生成する。そしてこの画像キャプチャ装置は、一連の第2の部分画像を結合して、各第2の部分画像の所定の位置に対応する領域に重畳画像が重畳された第2の結合画像を生成する。この画像キャプチャ装置は、第1の結合画像と第2の結合画像間の差分により、各結合画像上で重畳画像が表された不変領域の候補領域を表すマスク画像を生成する。さらに、この画像キャプチャ装置は、マスク画像を各第1の部分画像の結合位置にて分割することで複数の第1の部分マスク画像を生成するとともに、マスク画像を各第2の部分画像の結合位置にて分割することで複数の第2の部分マスク画像を生成する。そしてこの画像キャプチャ装置は、各第1の部分マスク画像と各第2の部分マスク画像において同じ位置となる候補領域を不変領域として特定する。そしてこの画像キャプチャ装置は、第1及び第2の結合画像のうちの一方の不変領域を他方の結合画像の対応領域で置換することで、重畳画像が重畳されないキャプチャ画像を生成する。
図1は、一つの実施形態による、画像キャプチャ装置のハードウェア構成図である。図1に示されるように、画像キャプチャ装置1は、通信インターフェース2と、ユーザインターフェース3と、メモリ4と、記憶媒体アクセス装置5と、プロセッサ6とを有する。
通信インターフェース2は、イーサネット(登録商標)などの通信規格に従った通信ネットワークに接続するための通信インターフェース及びその制御回路を有する。通信インターフェース2は、例えば、通信ネットワークを介して他の機器(図示せず)からキャプチャ対象となる画像を表すデータを受け取り、受け取ったデータをプロセッサ6にわたす。なお、キャプチャ対象となる画像を表すデータは、例えば、所定の形式で表される画像データそのもの、あるいは、そのような画像データを含む、Webブラウザで表示可能な形式(例えば、htmlに準拠した形式)で表されたコンテンツとすることができる。また通信インターフェース2は、プロセッサ6から受け取った、キャプチャ画像を、通信ネットワークを介して他の機器へ出力してもよい。
ユーザインターフェース3は、例えば、キーボードとマウスなどの入力装置と、液晶ディスプレイといった表示装置とを有する。あるいは、ユーザインターフェース3は、タッチパネルといった、入力装置と表示装置とが一体化された装置を有していてもよい。そしてユーザインターフェース3は、例えば、プロセッサ6から受け取った、キャプチャ対象となる画像の一部が表された、Webブラウザといった画像を表示可能なアプリケーションの表示領域を含むウインドウを表示する。
メモリ4は、記憶部の一例であり、例えば、読み書き可能な半導体メモリと読み出し専用の半導体メモリである。そしてメモリ4は、例えば、キャプチャ対象となる画像を記憶する。さらに、メモリ4は、プロセッサ6で実行される画像キャプチャ用コンピュータプログラムで用いられる、あるいは、その画像キャプチャ用コンピュータプログラムにより生成される各種のデータなどを記憶する。
記憶媒体アクセス装置5は、記憶部の他の一例であり、例えば、磁気ディスク、半導体メモリカード及び光記憶媒体といった記憶媒体7にアクセスする装置である。記憶媒体アクセス装置5は、例えば、記憶媒体7から、プロセッサ6上で実行される画像キャプチャ用コンピュータプログラム、画像を表示するためのアプリケーションの実行ファイル及び関連ファイルを読み込み、プロセッサ6に渡す。
プロセッサ6は、制御部の一例であり、例えば、Central Processing Unit(CPU)と、その周辺回路とを有する。さらに、プロセッサ6は、数値演算プロセッサを有していてもよい。そしてプロセッサ6は、画像キャプチャ装置1全体を制御する。また、プロセッサ6は、通信インターフェース2を介してキャプチャ対象となる画像を表すデータを受け取ると、そのデータをメモリ4に保存する。そしてプロセッサ6は、Webブラウザといった、画像を表示するアプリケーションを起動して、画像キャプチャ処理を実行する。
図2は、画像キャプチャ処理に関するプロセッサ6の機能ブロック図である。図2に示されるように、プロセッサ6は、部分画像生成部11と、結合部12と、候補領域抽出部13と、不変領域特定部14と、合成部15とを有する。
プロセッサ6が有するこれらの各部は、例えば、プロセッサ6が有するプロセッサ上で実行されるコンピュータプログラムによって実現される機能モジュールである。あるいは、プロセッサ6が有するこれらの各部は、ファームウェアとして画像キャプチャ装置1に実装されてもよい。
プロセッサ6は、画像キャプチャ処理を開始する際、画像キャプチャ処理で利用される、Webブラウザ等の画像表示用アプリケーションを起動する。そしてプロセッサ6は、起動したアプリケーションに、キャプチャ対象となる画像(以下では、キャプチャ対象となる画像を単に画像と呼ぶことがある)を読み込ませて、そのアプリケーションが提供する表示領域に、その画像を表示させる。その際、キャプチャ対象となる画像のうちの一部がそのアプリケーションの表示領域に表示される。そして、画像がスクロールされることで、画像の異なる部分が表示領域に表示される。また、表示領域上には、キャプチャ対象となる画像のうちの表示領域に表示される部分がスクロールにより変更されても、同じ位置、かつ、同じサイズの重畳画像が表される。そのため、重畳画像は、表示領域に表示された画像の一部と重畳される。なお、重畳画像に表された内容自体は変化してもよい。また、本実施形態では、スクロール方向は垂直方向とする。
部分画像生成部11は、キャプチャ対象となる画像の一部が表示されたアプリケーションの表示領域をキャプチャすることで、キャプチャ対象となる画像の部分画像を生成する。部分画像生成部11は、キャプチャ対象となる画像をスクロールする度に、その画像を表示するアプリケーションの表示領域に表示された画像の部分をキャプチャすることでその画像の部分に重畳画像が重畳された一連の第1の部分画像を生成する。さらに、部分画像生成部11は、キャプチャ対象となる画像を、一連の第1の部分画像の何れとも表示領域に表示される部分が異なるようにスクロールする。ここで、表示領域に表示される画像の部分が、第1の部分画像に表される画像の部分の少なくとも一部と異なっていればよい。そして部分画像生成部11は、画像をスクロールする度に、表示領域に表示されたその画像の部分をキャプチャすることでその画像の部分に重畳画像が重畳された一連の第2の部分画像を生成する。なお、部分画像生成部11は、表示領域をキャプチャする様々な手法の何れに従って表示領域をキャプチャしてもよい。
本実施形態では、部分画像生成部11は、キャプチャ対象となる画像を表示するアプリケーションに、画像を表示領域の垂直方向の幅ずつスクロールさせることで、その画像の互いに異なる一部ずつを表示領域に表示させる。そして部分画像生成部11は、表示領域に表示された各画像の一部をそれぞれキャプチャすることで一連の第1の部分画像を生成する。生成された各第1の画像上には、キャプチャ対象の画像の一部とともに、同じ位置、かつ、同じサイズの重畳画像が表される。
さらに、部分画像生成部11は、キャプチャ対象となる画像について、スクロール方向におけるスクロール開始位置を所定のオフセット量だけ変更する。そして部分画像生成部11は、再度その画像を表示領域の垂直方向の幅ずつスクロールさせることで、その画像の互いに異なる一部ずつを表示領域に表示させる。部分画像生成部11は、各画像の一部をそれぞれキャプチャすることで一連の第2の部分画像を生成する。生成された各第2の画像上には、キャプチャ対象の画像の一部とともに、同じ位置、かつ、同じサイズの重畳画像が表される。
なお、部分画像生成部11は、一連の第1の部分画像及び一連の第2の部分画像を生成する際、互いに隣接する表示された部分同士が所定の画素幅だけ重なるようにキャプチャ対象となる画像をスクロールさせてもよい。
部分画像生成部11は、一連の第1の部分画像及び一連の第2の部分画像を結合部12へ出力する。なお、互いに隣接する表示された部分同士が所定の幅だけ重なる場合には、部分画像生成部11は、その重なる部分の幅に相当する画素数も結合部12へ通知する。
結合部12は、一連の第1の部分画像を、スクロール方向に沿って、スクロールが開始される側の第1の部分画像から順に結合することで、キャプチャ対象となる画像全体が表される第1の結合画像を生成する。その際、互いに隣接する表示された部分同士が所定の幅だけ重なる場合には、結合部12は、その重なる部分の幅に相当する画素数だけ、互いに隣接する第1の部分画像の隣接部分同士を重ねて結合すればよい。
同様に、結合部12は、一連の第2の部分画像を、スクロール方向に沿って、スクロールが開始される側の第2の部分画像から順に結合することで、キャプチャ対象となる画像全体が表される第2の結合画像を生成する。
図3は、キャプチャ対象となる画像と、第1及び第2の部分画像と、第1及び第2の結合画像の関係の一例を示す図である。キャプチャ対象となる画像300が、画像300の上端を第1のスクロール開始位置として表示領域の垂直方向の幅ずつスクロールされる度にその表示領域がキャプチャされることで一連の第1の部分画像301−1〜301−3が生成される。そして一連の第1の部分画像301−1〜301−3が結合されることで、第1の結合画像311が生成される。
一方、画像300の上端よりも所定のオフセット量αだけ上側にずれた位置を第2のスクロール開始位置303として、画像300が表示領域の垂直方向の幅ずつスクロールされる度にその表示領域がキャプチャされる。これにより、一連の第2の部分画像302−1〜302−3が生成される。そして一連の第2の部分画像302−1〜302−3が結合されることで、第2の結合画像312が生成される。
表示領域には、重畳画像310が表示され、画像300と重畳されるので、一連の第1の部分画像301−1〜301−3、及び、一連の第2の部分画像302−1〜302−3の同じ位置に、重畳画像310が表される。そのため、第1の結合画像311においても、個々の第1の部分画像において重畳画像310が表されていた領域と対応する領域に、重畳画像310が表される。同様に、第2の結合画像312においても、個々の第2の部分画像において重畳画像310が表されていた領域と対応する領域に、重畳画像310が表される。
結合部12は、第1の結合画像及び第2の結合画像を候補領域抽出部13及び合成部15へ出力する。
候補領域抽出部13は、第1の結合画像及び第2の結合画像において重畳画像が重畳されている可能性がある複数の候補領域を、第1の結合画像及び第2の結合画像のそれぞれについて抽出する。
再度図3を参照すると、第1の結合画像311と第2の結合画像312とは、重畳画像310が重畳されている位置が異なる点を除けば同一である。したがって、第1の結合画像311と第2の結合画像312との間で差がある領域が、候補領域となる。
そこで、候補領域抽出部13は、第1の結合画像と第2の結合画像との間で互いに異なる領域のそれぞれを候補領域として抽出する。そのために、候補領域抽出部13は、例えば、対応画素間の差分演算を実行して画素ごとに差分絶対値を算出する。キャプチャ対象となる画像がカラー画像である場合には、候補領域抽出部13は、例えば、各画素について、色成分ごとに、対応画素間の差分絶対値を算出し、色成分ごとの差分絶対値の和、あるいは、平均値をその画素の差分絶対値としてもよい。そして候補領域抽出部13は、差分絶対値が所定の閾値よりも大きい画素の集合を候補領域とする。候補領域抽出部13は、候補領域を表すために、例えば、各結合画像と同じサイズを持ち、候補領域内の各画素(以下、候補画素と呼ぶ)の値(例えば、'0')と候補領域外の各画素の値(例えば、'1')が互いに異なるマスク画像を生成する。
図4は、第1及び第2の結合画像とマスク画像の一例を示す図である。図3に関して説明したように、第1の結合画像401と第2の結合画像402とは、重畳画像410が重畳されている位置が異なる点を除けば同一である。そのため、マスク画像403において、第1の結合画像401上の重畳画像410に対応する領域と、第2の結合画像402上の重畳画像410に対応する領域とが候補領域420となる。
候補領域抽出部13は、マスク画像を不変領域特定部14へ出力する。
不変領域特定部14は、第1の結合画像上の各候補領域のうち、一連の第1の部分画像上での対応位置が第2の結合画像上の各候補領域の何れかの一連の第2の部分画像上の対応位置と一致する候補領域を特定する。そして不変領域特定部14は、特定された候補領域を、第1の結合画像上で重畳画像が表された不変領域とする。同様に、不変領域特定部14は、第2の結合画像上の各候補領域のうち、一連の第2の部分画像上での対応位置が第1の結合画像上の各候補領域の何れかの一連の第1の部分画像上の対応位置と一致する候補領域を、第2の結合画像上の不変領域として特定する。
そのために、不変領域特定部14は、マスク画像を各第1の部分画像の結合位置にて分割することで複数の第1の部分マスク画像を生成するとともに、マスク画像を各第2の部分画像の結合位置にて分割することで複数の第2の部分マスク画像を生成する。そして不変領域特定部14は、各第1の部分マスク画像と各第2の部分マスク画像において同じ位置となる候補領域を不変領域として特定する。
図5は、マスク画像、各部分マスク画像及び不変領域の関係の一例を示す図である。マスク画像500には、複数の候補領域501−1〜501−4が含まれる。マスク画像500が、各第1の部分画像の結合位置502にて分割されることで生成される第1の部分マスク画像510−1〜510−3のそれぞれにおいて、複数の候補領域の何れかが、重畳画像に対応する。同様に、マスク画像500が、各第2の部分画像の結合位置503にて分割されることで生成される第2の部分マスク画像520−1〜520−3のそれぞれにおいて、複数の候補領域の何れかが、重畳画像に対応する。また、各第1の部分マスク画像510−1〜510−3及び各第2の部分マスク画像520−1〜520−3は、それぞれ、元の画像のうちの表示領域に表示された部分に対応している。そのため、各第1の部分マスク画像510−1〜510−3及び各第2の部分マスク画像520−1〜520−3において、同じ位置に重畳画像は存在する。そのため、各第1の部分マスク画像510−1〜510−3上の各候補領域のうち、各第2の部分マスク画像520−1〜520−3の何れかの候補領域と一致する候補領域が、不変領域となる。この例では、第1の部分マスク画像510−1上の候補領域501−1と、第1の部分マスク画像510−2上の候補領域501−3とが、不変領域となる。同様に、各第2の部分マスク画像520−1〜520−3上の各候補領域のうち、各第1の部分マスク画像510−1〜510−3の何れかの候補領域と一致する候補領域が、不変領域となる。この例では、第2の部分マスク画像520−2上の候補領域501−2と、第2の部分マスク画像520−3上の候補領域501−4とが、不変領域となる。
なお、マスク画像において、候補領域内の候補画素の値と候補領域外の画素の値とが異なっている。そこで、不変領域特定部14は、各第1の部分マスク画像について、候補領域内の候補画素のうち、その候補画素の値と第2の部分画像の対応画素の値が同じとなる候補画素の集合を不変領域とすることができる。同様に、不変領域特定部14は、各第2の部分マスク画像について、候補領域内の候補画素のうち、その候補画素の値と第1の部分マスク画像の対応画素の値が同じとなる候補画素の集合を不変領域とすることができる。
不変領域特定部14は、個々の第1の部分マスク画像について特定された不変領域に対応する、第1の結合画像上の領域を、第1の結合画像における不変領域とする。同様に、不変領域特定部14は、個々の第2の部分マスク画像について特定された不変領域に対応する、第2の結合画像上の領域を、第2の結合画像における不変領域とする。そして不変領域特定部14は、第1の結合画像についての不変領域及び第2の結合画像についての不変領域を合成部15へ通知する。
合成部15は、第1及び第2の結合画像のうちの一方の不変領域を他方の結合画像の対応領域で置換することで、重畳画像が除去されたキャプチャ画像を合成する。
図6は、第1及び第2の結合画像と合成されるキャプチャ画像の関係の一例を示す図である。第1の結合画像601において、不変領域特定部14により特定された不変領域611が除かれる。そして不変領域611が、第2の結合画像602の対応領域621で置換されることで、キャプチャ画像630が合成される。なお、第2の結合画像602において、不変領域特定部14により特定された不変領域612が除かれる。そして不変領域612が、第1の結合画像601の対応領域622で置換されることでも、キャプチャ画像630は合成される。
合成部15は、合成されたキャプチャ画像をメモリ4または記憶媒体7に保存する。あるいは、合成部15は、合成されたキャプチャ画像を、通信インターフェース2を介して他の機器へ出力してもよい。
図7は、プロセッサ6により実行される、画像キャプチャ処理の動作フローチャートである。
部分画像生成部11は、キャプチャ対象となる画像を所定のスクロール開始位置から表示領域の垂直方向の幅ずつスクロールしつつ、その画像の互いに異なる一部ずつをキャプチャすることで一連の第1の部分画像を生成する(ステップS101)。さらに、部分画像生成部11は、スクロール開始位置をオフセット量だけ変更する。そして部分画像生成部11は、キャプチャ対象となる画像を表示領域の垂直方向の幅ずつスクロールさせつつ、その画像の互いに異なる一部ずつをキャプチャすることで一連の第2の部分画像を生成する(ステップS102)。
結合部12は、一連の第1の部分画像を、スクロール方向に沿って、スクロールが開始される側の第1の部分画像から順に結合することで第1の結合画像を生成する(ステップS103)。同様に、結合部12は、一連の第2の部分画像を、スクロール方向に沿って、スクロールが開始される側の第2の部分画像から順に結合することで第2の結合画像を生成する(ステップS104)。
候補領域抽出部13は、第1の結合画像と第2の結合画像との間で対応画素間の差分演算を実行して画素ごとに差分絶対値を算出し、差分絶対値が所定の閾値よりも大きい画素の集合を候補領域として抽出する(ステップS105)。
不変領域特定部14は、第1の結合画像と同サイズを持ち、かつ、候補領域を表すマスク画像を各第1の部分画像の結合位置にて分割することで複数の第1の部分マスク画像を生成する(ステップS106)。また不変領域特定部14は、マスク画像を各第2の部分画像の結合位置にて分割することで複数の第2の部分マスク画像を生成する(ステップS107)。そして不変領域特定部14は、各第1の部分マスク画像と各第2の部分マスク画像において同じ位置となる候補領域を不変領域として特定する(ステップS108)。
合成部15は、第1及び第2の結合画像のうちの一方の不変領域を他方の結合画像の対応領域で置換することで、重畳画像が除去されたキャプチャ画像を合成する(ステップS109)。そしてプロセッサ6は、画像キャプチャ処理を終了する。
以上に説明してきたように、この画像キャプチャ装置は、表示領域よりも大きいサイズを持つキャプチャ対象となる画像を、互いに異なるスクロール開始位置ごとに、表示領域単位でスクロールしつつキャプチャすることで得た部分画像を結合する。これにより、この画像キャプチャ装置は、表示領域において位置が変化しない重畳画像が重畳された位置が互いに異なる二つの結合画像を得ることができる。そしてこの画像キャプチャ装置は、その二つの結合画像を比較することで重畳画像の候補領域を抽出し、さらに、その二つの結合画像を部分画像単位で分割したときの候補領域同士の位置を比較することで、重畳画像が含まれる不変領域を特定する。これにより、この画像キャプチャ装置は、二つの結合画像のそれぞれにおける不変領域を特定できる。そのため、この画像キャプチャ装置は、その二つの結合画像の一方の不変領域を他方の対応領域で置換することで、表示領域における重畳画像の位置が未知であっても、表示領域よりも大きいサイズを持つ画像を、重畳画像を除去しつつキャプチャできる。また、この画像キャプチャ装置は、スクロール方向と直交する方向において、重畳画像の幅が表示領域の幅よりも狭くても、重畳画像が除去されたキャプチャ画像を合成できる。
なお、変形例によれば、スクロール方向は垂直方向に限られない。キャプチャ対象となる画像の水平方向サイズが表示領域の水平サイズよりも大きい場合には、部分画像生成部11は、キャプチャ対象となる画像を水平方向にスクロールしつつ、上記の実施形態と同様に表示領域単位でその画像をキャプチャすればよい。これにより、部分画像生成部11は、一連の第1の部分画像及び一連の第2の部分画像を生成すればよい。
また、キャプチャ対象となる画像の垂直方向サイズ及び水平方向サイズの何れについても、表示領域のサイズよりも大きいこともある。このような場合には、部分画像生成部11は、キャプチャ対象となる画像を垂直方向及び水平方向のそれぞれについてスクロールしつつ、上記の実施形態と同様に表示領域単位でその画像をキャプチャすればよい。この場合には、部分画像生成部11は、垂直方向及び水平方向のうちの何れか一方について、スクロール開始位置を変更することで、一連の第1の部分画像と一連の第2の部分画像とを生成すればよい。そしてこの場合も、結合部12は、一連の第1の部分画像を結合することで第1の結合画像を生成し、かつ、一連の第2の部分画像を結合することで第2の結合画像を生成すればよい。
図8は、この変形例において生成される一連の第1の部分画像及び一連の第2の部分画像と、第1及び第2の結合画像の一例を示す図である。
キャプチャ対象となる画像800が、画像800の上端を垂直方向についてのスクロール開始位置として表示領域の垂直方向の幅ずつスクロールされる。さらに、垂直方向について一旦スクロールされると、画像800は、画像800の左端を水平方向についてのスクロール開始位置として、画像800の水平方向サイズと表示領域の水平方向サイズの差だけ水平方向にスクロールされる。そして画像800は、垂直方向または水平方向の何れかについてスクロールされる度に、表示領域単位でキャプチャされる。同様の手順が繰り返されることで、一連の第1の部分画像801−1〜801−6が生成される。そして一連の第1の部分画像801−1〜801−6が結合されることで、第1の結合画像811が生成される。
一方、画像800の上端よりも所定のオフセット量だけ上側にずれた位置をスクロール開始位置として、画像800が表示領域の垂直方向の幅ずつスクロールされる。さらに、垂直方向について一旦スクロールされると、画像800は、画像800の左端を水平方向についてのスクロール開始位置として、画像800の水平方向サイズと表示領域の水平方向サイズの差だけ水平方向にスクロールされる。そして画像800は垂直方向または水平方向の何れかについてスクロールされる度に、表示領域単位でキャプチャされる。同様の手順が繰り返されることで、一連の第2の部分画像802−1〜802−6が生成される。そして一連の第2の部分画像802−1〜802−6が結合されることで、第2の結合画像812が生成される。
この例でも、第1の結合画像811において重畳画像810が重畳される位置と、第2の結合画像812において重畳画像810が重畳される位置とは互いに異なっている。そのため、この変形例についても、画像キャプチャ装置は、第1の結合画像811と第2の結合画像812に対して候補領域抽出部13、不変領域特定部14及び合成部15の処理を行うことで、重畳画像を除いたキャプチャ画像を合成することができる。
また他の変形例によれば、重畳画像の位置がスクロール方向の表示領域の一端を基準として設定されていることがある。このような場合、部分画像生成部11は、スクロール開始位置を変更する代わりに、一連の第1の部分画像を生成するときのスクロール方向に沿った表示領域の幅と、第2の結合画像を生成するときのスクロール方向に沿った表示領域の幅とを異ならせてもよい。例えば、重畳画像の位置が表示領域の下端を基準として設定されているとする。このような場合、一連の第1の部分画像生成時と、一連の第2の部分画像生成時とで、表示領域の垂直方向のサイズが異なれば、各第1の部分画像の上端から重畳画像までの距離と、各第2の部分画像の上端から重畳画像までの距離は互いに異なる。そのため、第1の結合画像上の重畳画像の位置と、第2の結合画像上の重畳画像の位置も異なることになるので、画像キャプチャ装置は、上記の実施形態と同様に、各結合画像上の不変領域を特定できる。なお、重畳画像の位置が表示領域の上端を基準として設定されている場合には、部分画像生成部11は、キャプチャ対象となる画像の下端をスクロール開始位置とすればよい。そして部分画像生成部11は、一連の第1の部分画像生成時と一連の第2の部分画像生成時とで、表示領域の垂直方向のサイズを互いに異ならせて、表示領域単位で画像をキャプチャすることで各部分画像を生成すればよい。
あるいは、部分画像生成部11は、一連の第1の部分画像を生成するときと、一連の第2の部分画像を生成するときとで、キャプチャ対象となる画像のスクロール方向を互いに逆向きとしてもよい。例えば、部分画像生成部11は、一連の第1の部分画像を生成する場合には、キャプチャ対象となる画像の上端をスクロール開始位置として、下側へ順にその画像をスクロールする。一方、部分画像生成部11は、一連の第2の部分画像を生成する場合には、キャプチャ対象となる画像の下端をスクロール開始位置として、上側へ順にその画像をスクロールする。その際、部分画像生成部11は、一連の第1の部分画像を生成する場合の一回キャプチャするごとのスクロール量と、一連の第2の部分画像を生成する場合の一回キャプチャするごとのスクロール量とを互いに異ならせてもよい。このように一連の第1の部分画像及び一連の第2の部分画像が生成される場合も、第1の結合画像上の重畳画像の位置と、第2の結合画像上の重畳画像の位置も異なることになる。そのため、画像キャプチャ装置は、上記の実施形態と同様に、各結合画像上の不変領域を特定できる。
また、画像を表示するアプリケーションによっては、第1の結合画像と第2の結合画像間の差分演算により、重畳画像が重畳されていない画素についても差分絶対値が所定の閾値より大きくなることがある。そこで候補領域抽出部13は、モルフォロジーの収縮膨張演算といったノイズ除去処理を、マスク画像上の候補画素に対して行ってもよい。また、一般に、重畳画像はある程度のサイズを持つと想定される。そこで、候補領域抽出部13は、マスク画像上の候補画素に対してラベリング処理を行って、各候補画素を、互いに連続する候補画素の集合ごとにグループ化する。そして候補領域抽出部13は、候補画素のグループのうち、そのグループに含まれる候補画素の数が所定の面積閾値未満となるグループを候補領域から除外してもよい。また、重畳画像は、一般に、略矩形となる形状を持つことが想定される。そこで候補領域抽出部13は、候補画素のグループごとに、そのグループの外接矩形に含まれる画素の数に対するそのグループに含まれる候補画素の数の比を算出し、その比が所定の面積比閾値未満となるグループを候補領域から除外してもよい。候補領域抽出部13は、例えば、マスク画像における、候補領域から除外したグループに含まれる候補画素の値を、候補領域外の画素の値に書き換える。
この変形例によれば、画像キャプチャ装置は、各結合画像上の不変領域をより正確に特定することができる。
また、重畳画像のサイズと、第1の結合画像生成時のスクロール開始位置に対する第2の結合画像生成時のスクロール開始位置のオフセット量との関係によっては、第1の結合画像上の不変領域と第2の結合画像上の不変領域とが部分的に重なることがある。このような場合、第1及び第2の結合画像の一方における不変領域に対応する、第1及び第2の結合画像の他方の対応領域にも部分的に重畳画像が含まれるため、合成部15は、重畳画像を除いたキャプチャ画像を合成することができない。
そこで、不変領域特定部14は、第1の結合画像上の不変領域と、第2の結合画像上の不変領域とが互いに重なるか否か判定する。そして第1の結合画像上の不変領域と、第2の結合画像上の不変領域とが少なくとも部分的に重なる場合には、不変領域特定部14は、そのスクロール方向における、不変領域同士が互いに重なる部分の幅を部分画像生成部11へ通知する。そして部分画像生成部11は、通知された、不変領域同士が互いに重なる部分の幅に数画素程度を加えた値だけスクロール開始位置のオフセット量を増やして、一連の第2の部分画像を再度生成する。そして画像キャプチャ装置は、再生成された一連の第2の部分画像に対して、結合部12、候補領域抽出部13及び不変領域特定部14の処理を実行すればよい。これにより、第1の結合画像上の不変領域と第2の結合画像上の不変領域とが互いに重なることが防止されるので、合成部15は、重畳画像が除去されたキャプチャ画像を合成することができる。したがって、この変形例によれば、画像キャプチャ装置は、重畳画像のサイズが未知の場合でも、重畳画像が除去されたキャプチャ画像を合成することができる。
さらに他の変形例によれば、部分画像生成部11は、スクロール開始位置が互いに異なる3種類以上の一連の部分画像を生成してもよい。そして結合部12は、3種類以上の一連の部分画像のそれぞれについて、結合画像を生成してもよい。この場合も、候補領域抽出部13、不変領域特定部14及び合成部15の処理が、生成された3種類以上の結合画像のうちの何れか二つについて行われることで、画像キャプチャ装置は、重畳画像を除いたキャプチャ画像を合成することができる。
さらに他の変形例によれば、図5に示されるように、第1の結合画像上の不変領域に対応する、一連の第1の部分画像上の不変領域も求められる。同様に、第2の結合画像上の不変領域に対応する、一連の第2の部分画像上の不変領域も求められる。そこで、合成部15は、一連の第1の部分画像のそれぞれについて、その第1の部分画像の不変領域を、第2の結合画像または一連の第2の部分画像の対応領域で置換してから、各第1の部分画像を結合することで、キャプチャ画像を合成してもよい。このようにキャプチャ画像を合成することも、第1の結合画像の不変領域が第2の結合画像の対応領域で置換されることと実質的に同じである。同様に、合成部15は、一連の第2の部分画像のそれぞれについて、その第2の部分画像の不変領域を、第1の結合画像または一連の第1の部分画像の対応領域で置換してから、各第2の部分画像を結合することで、キャプチャ画像を合成してもよい。
さらに他の変形例によれば、候補領域抽出部13は、候補領域を表すためにマスク画像を生成しなくてもよい。この場合には、候補領域抽出部13は、例えば、各候補画素に対してラベリング処理を実行することで、各候補画素を、互いに連結された候補画素の集合ごとにグループ化する。候補領域抽出部13は、各グループを、それぞれ、一つの候補領域として、第1または第2の結合画像の左上端を原点とする座標系にてそのグループの外接矩形の各コーナーの座標を算出する。そして候補領域抽出部13は、各候補領域の外接矩形の各コーナーの座標を不変領域特定部14へ出力すればよい。そして不変領域特定部14は、第1の結合画像上の各候補領域の外接矩形の各コーナーの座標に対応する、一連の第1の部分画像上の座標を算出すればよい。同様に、不変領域特定部14は、第2の結合画像上の各候補領域の外接矩形の各コーナーの座標に対応する、一連の第2の部分画像上の座標を算出すればよい。そして不変領域特定部14は、一連の第1の部分画像及び一連の第2の部分画像上での各不変領域の外接矩形の各コーナーの座標を参照して、一連の第2の部分画像一連の第1の部分画像と一連の第2の部分画像との間で、一致する不変領域を特定すればよい。
上記の実施形態または変形例による画像キャプチャ装置は、ブラウザに表示されるコンテンツを検証するためのコンテンツ検証装置としても用いられてもよい。この場合、プロセッサ6は、互いに異なる2種類のWebブラウザのそれぞれについて、上記の実施形態または変形例による画像キャプチャ処理を行うことで、コンテンツに含まれる画像についての、重畳画像を除いたキャプチャ画像を合成すればよい。そしてプロセッサ6は、各Webブラウザについて得られたキャプチャ画像同士を比較して、キャプチャ画像同士が一致するか否かを判定すればよい。
上記の実施形態または変形例による画像キャプチャ装置は、サーバクライアント型のシステムに実装されてもよい。
図9は、上記の実施形態またはその変形例による画像キャプチャ装置が実装されたサーバクライアントシステムの概略構成図である。
サーバクライアントシステム100は、画像キャプチャシステムの一例であり、端末110とサーバ120とを有し、端末110とサーバ120とは、通信ネットワーク130を介して互いに通信可能となっている。なお、サーバクライアントシステム100が有する端末110は複数存在してもよい。同様に、サーバクライアントシステム100が有するサーバ120は複数存在してもよい。
端末110は、ユーザインターフェース111と、メモリ112と、通信インターフェース113と、プロセッサ114とを有する。ユーザインターフェース111、メモリ112及び通信インターフェース113は、例えば、プロセッサ114とバスを介して接続されている。
ユーザインターフェース111は、例えば、キーボードとマウスなどの入力装置と、液晶ディスプレイといった表示装置とを有する。あるいは、ユーザインターフェース111は、タッチパネルといった、入力装置と表示装置とが一体化された装置を有していてもよい。そしてユーザインターフェース111は、例えば、プロセッサ114から受け取った、キャプチャ対象となる画像の一部が表された、ブラウザといった画像を表示するアプリケーションの表示領域を含むウインドウを表示装置に表示する。
メモリ112は、例えば、不揮発性の半導体メモリ及び揮発性の半導体メモリを有する。そしてメモリ112は、端末110を制御するためのコンピュータプログラム、端末110の識別情報、画像キャプチャ処理で利用される各種のデータ及びコンピュータプログラムなどを記憶する。
通信インターフェース113は、端末110を通信ネットワーク130に接続するためのインターフェース回路を有する。そして通信インターフェース113は、プロセッサ114から受け取った画像データを、端末110の識別情報とともに通信ネットワーク130を介してサーバ120へ送信する。
プロセッサ114は、CPUとその周辺回路を有する。そしてプロセッサ114は、キャプチャ対象となる画像データを、端末110の識別情報とともに、通信インターフェース113及び通信ネットワーク130を介してサーバ120へ送信する。またプロセッサ114は、サーバ120から受け取った、キャプチャされた画像をユーザインターフェース111に表示するか、あるいは、キャプチャされた画像を、端末110と接続されたプリンタ(図示せず)などにより紙などの媒体に印刷させる。
サーバ120は、通信インターフェース121と、メモリ122と、プロセッサ123とを有する。通信インターフェース121及びメモリ122は、プロセッサ123とバスを介して接続されている。
通信インターフェース121は、サーバ120を通信ネットワーク130に接続するためのインターフェース回路を有する。そして通信インターフェース121は、キャプチャ対象となる画像データと端末110の識別情報とを端末110から通信ネットワーク130を介して受信してプロセッサ123に渡す。
メモリ122は、例えば、不揮発性の半導体メモリ及び揮発性の半導体メモリを有する。そしてメモリ122は、サーバ120を制御するためのコンピュータプログラムなどを記憶する。またメモリ122は、画像キャプチャ処理を実行するためのコンピュータプログラム及び各端末から受信した画像データを記憶してもよい。
プロセッサ123は、CPUとその周辺回路を有する。そしてプロセッサ123は、上記の実施形態または変形例による画像キャプチャ装置のプロセッサの各機能を実現する。そしてプロセッサ123は、受信した画像データに対する画像キャプチャ処理を行って、重畳画像を含まないキャプチャされた画像を合成し、そのキャプチャされた画像を通信インターフェース121及び通信ネットワーク130を介して端末110へ送信する。
なお、端末110のプロセッサ114が、上記の実施形態または変形例による画像キャプチャ装置のプロセッサの各機能のうち、部分画像生成部11の処理を実行してもよい。この場合、端末110は、一連の第1の部分画像及び一連の第2の部分画像を、通信インターフェース113及び通信ネットワーク130を介してサーバ120へ送信すればよい。そしてサーバ120のプロセッサ123は、一連の第1の部分画像及び一連の第2の部分画像に基づいて、結合部12、候補領域抽出部13、不変領域特定部14及び合成部15の処理を実行すればよい。あるいは、端末110のプロセッサ114が、部分画像生成部11及び結合部12の処理を実行してもよい。この場合、端末110は、第1の結合画像及び第2の結合画像と、各結合画像における部分画像間の結合位置とをサーバ120へ送信すればよい。そしてサーバ120のプロセッサ123は、第1の結合画像及び第2の結合画像に基づいて、候補領域抽出部13、不変領域特定部14及び合成部15の処理を実行すればよい。
あるいはまた、端末110のプロセッサ114が、上記の実施形態または変形例による画像キャプチャ装置のプロセッサの各機能のうち、部分画像生成部11、結合部12及び合成部15の処理を実行してもよい。この場合には、サーバ120のプロセッサ123は、候補領域抽出部13及び不変領域特定部14の処理を実行して、第1及び第2の結合画像のそれぞれにおける不変領域を特定すればよい。そしてプロセッサ123は、各結合画像における不変領域を表す情報を、通信インターフェース121及び通信ネットワーク130を介して端末110へ通知すればよい。
さらに、上記の実施形態または変形例による画像キャプチャ装置のプロセッサが有する各部の機能をコンピュータに実現させるコンピュータプログラムは、コンピュータによって読取り可能な記録媒体に記憶された形で提供されてもよい。なお、コンピュータによって読取り可能な記録媒体は、例えば、磁気記録媒体、光記録媒体、又は半導体メモリとすることができる。
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
1 画像キャプチャ装置
2 通信インターフェース
3 ユーザインターフェース
4 メモリ
5 記憶媒体アクセス装置
6 プロセッサ
7 記憶媒体
11 部分画像生成部
12 結合部
13 候補領域抽出部
14 不変領域特定部
15 合成部
100 サーバクライアントシステム
110 端末
120 サーバ
130 通信ネットワーク
111 ユーザインターフェース
112 メモリ
113 通信インターフェース
114 プロセッサ
121 通信インターフェース
122 メモリ
123 プロセッサ

Claims (9)

  1. 重畳画像を表示する表示領域よりも大きいサイズを持ち、かつ、キャプチャ対象となる画像をスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第1の部分画像を生成し、
    前記画像を、前記一連の第1の部分画像の何れとも前記表示領域に表示される部分が異なるようにスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第2の部分画像を生成し、
    前記一連の第1の部分画像を結合して第1の結合画像を生成し、
    前記一連の第2の部分画像を結合して第2の結合画像を生成し、
    前記第1の結合画像と前記第2の結合画像間で互いに異なる複数の候補領域を、前記第1の結合画像と前記第2の結合画像のそれぞれについて抽出し、
    前記第1の結合画像上の前記複数の候補領域のうち、前記一連の第1の部分画像上での対応位置が前記第2の結合画像上の前記複数の候補領域の何れかの前記一連の第2の部分画像上の対応位置と一致する候補領域を、前記第1の結合画像上での前記重畳画像が表された不変領域として特定し、
    前記第1の結合画像上の前記不変領域を、前記第2の結合画像の対応領域で置換することで、前記重畳画像が除去され、かつキャプチャされた前記画像を合成する、
    ことをコンピュータに実行させるための画像キャプチャ用コンピュータプログラム。
  2. 前記一連の第2の部分画像を生成することは、前記一連の第1の部分画像を生成するときの第1のスクロール開始位置と異なる第2のスクロール開始位置から前記画像をスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第2の部分画像を生成することを含む、請求項1に記載の画像キャプチャ用コンピュータプログラム。
  3. 前記一連の第1の部分画像を生成することは、前記第1のスクロール開始位置から第1のスクロール量ずつスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで前記一連の第1の部分画像を生成することを含み、
    前記一連の第2の部分画像を生成することは、前記第2のスクロール開始位置から前記第1のスクロール量と異なる第2のスクロール量ずつスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで前記一連の第2の部分画像を生成することを含む、請求項2に記載の画像キャプチャ用コンピュータプログラム。
  4. 前記一連の第2の部分画像を生成することは、前記一連の第1の部分画像を生成するときのスクロール方向における前記表示領域の幅と前記一連の第2の部分画像を生成するときの前記スクロール方向における前記表示領域の幅を異ならせることを含む、請求項1に記載の画像キャプチャ用コンピュータプログラム。
  5. 前記一連の第1の部分画像を生成することは、前記画像を、前記第1のスクロール開始位置から第1のスクロール方向に沿ってスクロールするか、前記第1のスクロール方向と異なる第2のスクロール方向に沿ってスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで前記一連の第1の部分画像を生成することを含み、
    前記一連の第2の部分画像を生成することは、前記画像を、前記第2のスクロール開始位置から前記第1のスクロール方向に沿ってスクロールするか、前記第2のスクロール方向に沿ってスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで前記一連の第2の部分画像を生成することを含む、請求項2に記載の画像キャプチャ用コンピュータプログラム。
  6. 前記第2の結合画像上の前記複数の候補領域のうち、前記一連の第2の部分画像上での対応位置が前記第1の結合画像上の前記複数の候補領域の何れかの前記一連の第1の部分画像上の対応位置と一致する候補領域を、前記第2の結合画像上での前記重畳画像が表された不変領域として特定し、
    前記第1の結合画像上の前記不変領域と前記第2の結合画像上の前記不変領域とが少なくとも部分的に重なる場合、前記第1のスクロール開始位置と前記第2のスクロール開始位置との差が、前記第1の結合画像上の前記不変領域と前記第2の結合画像上の前記不変領域とが重なる部分のスクロール方向の幅に応じて大きくなるよう、前記第2のスクロール開始位置を変更して、変更後の前記第2のスクロール開始位置から前記画像をスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第2の部分画像を再生成することをさらに含み、
    前記第2の結合画像を生成することは、再生成された前記一連の第2の部分画像を結合して第2の結合画像を再生成することを含み、
    前記候補領域を抽出することは、前記第1の結合画像と再生成された前記第2の結合画像間で互いに異なる前記候補領域を、前記第1の結合画像と再生成された前記第2の結合画像のそれぞれについて抽出することを含み、
    前記第1の結合画像上での前記不変領域を特定することは、前記第1の結合画像上の前記複数の候補領域のうち、前記一連の第1の部分画像上での対応位置が再生成された前記第2の結合画像上の前記複数の候補領域の何れかの前記一連の第2の部分画像上の対応位置と一致する候補領域を、前記第1の結合画像上での前記重畳画像が表された不変領域として特定することを含む、請求項2に記載の画像キャプチャ用コンピュータプログラム。
  7. 重畳画像を表示する表示領域よりも大きいサイズを持ち、かつ、キャプチャ対象となる画像をスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第1の部分画像を生成し、かつ、前記画像を、前記一連の第1の部分画像の何れとも前記表示領域に表示される部分が異なるようにスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第2の部分画像を生成する部分画像生成部と、
    前記一連の第1の部分画像を結合して第1の結合画像を生成し、かつ、前記一連の第2の部分画像を結合して第2の結合画像を生成する結合部と、
    前記第1の結合画像と前記第2の結合画像間で互いに異なる候補領域を、前記第1の結合画像と前記第2の結合画像のそれぞれについて抽出する候補領域抽出部と、
    前記第1の結合画像上の前記複数の候補領域のうち、前記一連の第1の部分画像上での対応位置が前記第2の結合画像上の前記複数の候補領域の何れかの前記一連の第2の部分画像上の対応位置と一致する候補領域を、前記第1の結合画像上での前記重畳画像が表された不変領域として特定する不変領域特定部と、
    前記第1の結合画像上の前記不変領域を、前記第2の結合画像の対応領域で置換することで、前記重畳画像が除去され、かつキャプチャされた前記画像を合成する合成部と、
    を有する画像キャプチャ装置。
  8. 重畳画像を表示する表示領域よりも大きいサイズを持ち、かつ、キャプチャ対象となる画像をスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第1の部分画像を生成し、
    前記画像を、前記一連の第1の部分画像の何れとも前記表示領域に表示される部分が異なるようにスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第2の部分画像を生成し、
    前記一連の第1の部分画像を結合して第1の結合画像を生成し、
    前記一連の第2の部分画像を結合して第2の結合画像を生成し、
    前記第1の結合画像と前記第2の結合画像間で互いに異なる候補領域を、前記第1の結合画像と前記第2の結合画像のそれぞれについて抽出し、
    前記第1の結合画像上の前記複数の候補領域のうち、前記一連の第1の部分画像上での対応位置が前記第2の結合画像上の前記複数の候補領域の何れかの前記一連の第2の部分画像上の対応位置と一致する候補領域を、前記第1の結合画像上での前記重畳画像が表された不変領域として特定し、
    前記第1の結合画像上の前記不変領域を、前記第2の結合画像の対応領域で置換することで、前記重畳画像が除去され、かつキャプチャされた前記画像を合成する、
    ことを含む画像キャプチャ方法。
  9. 端末と、前記端末と通信ネットワークを介して接続されるサーバとを有する画像キャプチャシステムであって、
    前記端末は、
    表示装置と、
    前記表示装置の重畳画像を表示する表示領域よりも大きいサイズを持ち、かつ、キャプチャ対象となる画像をスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第1の部分画像を生成し、かつ、前記画像を、前記一連の第1の部分画像の何れとも前記表示領域に表示される部分が異なるようにスクロールする度に前記表示領域に表示された前記画像の部分をキャプチャすることで当該画像の部分に前記重畳画像が重畳された一連の第2の部分画像を生成するプロセッサと、
    前記一連の第1の部分画像及び前記一連の第2の部分画像を前記通信ネットワークを介して前記サーバへ送信する通信インターフェースと、
    を有し、
    前記サーバは、
    前記一連の第1の部分画像を結合して第1の結合画像を生成し、かつ、前記一連の第2の部分画像を結合して第2の結合画像を生成し、
    前記第1の結合画像と前記第2の結合画像間で互いに異なる候補領域を、前記第1の結合画像と前記第2の結合画像のそれぞれについて抽出し、
    前記第1の結合画像上の前記複数の候補領域のうち、前記一連の第1の部分画像上での対応位置が前記第2の結合画像上の前記複数の候補領域の何れかの前記一連の第2の部分画像上の対応位置と一致する候補領域を、前記第1の結合画像上での前記重畳画像が表された不変領域として特定し、
    前記第1の結合画像上の前記不変領域を、前記第2の結合画像の対応領域で置換することで、前記重畳画像が除去され、かつキャプチャされた前記画像を合成するプロセッサを有する、
    画像キャプチャシステム。
JP2017196949A 2017-10-10 2017-10-10 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法 Active JP6950436B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017196949A JP6950436B2 (ja) 2017-10-10 2017-10-10 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017196949A JP6950436B2 (ja) 2017-10-10 2017-10-10 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法

Publications (2)

Publication Number Publication Date
JP2019070962A JP2019070962A (ja) 2019-05-09
JP6950436B2 true JP6950436B2 (ja) 2021-10-13

Family

ID=66441888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017196949A Active JP6950436B2 (ja) 2017-10-10 2017-10-10 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法

Country Status (1)

Country Link
JP (1) JP6950436B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4626703B2 (ja) * 2008-10-28 2011-02-09 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP2010257220A (ja) * 2009-04-24 2010-11-11 Canon Inc 構造化文書の印刷方法および印刷装置、プログラム
JP5962243B2 (ja) * 2012-06-18 2016-08-03 ブラザー工業株式会社 画像処理プログラムおよび画像処理方法
JP6414475B2 (ja) * 2015-01-29 2018-10-31 ブラザー工業株式会社 コンピュータプログラム及び制御装置

Also Published As

Publication number Publication date
JP2019070962A (ja) 2019-05-09

Similar Documents

Publication Publication Date Title
JP6025522B2 (ja) 画像処理装置、画像処理方法、画像処理システム及びプログラム
JP4845715B2 (ja) 画像処理方法、画像処理装置、プログラム、及び記憶媒体
KR101235226B1 (ko) 화상 처리 장치, 화상 처리 방법 및 기록 매체
WO2006131967A1 (ja) 画像処理装置
JP6430914B2 (ja) 画像処理装置および画像処理方法
US8897598B1 (en) Mosaicing documents for translation using video streams
JP2012203458A (ja) 画像処理装置及びプログラム
KR20110139113A (ko) 주석이 달린 문서 이미지들로부터 클린 문서를 복원하기 위한 시스템 및 방법
JP4917698B1 (ja) 画像処理装置、画像処理方法、プログラム及び記録媒体
JP6061502B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5769131B2 (ja) 画像処理装置およびプログラム
JP6950436B2 (ja) 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法
JP5703898B2 (ja) 帳票管理システム、帳票画像管理方法、及びプログラム
CN111133474B (zh) 图像处理设备、图像处理方法和计算机可读记录介质
JP6623565B2 (ja) 棚割情報生成装置、棚割情報生成システム、棚割情報生成方法、撮像装置、およびプログラム
JP2018055256A (ja) 情報処理装置、情報処理方法及びプログラム
JP6646006B2 (ja) 情報提示装置、情報提示方法及びプログラム
KR20120035360A (ko) 문자 인식 장치 및 방법
JP6651675B1 (ja) 画像情報処理装置、画像情報処理方法、及び画像情報処理プログラム
JP5563390B2 (ja) 画像処理装置およびその制御方法、及びプログラム
JP2012022413A (ja) 画像処理装置、画像処理方法、およびプログラム
JP2010182167A (ja) 画像処理装置および画像処理方法
JP7167756B2 (ja) 画像生成装置、画像生成プログラム、および画像生成方法
JP7448280B2 (ja) 画像処理装置、画像処理方法、プログラム及び記録媒体
JP7459151B2 (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200709

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210810

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: 20210824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210906

R150 Certificate of patent or registration of utility model

Ref document number: 6950436

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150