JP6414475B2 - コンピュータプログラム及び制御装置 - Google Patents

コンピュータプログラム及び制御装置 Download PDF

Info

Publication number
JP6414475B2
JP6414475B2 JP2015015091A JP2015015091A JP6414475B2 JP 6414475 B2 JP6414475 B2 JP 6414475B2 JP 2015015091 A JP2015015091 A JP 2015015091A JP 2015015091 A JP2015015091 A JP 2015015091A JP 6414475 B2 JP6414475 B2 JP 6414475B2
Authority
JP
Japan
Prior art keywords
image data
image
data
web page
area
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
JP2015015091A
Other languages
English (en)
Other versions
JP2016139360A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2015015091A priority Critical patent/JP6414475B2/ja
Publication of JP2016139360A publication Critical patent/JP2016139360A/ja
Application granted granted Critical
Publication of JP6414475B2 publication Critical patent/JP6414475B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Telephone Function (AREA)

Description

本発明は、ネットワークを介して取得したウェブページデータに基づいて画像データを生成するコンピュータプログラム、及び制御装置に関する。
従来、ウェブブラウザでの表示対象であるウェブページデータに基づいて、画像データを生成する技術が存在する。当該画像データは、例えば、印刷実行部を備える印刷装置にて印刷出力させることができる。ここで、当該画像データが表現する画像(即ち、ウェブページ)には、本来ユーザが出力を望まないことが想定される広告画像等の画像が含まれる場合がある。
特許文献1には、ウェブページの印刷実行時に、印刷対象ページのHTMLデータ中に広告URLリストに該当するリンクURLが存在しているか否かを判断し、広告URLリストに該当するリンクURLが存在していた場合に、該当URLが含まれるタグを除いてHTMLデータを再生成する方法が開示されている。
特開2007−257069号公報 特開2009−70169号公報
特許文献1の技術では、ウェブページの印刷実行時に、リンクURLが含まれるタグを除いたHTMLデータを生成することができる。しかしながら、特許文献1の技術では、予め、リンクURLを広告URLリストに登録しておく必要があるために、登録を行うべき管理者にとっての負担が大きかった。
本発明は、上記のような事情に基づいて完成されたものであって、ウェブページ内の不要画像を削除する際の負担を軽減しつつ、不要画像を適切に除去できる技術を提供することを目的とする。
上記課題を解決するために、本発明のコンピュータプログラムは、コンピュータに、ウェブページデータ取得処理と、画像データ生成処理と、差分領域特定処理と、出力データ生成処理と、を実行させる。ウェブページデータ取得処理は、ネットワークを介して、ウェブサーバ内でウェブページデータが格納される格納位置を示すアドレスを利用してウェブページデータを取得する。画像データ生成処理は、当該アドレスを利用して取得されるウェブページデータに基づいて、第1の画像データと第2の画像データとを生成する。差分領域特定処理は、第1の画像データと第2の画像データとに基づいて、第1の画像データと第2の画像データとで互いに異なる部分である差分領域を特定する。出力データ生成処理は、第1の画像データによって表現される第1の画像、又は、第2の画像データによって表現される第2の画像から、差分領域に対応する差分領域画像を除いた画像である出力画像を表現する出力データを生成する。
上記の構成によると、本発明のコンピュータプログラムは、特定のアドレスを利用して取得されるウェブページデータに基づいて生成される、2つの画像データの差分を特定し、特定された差分領域画像を除く出力画像を表現する出力データを生成する。例えば、ウェブページ内に含まれる広告画像は、ウェブページデータが再度読み込まれ(例えば、ウェブページデータが更新され)、描画し直されることによって、画像の内容が変化することが想定される。したがって、本発明のコンピュータプログラムは、ウェブページから広告画像等の不要な画像を適切に除去することができる。
また、上記のコンピュータプログラムでは、ウェブページデータ取得処理が、第1のウェブページデータを取得し、第1のウェブページデータを取得した後に、第1のウェブページデータが格納されるアドレスと同一のアドレスを利用して、第2のウェブページデータを取得してもよい。さらに、画像データ生成処理が、第1のウェブページデータに基づいて、第1の画像データを生成し、第2のウェブページデータに基づいて、第2の画像データを生成してもよい。
これによって、第1の画像データと第2の画像データは、それぞれ、第1のウェブページデータと第2のウェブページデータに基づいて生成される。第1のウェブページデータに含まれる内容(即ち、ソースコード)と第2のウェブページデータに含まれる内容とに差分が存在する場合は、生成される第1の画像データと第2の画像データにも差分が存在する可能性が高い。したがって、ウェブページデータに差分が存在することに起因する画像データの差分領域を特定することができる。
また、上記のコンピュータプログラムでは、第1の画像データと、第2の画像データとは、それぞれ、ラスタ形式で表現され、画像データ内の複数の画素のそれぞれが階調値を持つ画像データであってもよい。さらに、コンピュータに、差分修正処理を実行させ、差分修正処理が、差分領域画像の外周を構成する外周画素を検出し、外周画素に囲まれる領域を全て差分領域に修正してもよい。
これによって、第1の画像データと第2の画像データの差分領域内の外周画素に囲まれる画素に差分がない画素が存在しても、画素は差分領域に修正される。したがって、不要画像を表す画像データ内のいくつかの画素に差分が存在しなかった場合にも、不要画像の抽出の精度を向上させることができる。
本発明のコンピュータプログラムは、ウェブページデータ取得処理が、差分領域が特定の条件を満たす場合に、前記アドレスと同一のアドレスを利用して第3のウェブページデータをさらに取得してもよい。さらに、画像データ生成処理が、第3のウェブページデータに基づいて、第3の画像データを生成してもよい。さらに、差分領域特定処理が、第1の画像データ又は第2の画像データと、第3の画像データとで、互いに異なる部分を差分領域として特定してもよい。
これによって、第1の画像データ、第2の画像データだけでなく、更に第3の画像データを用いて差分領域を特定する。したがって、例えば、第1の画像データと第2の画像データとで同じ不要画像が表示された場合に、不要画像の抽出の精度を向上させることができる。
本発明のコンピュータプログラムは、ウェブページデータ取得処理が、特定の条件として、差分領域画像が矩形でない場合に、第3のウェブページデータを取得してもよい。
これによって、差分領域画像が矩形でない場合は新たなウェブページデータが取得される。例えば、不要画像は矩形であることが多く、差分領域画像が矩形でない場合は、不要画像であってもいくつかの画素に差分が存在しなかった可能性が高い。したがって、新たなウェブページデータを取得して差分領域を再度特定することで、不要画像の抽出の精度を向上させることができる。
本発明のコンピュータプログラムは、さらに、コンピュータに、プレビュー画像生成処理と、修正指示取得処理と、を実行させ、プレビュー画像生成処理が、第1の画像データ又は第2の画像データにおいて、差分領域に対応する領域を削除対象領域に設定し、第1の画像データ又は第2の画像データと、削除対象領域と、に基づいたプレビュー画像を表現するプレビュー画像データを生成し、修正指示取得処理が、ユーザの指示に基づいて、プレビュー画像の修正を指示する修正指示情報を取得してもよい。さらに、出力データ生成処理が、修正指示情報が、プレビュー画像内の削除対象領域のうちのユーザが指定する第1の指定領域を、削除対象領域に設定しないことを示す場合に、第1の指定領域が示す画像が、第1の画像又は第2の画像内の第1の指定領域から除かれない画像を表現する出力データを生成してもよい。
これによって、例えば、ユーザは、プレビュー画像データにおいて、コンピュータプログラムが差分領域に基づいて削除対象に設定した領域を指定し、当該領域の画像を削除対象に設定しない旨を、コンピュータに指示することができる。したがって、ユーザの意図を反映した出力データを生成することができる。
本発明のコンピュータプログラムは、さらに、コンピュータに、プレビュー画像生成処理と、修正指示取得処理と、を実行させ、プレビュー画像生成処理が、第1の画像データ又は第2の画像データにおいて、差分領域に対応する領域を削除対象領域に設定し、第1の画像データ又は第2の画像データと、削除対象領域と、に基づいたプレビュー画像を表現するプレビュー画像データを生成し、修正指示取得処理が、ユーザの指示に基づいて、プレビュー画像の修正を指示する修正指示情報を取得してもよい。さらに、出力データ生成処理が、修正指示情報が、プレビュー画像内の削除対象領域とは異なる領域のうちのユーザが指定する第2の指定領域を、新たに削除対象領域として設定することを示す場合に、第2の指定領域が示す画像が、第1の画像又は第2の画像内の指定領域から除かれた画像を表現する出力データを生成してもよい。
これによって、例えば、ユーザは、プレビュー画像データにおいて、コンピュータプログラムが差分領域に基づいて削除対象に設定していない領域を指定し、該当領域の画像を削除対象に設定する旨を、コンピュータに指示することができる。したがって、ユーザの意図を反映した出力データを生成することができる。
さらに、本発明のコンピュータプログラムがインストールされた制御装置、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記憶媒体も新規で有用である。また、上記の制御装置を備える可搬型の端末装置も新規で有用である。
通信システムの構成図である。 ウェブページ印刷処理のフローチャートである。 差分領域修正処理のフローチャートである。 差分領域修正処理の概略図である。 プレビュー画面を示す図である。 プレビュー画像データを示す図である。 差分精度向上処理のフローチャートである。 差分精度向上処理の概略図である。 ユーザ指定修正処理のフローチャートである。
(A.実施例)
図1〜9を参照して実施例を説明する。図1は、本発明のプログラムによって携帯端末装置がウェブページを印刷する際の通信システムの構成図である。図1に示されるように、通信システム2は、携帯端末装置10と、プリンタ60と、ウェブサーバ72と、を備える。携帯端末装置10とプリンタ60とは、ネットワーク50を介して、通信可能に接続されている。ネットワーク50は、ローカルエリアネットワーク(LAN)であり、アクセスポイント(AP)52と、ネットワークケーブル54と、を備える。ネットワーク50は、インターネット70に接続されている。ウェブサーバ72は、インターネット70に接続されている。携帯端末装置10は、AP52を介して、ネットワーク50に無線接続されることが可能である。この場合には、携帯端末装置10は、ネットワーク50を介して、プリンタ60と通信可能であり、さらに、ネットワーク50及びインターネット70を介して、ウェブサーバ72と通信可能である。
(A−1.携帯端末装置10の構成)
携帯端末装置10は、ユーザが容易に持ち運ぶことができる端末装置(即ち可搬型の端末装置)である。携帯端末装置10は、例えば、携帯電話、タブレットPC等である。携帯端末装置10は、ディスプレイ12と、通信インターフェース(通信I/F)16と、制御部20と、を備える。ディスプレイ12,通信インターフェース(通信I/F)16,制御部20は、バス線18に接続されている。通信I/F16は、携帯端末装置10が無線通信を実行するためのI/Fである。ディスプレイ12は、画像を表示する装置であり、例えば、液晶ディスプレイである。ディスプレイ12は、ユーザによる操作を受け入れるためのタッチパネルとしても機能する。
制御部20は、CPU22と、ROM24と、RAM26と、NVRAM28と、を備える。CPU22は、書き換え可能な不揮発性メモリであるNVRAM28に格納されるプログラム30をRAM26に読み込むことによって、後述するウェブページ印刷処理を実行する。本実施例では、プログラム30は、携帯端末装置10のオペレーティングシステム上で動作するアプリケーションプログラムである。プログラム30は、例えば、プリンタ60のベンダによって提供されるサーバからダウンロードされることによって、携帯端末装置10にインストールされる。なお、本実施例に代えて、プログラム30は、携帯端末装置10の出荷段階において、携帯端末装置10に予めインストールされていてもよいし、CD等の記憶媒体(メディア)から携帯端末装置10にインストールされてもよい。
(A−2.プログラム30の処理)
図2を参照して、携帯端末装置10にインストールされているプログラム30に従って実行される、ウェブページ印刷処理の内容について説明する。図2は、ウェブページ印刷処理のフローチャートである。ユーザは、ディスプレイ12のタッチパネルを操作し、ウェブページの印刷を選択することによって、ウェブページ印刷処理を開始する指示を携帯端末装置10に与えることができる。この指示が与えられた場合に、図2の処理が開始される。
まず、S100において、CPU22は、ユーザによって指定されたウェブサーバ72のアドレス(URL)にアクセスして、ウェブサーバ72からHTMLデータML1を取得する。
次に、S200において、CPU22は、HTMLデータML1から、画像データIMG1を生成する。具体的には、CPU22は、HTMLデータML1で定義されている描画コマンドにしたがって、各画素に0〜255のRGB値が付与された画像データIMG1を生成する。生成された画像データIMG1は、RAM26に記憶される。
ここで、画像データIMG1は、描画コマンドにしたがって描画された(ラスタライズされた)ラスタ形式で表現されるビットマップデータである。なお、変形例では、画像データIMG1はJPEGデータであってもよい。
次に、S400において、CPU22は、S200と同様の手法で、HTMLデータML1にしたがって、各画素に0〜255のRGB値が付与された画像データIMG2を生成する。生成された画像データIMG2は、RAM26に記憶される。
ここでは、画像データIMG2を生成するために、新たにHTMLデータは取得せず、画像データIMG1を生成する際に用いたHTMLデータML1にしたがって画像データIMG2を生成する。これによって、HTMLデータを取得する回数が減るため、携帯端末装置10とウェブサーバ72の間での通信を減らすことができる。
ただし、HTMLデータから画像データを生成する際には、HTMLデータ中の画像の描画命令を指示するタイミングにより、描画される画像(すなわち、取得される広告画像)が異なる場合がある。よって、画像データIMG1と画像データIMG2とを、それぞれ、HTMLデータML1に基づいて生成しても、画像データIMG1と画像データIMG2とでは異なる画像が描画されている可能性がある。
次に、S500において、CPU22は、画像データIMG1と画像データIMG2との差分画像データDIMG1を生成する。差分画像データDIMG1は、以下の通りに生成される。まず、画像データIMG1の特定の画素のRGB値と、画像データIMG1の特定の画素と同じ座標にある画像データIMG2の画素のRGB値の差を算出する。算出されたRの値の差、Gの値の差、Bの値の差が、すべて0であった場合は、差分画像データDIMG1の対応する座標にある画素の画素値が0に設定される。算出されたRの値の差、Gの値の差、Bの値の差のうち、少なくとも一つが0でなかった場合は、画素の画素値が1に設定される。上記の処理を画像データIMG1と画像データIMG2とのすべての画素について行い、差分画像データDIMG1のすべての画素値を算出する。これによって、各画素が1又は0の二階調の画素値を持つ差分画像データDIMG1が生成される。
次に、S600において、CPU22は、差分画像データDIMG1の各画素の画素値から、画像データIMG1と画像データIMG2に差分が存在するかを判断する。すなわち、差分画像データDIMG1内に、画素値が1で示される画素が存在するか否かを判断する。上述したとおり、画像データIMG1と画像データIMG2に差分が存在する場合、差分画像データDIMG1の少なくとも一つの画素の画素値は1を示す。画像データIMG1と画像データIMG2に差分が存在しない場合、差分画像データDIMG1のすべての画素の画素値は0を示す。
S600で、差分画像データDIMG1のすべての画素の画素値が0だった場合(S600でNo)、CPU22は、画像データIMG1と画像データIMG2に差分が存在しないと判断し、S1000へ移る。
一方、S600で、差分画像データDIMG1の少なくとも一つの画素の画素値が1だった場合(S600でYes)、CPU22は、画像データIMG1と画像データIMG2に差分が存在すると判断し、S700へ移る。
S700において、CPU22は、差分画像データDIMG1に対して、差分領域修正処理を実行する。具体的には、図3を参照して説明する。
図3は、差分領域修正処理のフローチャートである。まず、S705で、CPU22は、差分画像データDIMG1の画素をラベリングする。ラベリングは、同じ画素値を持つ画素が連続している領域において、領域内の画素に領域ごとに異なる識別子(ラベル)を付与する処理である。
図4は、差分領域修正処理の概略図である。図4(a)を参照して、ラベリング処理の概要を説明する。CPU22は、まず、差分画像データDIMG1のすべての画素のラベルを0に設定する。次に、差分画像データDIMG1の画素を左上から順に、横方向に走査し、画素値が1である画素Lpi1を検出する。検出された画素Lpi1の上に隣接する画素Npi1と、左に隣接する画素Npi2のラベルを参照し、ラベルがどちらも0の場合(図4(a)の画素Lpi1)は、最後に割り振ったラベルに1を加えた数を付与する。左に隣接する画素と上に隣接する画素とのどちらか一方、または、両方に1以上のラベルが付与されている場合(図4(a)の画素Lpi2)は、検出された画素に、隣接した画素に付与されている1以上のラベルと同一のラベルを付与する。上記の処理を繰り返し、差分画像データDIMG1のすべての画素にラベルを付与する。同じラベルが付与された画素の集まりを差分領域と呼ぶ。
次にS710において、CPU22は、差分領域の外周を構成する外周画素Opiを検出する。図4(a)を参照して、外周画素の検出方法について説明する。CPU22は、差分画像データDIMG1の画素を左上から順に、横方向に走査し、ラベルが付与された画素Lpi1を検出する。検出された画素Lpi1に隣接する8の画素のうち、画素Lpi1の左下に隣接する画素から順に、反時計回りに探索して、最初に画素Lpi1と同じラベルが付与された画素Lpi2を検出する。画素Lpi2が検出されたら、画素Lpi2に対して、画素Lpi1での処理と同様に、画素Lpi2と同じラベルが付与された画素Lpi3を検出する。上記の処理を繰り返し、検出された画素が画素Lpi1であれば、検出された複数の画素を差分領域の外周画素Opiとする。これにより、同一ラベルが付与された領域について、外周画素Opiの特定が完了する。CPU22は、同様にして差分画像データDIMG1内で1以上のラベルが付与されている全ての差分領域について、外周画素Opiを検出する。
次にS715において、CPU22は検出された外周画素Opiの内側に存在する図4の画素iLpiに、外周画素Opiのラベルと同じラベルを付与し直す。図4(b)は、差分領域にラベルが付与し直された差分画像データDIMG1を示す。これにより、差分領域を修正する。S715が終了すると、差分領域修正処理が終了する。
次に、S800において、CPU22は、差分領域が矩形であるかを判断する。まず、差分領域に外接する矩形を求める。具体的には、図4(b)を参照して説明する。まず、差分画像データDIMG1の、1のラベルが付与された差分領域に対して、差分領域に含まれる画素の座標から、最大のxの値xmax,yの値ymaxと、最小のxの値xmin,yの値yminを求める。求めた座標を用いた、(xmax,ymax)、(xmax,ymin)、(xmin,ymax)、(xmin,ymin)を頂点とする矩形をラベル1が付与された差分領域の外接矩形とする。次に、外接する矩形の画素数と、差分領域の画素数と、をそれぞれ算出する。外接する矩形の画素数と差分領域の画素数が等しければ、差分領域が矩形であると判断する。各差分領域のそれぞれについて上記の処理を実行し、ラベルが付与されたすべての差分領域に対して、差分領域が矩形であるか否かを判断する。
S800において、差分画像データDIMG1内に存在する差分領域に一つでも矩形でないものが存在した場合(S800でNo)、S900へ移る。
S900において、CPU22は、差分精度向上処理を実行する。この処理では、CPU22は、新たに取得したHTMLデータML3と、HTMLデータML1とで差分画像データDIMG2を生成し、差分領域を特定する(詳細は後述)。差分精度向上処理が終了すると、S1000へ移る。
一方、S800において、差分画像データDIMG1内に存在する差分領域がすべて矩形であった場合(S800でYes)は、S1000へ移る。
S1000において、CPU22は、画像データIMG1と差分画像データDIMG1内の差分領域に基づき、プレビュー画像データPIMGを生成する。具体的には、画像データIMG1において、差分画像データDIMG1内の差分領域に対応する領域を削除対象領域に設定する。このとき、削除対象領域内の画素にフラグを付与する。上記の処理を実行することにより、画像データIMG1の、すべての削除対象領域内の画素にフラグが付与されたプレビュー画像データPIMGを生成する。ただし、S600において、画像データIMG1と画像データIMG2に差分が存在しないと判断された場合は、S1000では、画像データIMG1がプレビュー画像データPIMGとして生成される。なお、変形例では、画像データIMG2がプレビュー画像データとして用いられてもよい。
次に、S1100において、CPU22は、プレビュー画像データPIMGによって表現されるプレビュー画像をディスプレイ12へ表示する。
図5は、プレビュー画面を示す図である。ここで、CPU22は、プレビュー画像データPIMGのフラグが付与されている画素に対し、表示の際に網掛けされるように設定する。削除対象領域内の画素にはフラグが付与されているため、ディスプレイ12では、削除対象領域内の削除対象画像が網掛けされたプレビュー画像が表示される。
プレビュー画面SCは、画像データ領域PIMGRと、ボタンBT1〜BT3と、を含む。ボタンBT1は、プレビュー画像内で未だ差分として特定されていない領域をさらに削除することを指示するためのものである。ボタンBT2は、プレビュー画像内で既に差分として特定されている領域を削除対象としない(復元する)ことを指示するためのものである。ボタンBT3は、プレビュー画像を印刷することを指示するためのものである。
次に、S1200において、CPU22は、ユーザから、プレビュー画像データPIMGの一部を修正する指示を受け付ける。ユーザは、ディスプレイ12を操作することによって、プレビュー画像中の修正すべき部分画像を指定し、ボタンBT1またはBT2を押下することによって、部分画像に対する修正内容を指示することができる。CPU22は、ユーザからの指示を取得した場合、すなわち、ボタンBT1またはボタンBT2にて削除または復元が指示された場合(S1200でYes)は、S1300へ移る。
S1300において、CPU22は、ユーザ指定修正処理を実行する。この処理では、CPU22は、ユーザによって指定された部分画像に対応する、プレビュー画像データPIMGの部分画像データ領域内の部分画像データを修正する(詳細は後述)。ユーザ指定修正処理が終了すると、S1100へ移り、修正済みのプレビュー画像データPIMGに従ったプレビュー画像をディスプレイ12へ表示する。
一方、S1200で、ユーザ指示を取得しなかった場合(S1200でNo)、換言すれば、ボタンBT3にて印刷が指示された場合は、S1400へ移る。
S1400において、CPU22は、プレビュー画像データPIMGから削除対象領域を除いた出力データを生成する。具体的には、プレビュー画像データPIMGにおいて削除対象とされた削除対象領域に含まれる画素の画素値を、画像データIMG1の背景の画素値に置換する。画像データIMG1の背景の画素値は、例えば、背景の画素であることが推測される(換言すれば、HTMLデータ内のいずれかのコマンドにしたがって描画されない)画像データIMG1の左上の画素の画素値とする。これによって、削除対象領域に含まれる画素が背景と同じ画素値を持つ出力データを生成する。
次に、S1500において、CPU22は、プリンタ60へ印刷指示を送る。具体的には、CPU22は、出力データに含まれる各画素に対して、RGB値をCMYK値に変換する色変換処理を実行する。これによって、各画素に0〜255のCMYK値が付与されたCMYK出力データを生成する。次に、CPU22は、CMYK出力データに対して、二値化処理を実行する。二値化処理には、例えば、ディザ法や誤差拡散法が用いられる。これによって、各画素が、1又は0の二階調の画素値を持つ印刷データを生成する。ここで、1は、印刷媒体上にドットを形成することを示し、0は、印刷媒体上にドットを形成しないことを示す。そして、CPU22は、生成された印刷データをプリンタ60へ供給する。
(A−2−1.S900の処理)
図7を参照して、差分精度向上処理の内容を説明する。図7は、差分精度向上処理のフローチャートである。
まず、S905で、CPU22は、ウェブサーバ72のHTMLデータML1のアドレスと同じアドレスにアクセスして、HTMLデータML3を取得する。
次に、S910において、CPU22は、HTMLデータML3から、各画素に0〜255のRGB値が付与された画像データIMG3を生成する。生成された画像データIMG3は、RAM26に記憶される。
次に、S915において、CPU22は、S500(図2)と同様にして、画像データIMG2と画像データIMG3との差分画像データDIMG2を生成する。
次に、S920において、CPU22は、差分画像データDIMG1と、差分画像データDIMG2の論理和に基づき、差分画像データDIMG3を生成する。具体的には、図8を参照して説明する。
図8は、差分精度向上処理の概略図である。CPU22は、差分画像データDIMG1の特定の画素の画素値Dpi1の画素値と、差分画像データDIMG1の特定の画素と対応する位置に存在する差分画像データDIMG2の画素Dpi2の画素値と、の論理和に基づき、画素Dpi3の画素値を決定する。具体的には、画素Dpi1と画素Dpi2とで、画素値がお互いに0であった場合は、画素Dpi3の画素値を0とする。画素Dpi1と画素Dpi2とで、少なくとも一方の画素値が1であった場合は、画素Dpi3の画素値を1とする。上記の処理を繰り返し、差分画像データDIMG3のすべての画素の画素値を算出する。これによって、差分画像データDIMG3を生成する。
次に、S700において、CPU22は、差分画像データDIMG3に対して、前述した差分領域修正処理を実行する。
次に、S925において、CPU22は、差分領域が矩形であるかを判断する。判断方法はS800(図2)と同様である。
S925において、差分画像データDIMG3内に存在する差分領域がすべて矩形であった場合(S925でYes)は、差分精度向上処理を終了する。
一方、S925において、差分画像データDIMG3内に存在する差分領域に一つでも矩形でないものが存在した場合(S925でNo)、S930へ移る。
S930において、CPU22は、差分画像データDIMG1と差分画像データDIMG3に差分が存在するかを判断する。具体的には、差分画像データDIMG1の特定の画素の画素値と、差分画像データDIMG1の特定の画素と同じ座標にある差分画像データDIMG3の画素の画素値と、の差を算出する。上記の処理を繰り返し、各画素に対してRGB値の差を算出する。算出された画素値の差が、すべての画素で0であった場合は、差分画像データDIMG1と差分画像データDIMG3に差分が存在しないと判断する。そうでない場合は、差分画像データDIMG1と差分画像データDIMG3に差分が存在すると判断する。
S930で、CPU22は、差分画像データDIMG1と差分画像データDIMG3に差分が存在しないと判断した場合(S930でNo)、差分精度向上処理を終了する。
一方、S930で、CPU22は、差分画像データDIMG1と差分画像データDIMG3に差分が存在すると判断した場合(S930でYes)、S935に移る。
S935において、CPU22は、差分画像データDIMG3を差分画像データDIMG1に置き換える。
次に、S940において、CPU22は、画像データIMG3を、画像データIMG2に置き換える。
次に、S945において、CPU22は、差分画像データDIMG3が所定回数生成されたかを判断する。例えば、所定回数を3回とする。CPU22は、差分画像データDIMG3が所定回数生成されたと判断した場合(S945でYes)、差分精度向上処理を終了する。
一方、S945で、CPU22は、差分画像データDIMG3が所定回数生成されていないと判断した場合(S945でNo)、S905に移り、新たなHTMLデータを取得する。
(A−2−2.S1300の処理)
図9を参照して、ユーザ指定修正処理の内容を説明する。図9は、ユーザ指定修正処理のフローチャートである。
まず、S1305で、CPU22は、ユーザによって指定された部分画像のプレビュー画面SC上の座標を、プレビュー画像データPIMG内の座標に変換する。具体的には、図5と図6を参照して説明する。
図5は、プレビュー画面を示す図である。図6は、プレビュー画像データを示す図である。CPU22は、まず、プレビュー画面SCにおいてプレビュー画像を表示する画像データ領域PIMGRの、縦の辺の画素数L1と、横の辺の画素数L2を特定する。次に、RAM26からプレビュー画像データPIMGの縦の辺の画素数L11と、横の辺の画素数L12を取得する。次に、L1とL11から、プレビュー画像データPIMGに対する、画像データ領域PIMGRに表示されるプレビュー画像の拡大・縮小率を算出する。そして、プレビュー画面SCにおける画像データ領域PIMGRの左上の座標(x0,y0)と、プレビュー画面SCにおける部分画像の左上の座標(x1,y1)と、算出した拡大・縮小率とに基づき、プレビュー画像データPIMGにおける部分画像の左上の座標(x11,y11)を算出する。同様にして、プレビュー画面SCにおける画像データ領域PIMGRの左上の座標(x0,y0)と、プレビュー画面SCにおける部分画像の右下の座標(x2,y2)と、算出した拡大・縮小率とに基づき、プレビュー画像データPIMGにおける部分画像の右下の座標(x12,y12)も算出する。
なお、画像データ領域PIMGRにおいて、プレビュー画像がスクロールされて表示されていた場合は、画像データ領域PIMGRの左上の座標(x0,y0)にスクロールした距離を加えて、プレビュー画像データPIMGにおける部分画像の左上の座標(x11,y11)と右下の座標(x12,y12)とを算出する。
次に、S1310において、ユーザの指示する修正内容が復元である場合(S1310でYes)は、S1315へ移る。
S1315では、CPU22は、ユーザによって指定された部分画像を表現する部分画像データを削除対象に設定しないプレビュー画像データPIMGを生成する。具体的には、プレビュー画像データPIMGの(x11,y11)、(x11,y12)、(x12,y11)、(x12,y12)で囲まれる領域の各画素に付与されたフラグを外す。これによって、部分画像データ領域が削除対象領域に設定されないプレビュー画像データPIMGを生成する。S1315の処理が終了すると、ユーザ指定修正処理を終了する。
一方、S1310において、ユーザの指示する修正内容が削除である場合(S1310でNo(削除))は、S1320へ移る。
S1320では、CPU22は、ユーザによって指定された部分画像を表現する部分画像データを削除対象に設定したプレビュー画像データPIMGを生成する。具体的には、プレビュー画像データPIMGの(x11,y11)、(x11,y12)、(x12,y11)、(x12,y12)で囲まれる領域を削除対象領域に設定する。このとき、削除対象領域内の画素にフラグを付与する。上記の処理を実行することにより、画像データIMG1の、すべての削除対象領域内の画素にフラグが設定されたプレビュー画像データPIMGを生成する。S1320の処理が終了すると、ユーザ指定修正処理を終了する。
以上説明したように、本実施例では、特定のアドレスを利用して取得されるHTMLデータML1に基づき生成される、画像データIMG1と、画像データIMG2との差分を特定し、特定された差分領域画像を除く出力画像を表現する出力データを生成する。例えば、ウェブページ内に含まれる広告画像は、HTMLデータが再度読み込まれ、描画し直されることによって、画像の内容が変化することが想定される。したがって、コンピュータプログラムは、ウェブページから広告画像等の不要な画像を適切に除去することができる。
(対応関係)
プログラム30が「コンピュータプログラム」の一例である。HTMLデータML1が、「第1のウェブページデータ」の一例であり、HTMLデータML3が、「第2のウェブページデータ」、「第3のウェブページデータ」の一例である。画像データIMG1〜3が、それぞれ、「第1の画像データ」、「第2の画像データ」、「第3の画像データ」の一例である。部分画像データ領域が、「第1の指定領域」と「第2の指定領域」の一例である。
図2のS100が、「ウェブページデータ取得処理」の一例である。S200とS400が、「画像データ生成処理」の一例である。S500〜S900が、「差分領域特定処理」の一例であり、その中でも、S700が「差分領域修正処理」の一例である。S1400が、「出力データ生成処理」の一例である。S1200が、「修正指示取得処理」の一例である。
(変形例1)
上記の実施例では、「ウェブページデータ」のデータ形式として、HTMLを採用しているが、それに代えて、XHTML形式のウェブページデータを採用してもよい。一般的には、ウェブページデータは、マークアップ言語を用いて記述されたデータであればよい。
(変形例2)
上記の実施例では、図2のS800や図7のS925において、差分領域が矩形でない場合に、新たにHTMLデータML3を取得したが、それに代えて、ユーザの指示に基づいて、HTMLデータML3を取得してもよい。
(変形例3)
上記の実施例では、図3の差分領域修正処理において、外周画素Opiの内側に存在する画素iLpiに、外周画素Opiのラベルと同じラベルを付与し直すことによって、差分領域を修正したが、それに代えて、既に差分として特定済みの画素の近傍8画素の画素値に基づいて差分領域を修正してもよい。
(変形例4)
上記の実施例では、図9のS1315において、プレビュー画像データPIMGの画素を画像データIMG1の画素に置換したが、それに代えて、プレビュー画像データPIMGの画素を画像データIMG2の画素や画像データIMG3の画素に置換してもよい。
(変形例5)
上記の実施例では、図2のS400において、画像データIMG2を、画像データIMG1を生成する際に取得した(換言すれば、すでに取得済みの)HTMLデータML1に基づいて生成し、図7のS910において、画像データIMG3を、新たに取得したHTMLデータML3に基づいて生成した。しかし、それに代えて、画像データIMG2を、新たに取得したHTMLデータML2に基づいて生成し、画像データIMG3を、すでに取得済みのHTMLデータML1またはHTMLデータML2に基づいて生成してもよい。
また、画像データIMG2と画像データIMG3とを、すでに取得済みのHTMLデータML1に基づいて生成してもよい。
また、画像データIMG2と画像データIMG3とを、それぞれ、新たに取得したHTMLデータML2、HTMLデータML3に基づいて生成してもよい。この場合は、HTMLデータML1〜3が、それぞれ、「第1のウェブページデータ」、「第2のウェブページデータ」、「第3のウェブページデータ」に対応する。
(変形例6)
なお、上記の実施例の各処理は、携帯端末装置10のCPU22がソフトウェア(すなわちプログラム26)にしたがって処理を実行することによって実現されるが、それに代えて、論理回路等のハードウェアによって実現されてもよい。
以上、本発明の具体例について、詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
10:携帯端末装置、12:ディスプレイ、22:CPU、26:プログラム、Lpi1,Lpi2,Lpi3,iLpi,Npi1,Npi2,Dpi1,Dpi2,Dpi3,Opi:画素、DIMG1,DIMG2,DIMG3:差分画像データ、PIMG:プレビュー画像データ、SC:プレビュー画面、PIMGR:画像データ領域

Claims (7)

  1. コンピュータに、
    ネットワークを介して、ウェブサーバ内でウェブページデータが格納される格納位置を示すアドレスを利用してウェブページデータを取得するウェブページデータ取得処理と、
    前記アドレスを利用して取得されるウェブページデータに基づいて、第1の画像データと第2の画像データとを生成する画像データ生成処理であって、前記第1の画像データと、前記第2の画像データとは、それぞれ、ラスタ形式で表現される画像データであって、画像データ内の複数の画素のそれぞれが階調値を持つ画像データである、前記画像データ生成処理と、
    前記第1の画像データと前記第2の画像データとに基づいて、前記第1の画像データと前記第2の画像データとで互いに異なる部分である差分領域を特定する差分領域特定処理と、
    前記差分領域画像の外周を構成する外周画素を検出し、前記外周画素に囲まれる領域を全て前記差分領域に修正する差分領域修正処理と、
    前記第1の画像データによって表現される第1の画像、又は、前記第2の画像データによって表現される第2の画像から、修正済みの前記差分領域に対応する差分領域画像を除いた画像である出力画像を表現する出力データを生成する出力データ生成処理と、
    を実行させる、コンピュータプログラム。
  2. コンピュータに、
    ネットワークを介して、ウェブサーバ内でウェブページデータが格納される格納位置を示すアドレスを利用してウェブページデータを取得するウェブページデータ取得処理と、
    前記アドレスを利用して取得されるウェブページデータに基づいて、第1の画像データと第2の画像データとを生成する画像データ生成処理と、
    前記第1の画像データと前記第2の画像データとに基づいて、前記第1の画像データと前記第2の画像データとで互いに異なる部分である差分領域を特定する差分領域特定処理と、
    前記第1の画像データによって表現される第1の画像、又は、前記第2の画像データによって表現される第2の画像から、前記差分領域に対応する差分領域画像を除いた画像である出力画像を表現する出力データを生成する出力データ生成処理と、
    を実行させ
    前記ウェブページデータ取得処理は、前記差分領域が特定の条件を満たす場合に、前記アドレスと同一のアドレスを利用して第3のウェブページデータをさらに取得し、
    前記画像データ生成処理は、前記第3のウェブページデータに基づいて、第3の画像データを生成し、
    前記差分領域特定処理は、前記第1の画像データ又は前記第2の画像データと、前記第3の画像データとで、互いに異なる部分を前記差分領域として特定する、コンピュータプログラム。
  3. 請求項に記載のコンピュータプログラムであって、
    前記ウェブページデータ取得処理は、前記特定の条件として、前記差分領域画像が矩形でない場合に、前記第3のウェブページデータを取得する、コンピュータプログラム。
  4. コンピュータに、
    ネットワークを介して、ウェブサーバ内でウェブページデータが格納される格納位置を示すアドレスを利用してウェブページデータを取得するウェブページデータ取得処理と、
    前記アドレスを利用して取得されるウェブページデータに基づいて、第1の画像データと第2の画像データとを生成する画像データ生成処理と、
    前記第1の画像データと前記第2の画像データとに基づいて、前記第1の画像データと前記第2の画像データとで互いに異なる部分である差分領域を特定する差分領域特定処理と、
    前記第1の画像データ又は前記第2の画像データにおいて、前記差分領域に対応する領域を削除対象領域に設定し、前記第1の画像データ又は前記第2の画像データと、前記削除対象領域と、に基づいたプレビュー画像を表現するプレビュー画像データを生成するプレビュー画像データ生成処理と、
    ユーザの指示に基づいて、前記プレビュー画像の修正を指示する修正指示情報を取得す
    る、修正指示取得処理と、
    前記第1の画像データによって表現される第1の画像、又は、前記第2の画像データによって表現される第2の画像から、前記差分領域に対応する差分領域画像を除いた画像である出力画像を表現する出力データを生成する出力データ生成処理であって、前記修正指示情報が、前記プレビュー画像内の前記削除対象領域のうちのユーザが指定する第1の指定領域を、前記削除対象領域に設定しないことを示す場合に、前記第1の指定領域が示す画像が、前記第1の画像又は前記第2の画像内の前記第1の指定領域から除かれない画像を表現する前記出力データを生成する前記出力データ生成処理と、
    を実行させる、コンピュータプログラム。
  5. コンピュータに、
    ネットワークを介して、ウェブサーバ内でウェブページデータが格納される格納位置を示すアドレスを利用してウェブページデータを取得するウェブページデータ取得処理と、
    前記アドレスを利用して取得されるウェブページデータに基づいて、第1の画像データと第2の画像データとを生成する画像データ生成処理と、
    前記第1の画像データと前記第2の画像データとに基づいて、前記第1の画像データと前記第2の画像データとで互いに異なる部分である差分領域を特定する差分領域特定処理と、
    前記第1の画像データ又は前記第2の画像データにおいて、前記差分領域に対応する領域を削除対象領域に設定し、前記第1の画像データ又は前記第2の画像データと、前記削除対象領域と、に基づいたプレビュー画像を表現するプレビュー画像データを生成するプレビュー画像データ生成処理と、
    ユーザの指示に基づいて、前記プレビュー画像の修正を指示する修正指示情報を取得する、修正指示取得処理と、
    前記第1の画像データによって表現される第1の画像、又は、前記第2の画像データによって表現される第2の画像から、前記差分領域に対応する差分領域画像を除いた画像である出力画像を表現する出力データを生成する出力データ生成処理であって、前記修正指示情報が、前記プレビュー画像内の前記削除対象領域とは異なる領域のうちのユーザが指定する第2の指定領域を、新たに削除対象領域として設定することを示す場合に、前記第2の指定領域が示す画像が、前記第1の画像又は前記第2の画像内の前記第2の指定領域から除かれた画像を表現する前記出力データを生成する前記出力データ生成処理と、
    を実行させる、コンピュータプログラム。
  6. 請求項1から5のいずれか一項に記載のコンピュータプログラムであって、
    前記ウェブページデータ取得処理は、第1のウェブページデータを取得し、前記第1のウェブページデータを取得した後に、前記第1のウェブページデータが格納される前記アドレスと同一のアドレスを利用して、第2のウェブページデータを取得し、
    前記画像データ生成処理は、前記第1のウェブページデータに基づいて、前記第1の画像データを生成し、前記第2のウェブページデータに基づいて、前記第2の画像データを生成する、コンピュータプログラム。
  7. ネットワークを介して、ウェブサーバ内でウェブページデータが格納される格納位置を示すアドレスを利用してウェブページデータを取得するウェブページデータ取得手段と、
    前記アドレスを利用して取得されるウェブページデータに基づいて、第1の画像データと第2の画像データとを生成する画像データ生成手段であって、前記第1の画像データと、前記第2の画像データとは、それぞれ、ラスタ形式で表現される画像データであって、画像データ内の複数の画素のそれぞれが階調値を持つ画像データである、前記画像データ生成手段と、
    前記第1の画像データと前記第2の画像データとに基づいて、前記第1の画像データと前記第2の画像データとで互いに異なる部分である差分領域を特定する差分領域特定手段と、
    前記差分領域画像の外周を構成する外周画素を検出し、前記外周画素に囲まれる領域を全て前記差分領域に修正する差分領域修正手段と、
    前記第1の画像データによって表現される第1の画像、又は、前記第2の画像データによって表現される第2の画像から、修正済みの前記差分領域に対応する差分領域画像を除いた画像である出力画像を表現する出力データを生成する出力データ生成手段と、
    を備える、制御装置。
JP2015015091A 2015-01-29 2015-01-29 コンピュータプログラム及び制御装置 Active JP6414475B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015015091A JP6414475B2 (ja) 2015-01-29 2015-01-29 コンピュータプログラム及び制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015015091A JP6414475B2 (ja) 2015-01-29 2015-01-29 コンピュータプログラム及び制御装置

Publications (2)

Publication Number Publication Date
JP2016139360A JP2016139360A (ja) 2016-08-04
JP6414475B2 true JP6414475B2 (ja) 2018-10-31

Family

ID=56560223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015015091A Active JP6414475B2 (ja) 2015-01-29 2015-01-29 コンピュータプログラム及び制御装置

Country Status (1)

Country Link
JP (1) JP6414475B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6950436B2 (ja) * 2017-10-10 2021-10-13 富士通株式会社 画像キャプチャ用コンピュータプログラム、画像キャプチャ装置及び画像キャプチャ方法
KR102252053B1 (ko) * 2019-12-10 2021-05-14 네이버 주식회사 듀얼 스크린에서의 컨텐츠 중복을 배제하는 방법, 시스템, 및 컴퓨터 프로그램

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001043383A (ja) * 1999-07-29 2001-02-16 Oki Electric Ind Co Ltd 画像監視システム
NO318991B1 (no) * 2002-09-05 2005-05-30 Opera Software Asa Presentasjon av HTML-innhold på en liten terminalskjerm
JP2007257069A (ja) * 2006-03-20 2007-10-04 Kyocera Mita Corp ウェブページ印刷方法,画像形成装置及び画像処理プログラム
JP2009070169A (ja) * 2007-09-13 2009-04-02 Ricoh Co Ltd 画像形成システム、情報処理装置、Webページ印刷支援方法、及びWebページ印刷支援プログラム
JP4626703B2 (ja) * 2008-10-28 2011-02-09 ソニー株式会社 情報処理装置、情報処理方法および情報処理プログラム
US8593666B2 (en) * 2009-02-11 2013-11-26 Hewlett-Packard Development Company, L.P. Method and system for printing a web page
JP2011081644A (ja) * 2009-10-08 2011-04-21 Seiko Epson Corp 画像形成処理システム、画像形成装置、及び画像形成データ生成プログラム
JP5962243B2 (ja) * 2012-06-18 2016-08-03 ブラザー工業株式会社 画像処理プログラムおよび画像処理方法

Also Published As

Publication number Publication date
JP2016139360A (ja) 2016-08-04

Similar Documents

Publication Publication Date Title
US7729013B2 (en) Image processing apparatus, image processing method, and computer program product
JPH11272871A (ja) 文書画像処理装置、文書画像処理方法、及び記録媒体
US8269791B2 (en) Information processing apparatus and method for processing a vector image composed of a plurality of objects described by structured document data
US10592766B2 (en) Image processing apparatus and medium storing program executable by image processing apparatus
JP2014191719A (ja) 画像処理装置、および、コンピュータプログラム
KR101869302B1 (ko) 래스터 이미지 변환 장치, 화상독취장치, 래스터 이미지 변환 방법 및 컴퓨터 판독가능 기록매체
JP3142550B2 (ja) 図形処理装置
JP5838984B2 (ja) 画像処理装置、および、コンピュータプログラム
JP5920293B2 (ja) 画像処理装置及びプログラム
JP5512903B1 (ja) 画像処理装置、画像処理方法、情報記憶媒体、及びプログラム
JP6414475B2 (ja) コンピュータプログラム及び制御装置
JP5293328B2 (ja) 画像処理装置及びプログラム
JP5867790B2 (ja) 画像処理装置
US20190098144A1 (en) Image processing apparatus and non-transitory computer readable medium for image processing
JP2016167192A (ja) 情報処理装置,画像読取装置,および画像表示方法
JP2003046746A (ja) 画像処理方法及び画像処理装置
JP4841457B2 (ja) 画像処理装置および画像処理プログラム
JP2006309622A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよび記録媒体
JP2014023006A (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP4125245B2 (ja) 文書表示方法および文書表示装置
JP4735212B2 (ja) 画像処理装置
JP2002279420A (ja) 画像処理方法、画像処理装置及びその装置での処理をコンピュータに行なわせるためのプログラムを格納した記憶媒体
JP5790000B2 (ja) 印刷装置、及び、その印刷方法
US8473856B2 (en) Information processing apparatus, information processing method, and information processing program
JP6700953B2 (ja) 情報処理装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180529

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180713

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180918

R150 Certificate of patent or registration of utility model

Ref document number: 6414475

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150