JP6163964B2 - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP6163964B2
JP6163964B2 JP2013173282A JP2013173282A JP6163964B2 JP 6163964 B2 JP6163964 B2 JP 6163964B2 JP 2013173282 A JP2013173282 A JP 2013173282A JP 2013173282 A JP2013173282 A JP 2013173282A JP 6163964 B2 JP6163964 B2 JP 6163964B2
Authority
JP
Japan
Prior art keywords
data
target
converted
pixel
feature
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
JP2013173282A
Other languages
English (en)
Other versions
JP2015041957A (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 JP2013173282A priority Critical patent/JP6163964B2/ja
Publication of JP2015041957A publication Critical patent/JP2015041957A/ja
Application granted granted Critical
Publication of JP6163964B2 publication Critical patent/JP6163964B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Editing Of Facsimile Originals (AREA)

Description

本明細書では、対象データに対して画像処理を実行する画像処理装置を開示する。
特許文献1には、副情報を主画像情報に重畳させる画像処理装置が開示されている。画像処理装置は、第1の副情報によって第1の色差格子パターンを変調して、第1の色差格子パターンを主画像情報に重畳させる。次いで、画像処理装置は、第2の副情報によって第2の色差格子パターンを変調して、第2の色差格子パターンを主画像情報にさらに重畳させる。
特開2008−252786号公報
本明細書では、対象データに対して新規な画像処理を実行して、面白味のある画像をユーザに提供し得る技術を開示する。
本明細書によって開示される画像処理装置は、対象データ取得部と、算出部と、変換部と、出力部と、を備える。対象データ取得部は、複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する。算出部は、複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データを算出する。変換部は、複数個の対象オブジェクトの複数個の特徴データを利用して対象データを変換して、変換済みデータを生成する。変換済みデータは、複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす。出力部は、変換済みデータを出力する。変換部は、複数個の対象オブジェクトのうちの第1の対象オブジェクトの特徴データが、第1の特徴を示す場合に、変換済み画像が、第1の対象オブジェクトに代えて、2色以上を示す第1の変換済みオブジェクトを含むように、対象データ内の第1の対象オブジェクトを表わす各第1画素の各画素値を変換し、複数個の対象オブジェクトのうち、第1の対象オブジェクトとは異なる第2の対象オブジェクトの特徴データが、第1の特徴とは異なる第2の特徴を示す場合に、変換済み画像が、第2の対象オブジェクトに代えて、単色を示す第2の変換済みオブジェクトを含むように、対象データ内の第2の対象オブジェクトを表わす各第2画素の各画素値を変換する。
上記の構成によると、画像処理装置は、対象画像に含まれる複数個の対象オブジェクトの複数個の特徴データを算出する。そして、画像処理装置は、複数個の特徴データを利用して対象データを変換して、複数個の変換済みオブジェクトを含む変換済み画像を表わす変換済みデータを生成する。特に、画像処理装置は、各対象オブジェクトが有する各特徴に応じて、2色以上を示す第1の変換済みオブジェクトと、単色を示す第2の変換済みオブジェクトと、を含む変換済み画像を表わす変換済みデータを生成して、当該変換済みデータを出力する。この結果、面白味のある画像をユーザに提供し得る。
上記の画像処理装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納する記録媒体も、新規で有用である。
前記画像処理装置は、さらに、
前記対象データを構成する複数個の対象画素のそれぞれについて、当該対象画素が、所定の濃度以上を有する注目画素であるのか否かを判断する判断部を備え、
2個以上の前記注目画素を複数個の画素グループに分類することによって、前記複数個の画素グループによって表わされる前記複数個の対象オブジェクトを決定するオブジェクト決定部と、を備えていてもよい。
前記算出部は、前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトを表わす画素数を含む前記特徴データを算出し、
前記変換部は、
前記第1の対象オブジェクトの前記特徴データに含まれる前記画素数が第1の閾値以上である場合に、前記第1の対象オブジェクトの前記特徴データが前記第1の特徴を示すと判断し、
前記第2の対象オブジェクトの前記特徴データに含まれる前記画素数が前記第1の閾値未満である場合に、前記第2の対象オブジェクトの前記特徴データが前記第2の特徴を示すと判断してもよい。
前記出力部は、前記変換済みデータを出力して、前記変換済み画像の印刷を印刷実行部に実行させ、
前記変換部は、
前記変換済み画像が印刷されるべき用紙のサイズが第1のサイズである場合に、第1の所定値を前記第1の閾値として利用し、
前記変換済み画像が印刷されるべき用紙のサイズが前記第1のサイズよりも大きい第2のサイズである場合に、前記第1の所定値よりも大きい第2の所定値を前記第1の閾値として利用してもよい。
前記算出部は、前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの密度を含む前記特徴データを算出し、
前記変換部は、
前記第1の対象オブジェクトの前記特徴データに含まれる前記密度が第2の閾値以上である場合に、前記第1の対象オブジェクトの前記特徴データが前記第1の特徴を示すと判断し、
前記第2の対象オブジェクトの前記特徴データに含まれる前記密度が前記第2の閾値未満である場合に、前記第2の対象オブジェクトの前記特徴データが前記第2の特徴を示すと判断してもよい。
前記画像処理装置は、さらに、
複数個の色を含む特定画像を表わす特定データを取得する特定データ取得部を備え、
前記変換部は、前記第1の対象オブジェクトの前記特徴データが前記第1の特徴を示す場合に、前記対象データ内の前記各第1画素の各位置に対応する前記特定データ内の各位置に存在する各対応画素の各画素値を抽出して、前記対象データ内の前記各第1画素の各画素値を、前記特定データ内の前記各対応画素の各画素値に一致する各値に変換してもよい。
前記変換部は、前記第2の対象オブジェクトの前記特徴データが前記第2の特徴を示す場合に、M個(前記Mは2以上の整数)の色の中から1個の色を選択して、前記各第2画素の前記各画素値の全てを、選択済みの前記1個の色を示す値に変換してもよい。
前記画像処理装置は、さらに、
複数個の色を含む特定画像を表わす特定データを取得する特定データ取得部と、
前記特定データを利用して、前記複数個の色の中から前記M個の色を決定する色決定部と、を備え、
前記変換部は、
前記第1の対象オブジェクトの前記特徴データが前記第1の特徴を示す場合に、前記対象データ内の前記各第1画素の各位置に対応する前記特定データ内の各位置に存在する各対応画素の各画素値を抽出して、前記対象データ内の前記各第1画素の各画素値を、前記特定データ内の前記各対応画素の各画素値に一致する各値に変換し、
前記第2の対象オブジェクトの前記特徴データが前記第2の特徴を示す場合に、決定済みの前記M個の色の中から前記1個の色を選択して、前記各第2画素の前記各画素値の全てを、選択済みの前記1個の色を示す値に変換してもよい。
前記対象データ取得部は、第1の媒体サイズに対応する元データを縮小化して、前記第1の媒体サイズよりも小さい第2の媒体サイズに対応する前記対象データを取得し、
前記画像処理装置は、さらに、
第1の指示が与えられる場合に、前記第1の媒体サイズに対応するテンプレートデータ内に前記変換済みデータを書き込んで、出力データを生成する生成部を備え、
前記出力部は、
前記第1の指示が与えられる場合に、前記出力データを出力して、前記第1の媒体サイズを有する印刷媒体への印刷を印刷実行部に実行させ、
前記第1の指示とは異なる第2の指示が与えられる場合に、前記第1の変換済みデータを前記印刷実行部に出力して、前記第2の媒体サイズを有する印刷媒体への印刷を前記印刷実行部に実行させてもよい。
通信システムの構成を示す。 第1実施例のシーケンス図を示す。 二値化処理のフローチャートを示す。 対象データ及び二値データを示す。 ラべリング処理のフローチャートを示す。 対象データ及び二値データを示す。 中間ラベルデータ及びラベルデータを示す。 合成/配色決定処理のフローチャートを示す。 変換処理のフローチャートを示す。 対象データ内の画素値が参照データ内の画素値に変換される様子を示す。 対象データ内の画素値が配色パターン内の各値に変換される様子を示す。 対象画像が変換される様子を示す。 第2実施例のシーケンス図を示す。 第3実施例のシーケンス図を示す。 配色パターン決定処理のフローチャートを示す。 第4実施例のシーケンス図を示す。
(第1実施例)
図1に示されるように、通信システム2は、多機能機10と、画像処理サーバ50と、を備える。多機能機10及び画像処理サーバ50は、インターネットを介して、相互に通信可能である。以下では、多機能機10のことを、「MFP(Multi-Function Peripheralの略)10」と呼ぶ。
(MFP10の構成)
MFP10は、印刷機能及びスキャン機能を含む多機能を実行可能な周辺機器(即ちPC等の周辺機器)である。MFP10は、操作部12と、表示部14と、ネットワークインターフェース16と、印刷実行部20と、スキャン実行部22と、制御部30と、を備える。
操作部12は、複数のキーを備える。ユーザは、操作部12を操作することによって、様々な指示をMFP10に与えることができる。表示部14は、様々な情報を表示するためのディスプレイである。ネットワークインターフェース16は、インターネットに接続されている。印刷実行部20は、インクジェット方式、レーザ方式等の印刷機構である。スキャン実行部22は、CCD方式、CIS方式等のスキャン機構である。
制御部30は、CPU32と、メモリ34と、を備える。CPU32は、メモリ34に記憶されているプログラムに従って、様々な処理を実行するプロセッサである。メモリ34は、RAM、ROM等によって構成される。
(画像処理サーバ50の構成)
画像処理サーバ50は、画像処理を実行するためのサーバであり、MFP10のベンダによってインターネット上に設置される。画像処理サーバ50は、ネットワークインターフェース56と、制御部60と、を備える。
ネットワークインターフェース56は、インターネットに接続されている。制御部60は、CPU62と、メモリ64と、を備える。CPU62は、メモリ64に記憶されているプログラムに従って、様々な処理を実行するプロセッサである。メモリ64は、RAM、ROM等によって構成される。
メモリ64は、複数個の合成用データ70を予め記憶している。複数個の合成用データ70のそれぞれは、参照番号と、参照データと、サムネイルデータと、が対応付けられたデータである。参照番号は、参照データを識別するための番号である。参照データは、対象データを変換するために利用されるRGBビットマップデータである。参照データは、はがきサイズに対応する画素数を有する。参照データは、全ての画素の画素値が同じであるデータ(即ち単色を表わすデータ)ではなく、複数色を示す複数個の領域を表わすデータである。サムネイルデータは、参照データが縮小化されたデータである。
メモリ64は、さらに、複数個の配色用データ80を予め記憶している。複数個の配色用データ80のそれぞれは、配色番号と、配色パターンと、サムネイルデータと、が対応付けられたデータである。配色番号は、配色パターンを識別するための番号である。配色パターンは、複数個の色のそれぞれについて、当該色を識別するための色番号(CL1、CL2等)と、当該色を示すRGB値(RGBcol1、RGBcol2等)と、が対応付けられた情報である。サムネイルデータは、当該サムネイルデータに対応する配色パターンが示す複数個の色を含む画像を表わすRGBビットマップデータである。
(MFP10及び画像処理サーバ50が実行する処理;図2)
続いて、図2を参照して、MFP10及び画像処理サーバ50が実行する処理について説明する。MFP10のユーザは、まず、A4サイズの特定の用紙に手書きで文字、図形等のオブジェクトを描画する。次いで、ユーザは、MFP10の操作部12を操作して、変換指示をMFP10に入力する。
MFP10のCPU32は、ユーザによって変換指示が入力されると、複数個の合成用データ70に含まれる各サムネイルデータの送信を要求するための合成用サムネイル要求100を画像処理サーバ50に送信する。
画像処理サーバ50のCPU62は、MFP10から合成用サムネイル要求100を受信すると、複数個の合成用データ70のそれぞれについて、当該合成用データ70に含まれる参照番号とサムネイルデータとが対応付けられている組合せデータを生成する。この結果、CPU62は、複数個の合成用データ70から複数個の組合せデータ110を生成する。そして、CPU62は、複数個の組合せデータ110をMFP10に送信する。
MFP10のCPU32は、画像処理サーバ50から複数個の組合せデータ110を受信すると、T2において、複数個の組合せデータ110に含まれる複数個のサムネイルデータによって表わされる複数個のサムネイル画像を表示部14に表示させる。
図1には、T2で表示されるサムネイル画像SI1,SI2の一例が示されている。サムネイル画像SI1は、青色の領域と黄色の領域とを含む。また、サムネイル画像SI2は、サムネイル画像SI1とは異なる画像であり、赤色の領域と青色の領域と黄色の領域とを含む。ユーザは、表示部14に表示される各サムネイル画像SI1,SI2を見ながら、操作部12を操作して、1個のサムネイル画像を選択する。
図2に示されるように、MFP10のCPU32は、ユーザによって1個のサムネイル画像が選択されると、複数個の組合せデータ110に含まれる複数個の参照番号の中から、選択済みのサムネイル画像を表わすサムネイルデータに対応付けられている1個の参照番号を選択する。次いで、CPU32は、複数個の配色用データ80に含まれる各サムネイルデータの送信を要求するための配色用サムネイル要求120を画像処理サーバ50に送信する。
画像処理サーバ50のCPU62は、MFP10から配色用サムネイル要求120を受信すると、複数個の配色用データ80のそれぞれについて、当該配色用データ80に含まれる配色番号とサムネイルデータとが対応付けられている組合せデータを生成する。この結果、CPU62は、複数個の配色用データ80から複数個の組合せデータ130を生成する。そして、CPU62は、複数個の組合せデータ130をMFP10に送信する。
MFP10のCPU32は、画像処理サーバ50から複数個の組合せデータ130を受信すると、T4において、複数個の組合せデータ130に含まれる複数個のサムネイルデータによって表わされる複数個のサムネイル画像を表示部14に表示させる。
図1には、T4で表示されるサムネイル画像SI3,SI4の一例が示されている。サムネイル画像SI3,SI4は、それぞれ、3色を示す3個の領域を含む。ユーザは、表示部14に表示される各サムネイル画像SI3,SI4を見ながら、操作部12を操作して、1個のサムネイル画像を選択する。
図2に示されるように、MFP10のCPU32は、ユーザによって1個のサムネイル画像が選択されると、複数個の組合せデータ130に含まれる複数個の配色番号の中から、選択済みのサムネイル画像を表わすサムネイルデータに対応付けられている1個の配色番号を選択する。次いで、CPU32は、上記の特定の用紙(即ちユーザによってオブジェクトが描画されたA4サイズの用紙)のスキャンの指示をスキャン実行部22に供給する。これにより、スキャン実行部22は、上記の特定の用紙のカラースキャンを実行して、スキャンデータSDを生成する。スキャンデータSDは、A4サイズに対応する画素数を有するRGBビットマップデータである。
次いで、MFP10のCPU32は、スキャンデータSDと、選択済みの参照番号と、選択済みの配色番号と、を含む変換指示150を、画像処理サーバ50に送信する。
画像処理サーバ50のCPU62は、MFP10から変換指示150を受信すると、T10において、複数個の合成用データ70に含まれる複数個の参照データの中から、変換指示150に含まれる参照番号に対応付けられている1個の参照データRDを取得する。ここで取得される参照データRDは、はがきサイズに対応する画素数を有する。次いで、T20において、CPU62は、複数個の配色用データ80に含まれる複数個の配色パターンの中から、変換指示150に含まれる配色番号に対応付けられている1個の配色パターンCOPを取得する。
次いで、S10において、画像処理サーバ50のCPU62は、変換指示150に含まれるスキャンデータSDに対する縮小化処理を実行する。具体的に言うと、CPU62は、A4サイズに対応する画素数を有するスキャンデータSDを縮小化して、はがきサイズに対応する画素数を有する対象データTDを生成する。例えば、A4サイズに対応する画素数、はがきサイズに対応する画素数が、それぞれ、「K1」、「K2」である場合には、CPU62は、K1個の画素を含むスキャンデータSDから(K1−K2)個の画素を間引いて、K2個の画素を含む対象データTDを生成する。
次いで、S100では、画像処理サーバ50のCPU62は、対象データTDに対する二値化処理を実行する。これにより、CPU62は、対象データTDから、「1」又は「0」を示すK2個の画素を含む二値データBDを生成する。
次いで、S200において、画像処理サーバ50のCPU62は、二値データBDを利用して、ラべリング処理を実行する。これにより、CPU62は、K2個の画素を含むラベルデータLDを生成する。
次いで、S300において、画像処理サーバ50のCPU62は、ラベルデータLDを利用して、合成/配色決定処理を実行する。これにより、CPU62は、決定テーブルDTを生成する。
次いで、S400において、画像処理サーバ50のCPU62は、決定テーブルDTと、参照データRDと、配色パターンCOPと、を利用して、対象データTDに対する変換処理を実行する。これにより、CPU62は、K2個の画素を含む変換済みデータCDを生成する。そして、CPU62は、変換済みデータCDをMFP10に送信する。
MFP10のCPU32は、MFP10から変換済みデータCDを受信すると、変換済みデータCDを印刷実行部20に供給する。この結果、印刷実行部20は、変換済みデータCDによって表わされる画像を、はがきサイズの用紙に印刷する。これにより、印刷済みの用紙をユーザに提供することができる。
(二値化処理;図3)
続いて、図3を参照して、図2のS100の二値化処理の内容を説明する。S102では、画像処理サーバ50のCPU62は、画素の位置を示すポインタm及びnのそれぞれの値を「0」に設定する。
図4は、対象データTD及び二値データBDのそれぞれの一部を模式的に示す。ポインタmの値は、各データTD等内の各画素の第1方向(本実施例では図4の左右方向)の位置を示す。ポインタmの値は、第1方向の第1側から第2側(本実施例では図4の左側から右側)に向かって大きくなる。ポインタnの値は、各データTD等内の各画素の第2方向(本実施例では図4の上下方向)の位置を示す。ポインタnの値は、第2方向の第1側から第2側(本実施例では図4の上側から下側)に向かって大きくなる。
図3のS104では、CPU62は、対象データTD内の1個の画素TP(m,n)を選択する。次いで、S106では、CPU62は、画素TP(m,n)の画素値RGBtp(m,n)に対してYCC変換を実行する。具体的に言うと、CPU62は、S106内の数式に従って、輝度値Y(m,n)と、第1の色差値Cb(m,n)と、第2の色差値Cr(m,n)と、を算出する。S106内の数式において、R(m,n)、G(m,n)、B(m,n)は、それぞれ、RGBtp(m,n)のR値、G値、B値である。
S108では、CPU62は、輝度値Y(m,n)が予め決められた所定値以下であるのか否かを判断する。輝度値Y(m,n)が上記の所定値以下である(S108でYES)ということは、画素TP(m,n)の濃度が比較的に高い(即ち所定の濃度以上である)ことを意味する。輝度値Y(m,n)が上記の所定値より大きい(S108でNO)ということは、画素TP(m,n)の濃度が比較的に低い(即ち上記の所定の濃度未満である)ことを意味する。即ち、S108では、CPU62は、画素TP(m,n)の濃度が所定の濃度以上であるのか否かを判断する。なお、以下では、所定の濃度以上であると判断される対象データTD内の画素(即ちS108でYESと判断される画素)のことを「注目画素」と呼ぶ。
CPU62は、輝度値Y(m,n)が所定値以下であると判断する場合(即ちS108でYES)には、S110において、二値データBD内の画素BP(m,n)の画素値として「1」を記憶する。また、CPU62は、輝度値Y(m,n)が所定値よりも大きいと判断する場合(S108でNO)には、S112において、二値データBD内の画素BP(m,n)の画素値として「0」を記憶する。
S110又はS112が終了すると、S120において、CPU62は、ポインタmの現在の値に「1」を加算して、ポインタmの新たな値を設定する。次いで、S122では、CPU62は、ポインタmの値がmmaxよりも大きいのか否かを判断する。mmaxは、対象データTDの第1方向の画素数(即ち図4の左右方向に並ぶ画素数)に一致する値である。
CPU62は、ポインタmの値がmmaxよりも大きいと判断する場合(S122でYES)には、S124において、ポインタmの値を「0」に設定し、さらに、ポインタnの現在の値に「1」を加算して、ポインタnの新たな値を設定する。次いで、S126では、CPU62は、ポインタnの値がnmaxよりも大きいのか否かを判断する。nmaxは、対象データTDの第2方向の画素数(即ち図4の上下方向に並ぶ画素数)に一致する値である。
CPU62は、ポインタmの値がmmax以下であると判断する場合(S122でNO)、又は、ポインタnの値がnmax以下であると判断する場合(S126でNO)には、S104に戻る。これにより、CPU62は、対象データTD内の新たな画素TP(m,n)を選択して、S106〜S112の処理を再び実行する。
また、CPU62は、ポインタnの値がnmaxよりも大きいと判断する場合(S126でYES)には、対象データTD内の全ての画素について、S106〜S112の処理が実行されたと判断し、二値化処理を終了する。これにより、二値データBD(図4参照)が完成する。
(ラべリング処理;図5)
続いて、図5を参照して、図2のS200のラべリング処理の内容を説明する。ラべリング処理は、対象データTD内の各注目画素を複数個の画素グループに分類するために実行される。ラべリング処理では、まず、二値データBDから中間ラベルデータMLDが生成され、その後、中間ラベルデータMLDからラベルデータLDが生成される。
以下では、図6に示される対象データTD及び二値データBDが生成される場合を例として、ラべリング処理の内容を説明する。図6の各データTD,BD内の1個のボックスは、1個の画素を示す。対象データTDにおいて、グレーの塗りつぶしを有するボックスは、所定の濃度以上を有する画素(即ち注目画素)を示し、白色のボックスは、所定の濃度よりも小さい濃度を有する画素を示す。二値データBDでは、対象データTD内の各画素の濃度に応じた画素値(即ち「1」又は「0」)が記述されている。
図5のS202では、画像処理サーバ50のCPU62は、画素の位置を示すポインタm及びnのそれぞれの値を「0」に設定し、さらに、ポインタLの値を「0」に設定する。S204では、CPU62は、二値データBDに含まれる1個の画素BP(m,n)を選択する。そして、S206では、CPU62は、画素BP(m,n)の画素値が「1」であるのか否かを判断する。
CPU62は、画素BP(m,n)の画素値が「0」であると判断する場合(即ちS206でNO)には、S208において、中間ラベルデータMLD内の画素MLP(m,n)の画素値として「0」を記憶する。S208が終了すると、S240に進む。
図7は、中間ラベルデータMLDの一例を示す。例えば、図6の二値データBDでは、画素BP(0,0)の画素値は「0」である。従って、CPU62は、図5のS204で画素BP(0,0)を選択する場合には、S206でNOと判断し、S208で中間ラベルデータMLD内の画素MLP(0,0)の画素値として「0」を記憶する。
図5のS206において、CPU62は、画素BP(m,n)の画素値が「1」であると判断する場合(S206でYES)には、S210において、4個の特定隣接画素のいずれかの画素値が「0」より大きいのか否かを判断する。
図7を参照して、4個の特定隣接画素について説明する。中間ラベルデータMLD内の画素MLP(m,n)の画素値を決定すべき段階では、画素MLP(m,n)に隣接する8個の画素のうちの4個の画素(即ちハッチングが付されている4個の画素)の各画素値が、既に決定されている。画素値が既に決定されているこれらの4個の画素が、4個の特定隣接画素である。
図5のS210において、CPU62は、4個の特定隣接画素の全ての画素値が「0」であると判断する場合(S210でNO)には、S220において、ポインタLの現在の値に「1」を加算して、ポインタLの新たな値を設定する。そして、S222では、CPU62は、中間ラベルデータMLD内の画素MLP(m,n)の画素値として、ポインタLの値を記憶する。S222が終了すると、S240に進む。
例えば、図7の中間ラベルデータMLD内の画素MLP(3,1)の画素値を決定すべき段階では、4個の特定隣接画素の全ての画素値が「0」であり、ポインタLの値が「0」である。従って、CPU62は、図5のS204で画素BP(3,1)を選択する場合には、S210でNOと判断し、S220でポインタLの値として「1」を設定し、S222で画素MLP(3,1)の画素値として「1」を記憶する。
また、例えば、図7の中間ラベルデータMLD内の画素MLP(2,9)の画素値を決定すべき段階では、4個の特定隣接画素の全ての画素値が「0」であり、ポインタLの値が「3」である。従って、CPU62は、図5のS204で画素BP(2,9)を選択する場合には、S210でNOと判断し、S220でポインタLの値として「4」を設定し、S222で画素MLP(2,9)の画素値として「4」を記憶する。
図5のS210において、CPU62は、4個の特定隣接画素のいずれかの画素値が「0」より大きいと判断する場合(S210でYES)には、S230において、4個の特定隣接画素が、「0」より大きい複数の異なる画素値を示すのか否かを判断する。
CPU62は、4個の特定隣接画素が、「0」より大きい複数の異なる画素値を示すと判断する場合(S230でYES)には、S232において、変更データを記憶する。変更データは、4個の特定隣接画素の4個の画素値のうち、「0」より大きい最大の画素値Lmaxを、「0」より大きい最小の画素値Lminに変更すべきことを示すデータである。
次いで、S234では、CPU62は、中間ラベルデータMLD内の画素MLP(m,n)の画素値として、4個の特定隣接画素の4個の画素値のうち、「0」より大きい最小の画素値Lminを記憶する。S234を終えると、S240に進む。
例えば、図7の中間ラベルデータMLD内の画素MLP(3,9)の画素値を決定すべき段階では、特定隣接画素MLP(4,8)の画素値が「3」であり、特定隣接画素MLP(2,9)の画素値が「4」であり、他の2個の特定隣接画素の各画素値が「0」である。従って、CPU62は、図5のS204で画素BP(3,9)を選択する場合には、S210でYESと判断し、S230でYESと判断する。そして、S232において、CPU62は、4個の特定隣接画素の4個の画素値のうち、「0」より大きい最大の画素値「4(即ちLmax)」を、「0」より大きい最小の画素値「3(即ちLmin)」に変更すべきことを示す変更データを記憶する。次いで、S234において、CPU62は、画素MLP(3,9)の画素値として、4個の特定隣接画素の4個の画素値のうち、「0」より大きい最小の画素値「3」を記憶する。
図5のS230において、CPU62は、4個の特定隣接画素が、「0」より大きい複数の異なる画素値を示さないと判断する場合(S230でNO)には、S232をスキップして、S234において、中間ラベルデータMLD内の画素MLP(m,n)の画素値として、画素値Lminを記憶する。
例えば、図7の中間ラベルデータMLD内の画素MLP(4,1)の画素値を決定すべき段階では、特定隣接画素MLP(3,1)の画素値が「1」であり、他の3個の特定隣接画素MFPの各画素値が「0」である。従って、CPU62は、図5のS204で画素BP(4,1)を選択する場合には、S230でNOと判断し、S234において、画素MLP(4,1)の画素値として、4個の特定隣接画素の4個の画素値のうち、「0」より大きい最小の画素値「1」を記憶する。
S240〜S246は、図3のS120〜S126と同様である。S246でYESと判断されると、中間ラベルデータMLDが完成する。この場合、S250において、CPU62は、S232で変更データが記憶されたのか否かを判断する。
CPU62は、S232で変更データが記憶されたと判断する場合(S250でYES)には、S252において、変更データに従って、中間ラベルデータMLDを変更して、ラベルデータLDを生成するための変更処理を実行する。例えば、画素値「4」を画素値「3」に変更すべきことを示す変更データが記憶されている場合には、CPU62は、図7の中間ラベルデータMLD内の画素MLP(2,9)の画素値「4」を画素値「3」に変更する。これにより、変更後の画素値「3」を有する画素LP(2,9)を含むラベルデータLDが生成される(図7のラベルデータLD参照)。S252が終了すると、ラべリング処理が終了する。
また、CPU62は、S232で変更データが記憶されなかったと判断する場合(S250でNO)には、S252をスキップして、ラべリング処理を終了する。この場合、中間ラベルデータMLDに一致するラベルデータLDが完成する。
ラべリング処理が終了すると、対象データTD内の各注目画素が複数個の画素グループに分類されることになる。1個の画素グループは、同じ画素値を有するラベルデータLD内の各画素に対応する各位置に存在する各注目画素によって構成される。以下では、各画素グループのことを、ラベルデータLD内の画素値L(例えば画素値「1」)を利用して、「画素値L(例えば画素値「1」)に対応する画素グループ」と呼ぶことがある。
(合成/配色決定処理;図8)
続いて、図8を参照して、図2のS300の合成/配色変換処理の内容を説明する。S302では、画像処理サーバ50のCPU62は、図2のT20で取得される配色パターンCOPに含まれる色番号(即ちCL1、CL2・・・CLk)の数kを特定する。次いで、S304では、CPU62は、ポインタjの値として「1」を設定する。次いで、S306では、CPU62は、ポインタLtarの値として「1」を設定する。
S310では、CPU62は、画素値Ltarに対応する画素グループの画素数を算出する。具体的には、CPU62は、ラベルデータLDを参照して、ポインタLtarの値に一致する画素値を有する画素数を算出する。
S312では、CPU62は、画素値Ltarに対応する画素グループの密度を算出する。具体的には、CPU62は、まず、ラベルデータLDを参照して、ポインタLtarの値に一致する画素値を有する複数個の画素のうち、第1方向の最も第1側に存在する画素から最も第2側に存在する画素までの画素数mtを算出する。CPU62は、さらに、ラベルデータLDを参照して、ポインタLtarの値に一致する画素値を有する複数個の画素のうち、第2方向の最も第1側に存在する画素から最も第2側に存在する画素までの画素数ntを算出する。そして、CPU62は、mt及びntを乗算することによって得られる乗算値を、S310で算出された画素数で除算して、密度を算出する。
例えば、図7のラベルデータLDでは、画素値「1」を有する画素が12個存在する。画素値「1」を有する12個の画素において、第1方向(即ち左右方向)の最も第1側(即ち左側)に存在する画素から最も第2側(即ち右側)に存在する画素までの画素数mtは、「5」である。また、画素値「1」を有する12個の画素において、第2方向(即ち上下方向)の最も第1側(即ち上側)に存在する画素から最も第2側(即ち下側)に存在する画素までの画素数ntは、「3」である。従って、CPU62は、画素値Ltarに対応する画素グループの密度として、12/(5x3)を算出する。
図8の314では、CPU62は、S310で算出された画素数が予め決められている閾値Th1以上であり、かつ、S312で算出された密度が予め決められている閾値Th2以上であるのか否かを判断する。
CPU62は、画素数が閾値Th1以上であり、かつ、密度が閾値Th2以上であると判断する場合(S314でYES)には、S320において、ポインタLtarの値と、「合成」を示すデータと、が対応付けられている情報(例えば「Ltar=1」と「合成」)を、決定テーブルDTに記述する。これにより、CPU62は、画素値Ltarに対応する画素グループに対して合成処理を実行すべきことを決定する。S320を終えると、S350に進む。
また、CPU62は、画素数が閾値Th1未満であると判断する場合、又は、密度が閾値Th2未満であると判断する場合(S314でNO)には、S330において、ポインタLtarの値と、「配色」を示すデータと、ポインタjの値に対応する色番号CLjと、が対応付けられている情報(例えば「Ltar=2」と「配色」と「CL1」)とが対応付けられている情報)を、決定テーブルDTに記述する。これにより、CPU62は、画素値Ltarに対応する画素グループに対して配色処理を実行すべきことを決定する。
S330を終えると、S334において、CPU62は、ポインタjの現在の値に「1」を加算して、ポインタjの新たな値を設定する。次いで、S336では、CPU62は、ポインタjの値が、S302で特定されたkよりも大きいのか否かを判断する。CPU62は、ポインタjの値がkよりも大きいと判断する場合(S336でYES)には、S338において、ポインタjの値を「1」に設定する。S338が終了すると、S350に進む。また、CPU62は、ポインタjの値がk以下であると判断する場合(S326でNO)には、S338をスキップして、S350に進む。
S350では、CPU62は、ポインタLtarの現在の値に「1」を加算して、ポインタLtarの新たな値を設定する。次いで、S352では、CPU62は、ポインタLtarの値が、ラベルデータLDに含まれる最大の画素値よりも大きいのか否かを判断する。
S352において、CPU62は、ポインタLtarの値が最大の画素値以下であると判断する場合(S352でNO)には、S354において、ラベルデータLDの中に、ポインタLtarの値に一致する画素値を有する画素が存在するのか否かを判断する。CPU62は、ポインタLtarの値に一致する画素値を有する画素が存在すると判断する場合(S354でYES)には、S310に進む。
S354において、CPU62は、ポインタLtarの値に一致する画素値を有する画素が存在しないと判断する場合(S354でNO)には、S350に戻る。例えば、図5のS232において、画素値「4」が画素値「3」に変更されるべきことを示す変更データが記憶される場合には、S252において、画素値「4」が画素値「3」に変更されたラベルデータLDが生成されるので、ラベルデータLD内に画素値「4」を有する画素が存在しない。この場合、図8のS354では、CPU62は、ラベルデータLDの中に、ポインタLtarの値「4」に一致する画素値「4」を有する画素が存在しないと判断する(S354でNO)。
また、S352において、CPU62は、ポインタLtarの値が最大の画素値よりも大きいと判断する場合(S352でYES)には、合成/配色決定処理を終了する。これにより、決定テーブルDTが完成する。
(変換処理;図9)
続いて、図9を参照して、図2のS400の変換処理の内容を説明する。S402では、画像処理サーバ50のCPU62は、画素の位置を示すポインタm及びnのそれぞれの値を「0」に設定する。S404では、CPU62は、ラベルデータLD内の1個の画素LP(m,n)を選択する。S406では、CPU62は、画素LP(m,n)の画素値が「0」より大きいのか否かを判断する。即ち、CPU62は、対象データTD内の画素TP(m,n)が、所定の濃度以上を有する注目画素であるのか否かを判断する。
S406において、CPU62は、画素LP(m,n)の画素値が「0」より大きいと判断する場合(S406でYES)には、S408において、決定テーブルDTから、画素LP(m,n)の画素値に対応付けられている処理を特定する。例えば、図8の決定テーブルDTでは、「Ltar=1」と「合成」とが対応付けられており、「Ltar=2」と「配色」とが対応付けられている。従って、図9のS406において、CPU62は、画素LP(m,n)の画素値が「1」である場合には「合成」を特定し、画素LP(m,n)の画素値が「2」である場合には「配色」を特定する。
次いで、S410では、CPU62は、S408で特定された処理が「合成」であるのか否かを判断する。CPU62は、S408で特定された処理が「合成」であると判断する場合(S410でYES)には、S420及びS422の合成処理を実行し、S408で特定された処理が「配色」であると判断する場合(S410でNO)には、S430及びS432の配色処理を実行する。
S420では、CPU62は、図2のT10で取得された参照データRDから、画素RP(m,n)の画素値RGBrp(m,n)を抽出する。これにより、CPU62は、対象データTD内の注目画素TP(m,n)の画素値RGBtp(m,n)を変換するための変換色(即ち画素値RGBrp(m,n)が示す色)を選択する。
S422では、CPU62は、対象データTD内の注目画素TP(m,n)の画素値RGBtp(m,n)を、抽出済みの画素値RGBrp(m,n)に変換する。これにより、変換済みデータCD内の画素CP(m,n)の画素値RGBcp(m,n)は、参照データRD内の画素RP(m,n)の画素値RGBrp(m,n)に一致する。即ち、対象データTDに対して、参照データRD内の画素RP(m,n)が合成される。S422を終えると、S440に進む。
図10は、対象データTD、ラベルデータLD、参照データRD、及び、変換済みデータCDの一例を示す。ラベルデータLD内の画素LP(1,1)は、画素値「1」を有する。従って、CPU62は、図9のS404で画素LP(1,1)を選択する場合には、S406でYESと判断し、S408で決定テーブルDT(図8参照)から「合成」を特定し、S410でYESと判断する。そして、CPU62は、S420において、参照データRDから画素値RGBrp(1,1)を抽出し、S422において、対象データTD内の画素値RGBtp(1,1)を画素値RGBrp(1,1)に変換する。これにより、変換済みデータCD内の画素CP(1,1)の画素値RGBcp(1,1)は、画素値RGBrp(1,1)に一致する。
同様に、画素TP(2,1)、画素TP(2,2)も、それぞれ、画素値RGBrp(2,1)、画素値RGBrp(2,2)に変換される。即ち、画素値「1」に対応する画素グループ(即ち、画素TP(1,1)、画素TP(2,1)、画素TP(2,2))に対して、合成処理が実行される。
図9のS430では、CPU62は、決定テーブルDTから、画素LP(m,n)の画素値に対応付けられている色番号を取得する。次いで、CPU62は、図2のT20で取得された配色パターンCOPから、取得済みの色番号に対応付けられているRGB値を抽出する。以下では、ここで取得されるRGB値のことを「RGBcoltar」と記載する。
例えば、図8の決定テーブルDTでは、「Ltar=2」と「配色」と「CL1」とが対応付けられている。従って、図9のS430では、CPU62は、画素LP(m,n)の画素値が「2」である場合には、決定テーブルDTから、「Ltar=2」に対応付けられている色番号「CL1」を取得する。そして、CPU32は、配色パターンCOPから、色番号「CL1」に対応付けられているRGB値(即ちRGBcoltar)を抽出する。
S432では、CPU62は、対象データTD内の注目画素TP(m,n)の画素値RGBtp(m,n)を、RGBcoltarに変換する。これにより、変換済みデータCD内の画素CP(m,n)の画素値RGBcp(m,n)は、RGBcoltarに一致する。即ち、対象データTDにおいて、注目画素TP(m,n)によって表わされる色が、配色パターンCOPが示す色に配色される。S432を終えると、S440に進む。
図11は、対象データTD、ラベルデータLD、配色パターンCOP、及び、変換済みデータCDの一例を示す。ラベルデータLD内の画素LP(10,10)は、画素値「2」を有する。従って、CPU62は、図9のS404で画素LP(10,10)を選択する場合には、S406でYESと判断し、S408で決定テーブルDT(図8参照)から「配色」を特定し、S410でNOと判断する。そして、CPU62は、S430において、図8の決定テーブルDTから色番号「CL1」を取得し、配色パターンCOPから色番号「CL1」に対応付けられているRGB値であるRGBcol1を抽出する。次いで、CPU62は、S432において、対象データTD内の画素TP(10,10)の画素値RGBtp(10,10)をRGBcol1に変換する。これにより、変換済みデータCD内の画素CP(10,10)の画素値RGBcp(10,10)は、RGBcol1に一致する。
同様に、画素TP(11,10)、画素TP(12,10)も、それぞれ、RGBcol1に変換される。即ち、画素値「2」に対応する画素グループ(即ち、画素TP(10,10)、画素TP(11,10)、画素TP(12,10))に対して、色番号CL1に対応する色が配色される。また、同様に、画素値「3」に対応する画素グループ(即ち、画素TP(10,12)、画素TP(11,12)、画素TP(12,12))に対して、色番号CL2に対応する色が配色される。
また、図9のS406において、CPU62は、画素LP(m,n)の画素値が「0」であると判断する場合(S406でNO)には、S408〜S432をスキップして、S440に進む。即ち、CPU62は、対象データTD内の画素TP(m,n)の画素値RGBtp(m,n)を変換しない。これにより、変換済みデータCD内の画素CP(m,n)の画素値RGBcp(m,n)は、対象データTD内の画素TP(m,n)の画素値RGBtp(m,n)に一致する。
例えば、図10のラベルデータLD内の画素(0,0)は、画素値「0」を有する。従って、CPU62は、図9のS404で画素LP(0,0)を選択する場合には、S406でNOと判断し、対象データTD内の画素TP(0,0)の画素値RGBtp(0,0)を変換しない。これにより、これにより、変換済みデータCD内の画素CP(0,0)の画素値RGBcp(0,0)は、画素値RGBtp(0,0)に一致する。
S440〜S446は、図3のS120〜S126と同様である。S446でYESと判断されると、変換処理が終了する。これにより、対象データTD内の全ての画素グループのそれぞれに対して、合成処理(即ちS420及びS422)又は配色処理(即ちS430及びS432)が実行され、変換済みデータCDが完成する。
(画像の変換の例;図12)
図12(A)は、対象データTDによって表わされる対象画像TIの一例を示す。対象画像TIは、白色の背景オブジェクトBOと、5個の対象オブジェクトTO1〜TO5(即ち、ユーザによって手書きで描画された各オブジェクト)と、を含む。
対象オブジェクトTO1は、隣り合う2個の文字が連続している8個の黒色の文字「complete」を示す。対象オブジェクトTO1は、比較的に大きいサイズを有する。従って、対象オブジェクトTO1を表わす画素グループの画素数は、比較的に大きい(即ち図8のS314の閾値Th1以上である)。ただし、対象オブジェクトTO1は、比較的に細い線で描かれている。従って、対象オブジェクトTO1を表わす画素グループの密度は、比較的に小さい(即ち図8のS314の閾値Th2未満である)。
対象オブジェクトTO2は、黒色の文字「A」を示す。対象オブジェクトTO2は、比較的に大きいサイズを有する。従って、対象オブジェクトTO2を表わす画素グループの画素数は、比較的に大きい(即ち閾値Th1以上である)。また、対象オブジェクトTO2は、比較的に太い線で描かれている。従って、対象オブジェクトTO2を表わす画素グループの密度は、比較的に大きい(即ち閾値Th2以上である)。
3個の対象オブジェクトTO3〜TO5は、それぞれ、黒色の文字「b」、「c」、「d」を示す。3個の対象オブジェクトTO3〜TO5は、それぞれ、比較的に太い線で描かれている。従って、3個の対象オブジェクトTO3〜TO5を表わす3個の画素グループのそれぞれの密度は、比較的に大きい(即ち閾値Th2以上である)。ただし、3個の対象オブジェクトTO3〜TO5は、それぞれ、比較的に小さいサイズを有する。従って、3個の対象オブジェクトTO3〜TO5を表わす3個の画素グループのそれぞれの画素数は、比較的に小さい(即ち閾値Th1未満である)。
図12(B)は、参照データRDによって表わされる参照画像RIの一例を示す。上述したように、ユーザは、複数個のサムネイル画像SI1,SI2(図1参照)の中から1個のサムネイル画像を選択する。そして、画像処理サーバ50は、選択済みのサムネイル画像に対応する参照データRDを取得する(図2のT10参照)。図12(B)の参照画像RIは、ユーザによってサムネイル画像SI1が選択された場合に、画像処理サーバ50によって取得される参照データRDによって表わされる画像である。参照画像RIは、黄色の連続する線を示す領域(図12(B)ではグレーの領域)と、当該領域によって区分されている複数個の青色のブロックを示す領域(図12(B)では黒色の領域)と、を含む。
図2のS100の二値化処理では、画像処理サーバ50は、対象データTDに含まれる複数個の画素のうち、5個の対象オブジェクトTO1〜TO5を表わす各画素について、濃度が比較的に高い注目画素であると判断する(図3のS108でYES)。また、画像処理サーバ50は、対象データTD内の複数個の画素のうち、背景オブジェクトBOを表わす各画素について、濃度が比較的に低い画素であると判断する(図3のS108でNO)。
図2のS200のラべリング処理では、画像処理サーバ50は、対象データTD内の各注目画素を、5個の対象オブジェクトTO1〜TO5を表わす5個の画素グループに分類する(図5参照)。
図2のS300の合成/配色処理では、画像処理サーバ50は、対象オブジェクトTO2を表わす画素グループについて、画素数が閾値Th1以上であり、かつ、密度が閾値Th2以上であると判断し(図8のS314でYES)、合成処理を実行すべきと決定する(S320)。この結果、図2のS400の変換処理では、画像処理サーバ50は、参照画像RIを表わす参照データRDを利用して、対象オブジェクトTO2を表わす画素グループに対する合成処理を実行する(図9のS420,S422)。
また、図2のS300の合成/配色処理では、画像処理サーバ50は、対象オブジェクトTO3〜TO5を表わす3個の画素グループのそれぞれについて、密度が閾値Th2以上であるが、画素数が閾値Th1未満であるので(図8のS314でNO)、配色処理を実行すべきと決定する(S330)。また、画像処理サーバ50は、対象オブジェクトTO1を表わす画素グループについて、画素数が閾値Th1以上であるが、密度が閾値Th2未満であるので(S314でNO)、配色処理を実行すべきと決定する(S330)。しかも、画像処理サーバ50は、4個の対象オブジェクトTO1,TO3〜TO5を表わす4個の画素グループのそれぞれについて、異なる色番号CL1〜CL4を決定テーブルDTに記述する。この結果、図2のS400の変換処理では、画像処理サーバ50は、4個の対象オブジェクトTO1,TO3〜TO5を表わす4個の画素グループに対する配色処理を実行する(図9のS430,S432)。
なお、図2のS400の変換処理では、画像処理サーバ50は、対象データTD内の複数個の画素のうち、背景オブジェクトBOを表わす各画素の画素値を変換しない(図9のS406でNO)。
上記の各処理S100〜S400が実行されると、図12(C)に示される変換済み画像CIを表わす変換済みデータCDが生成される。変換済み画像CIは、白色の背景オブジェクトBOと、5個の変換済みオブジェクトCO1〜CO5と、を含む。即ち、変換済み画像CIは、5個の対象オブジェクトTO1〜TO5に代えて、変換済みオブジェクトCO1〜CO5を含む。
変換済みオブジェクトCO2は、参照画像RIと同じパターン(即ち、黄色の連続する線、及び、複数個の青色のブロック)を有する文字「A」を示す。換言すると、変換済みオブジェクトCO2は、ユーザによって描画された文字「A」を示すオブジェクトに対応する形状を有すると共に、複数色を含む参照画像RIと同じパターンを有するオブジェクトである。
4個の変換済みオブジェクトCO1,CO3〜CO5は、それぞれ、色番号CL1〜CL4に対応する単色を示す。換言すると、4個の変換済みオブジェクトCO1,CO3〜CO5は、それぞれ、ユーザによって描画された文字(例えば「complete」)に対応する形状を有すると共に、単色を示すオブジェクトである。そして、4個の変換済みオブジェクトCO1,CO3〜CO5によって示される各色は、異なる色番号CL1〜CL4に対応する異なる色である。
仮に、画素数又は密度が比較的に小さい画素グループに対して合成処理が実行されると、ユーザは、変換済みオブジェクトの中に参照画像RIのパターンを認識しにくい。このために、本実施例では、画像処理サーバ50は、画素数又は密度が比較的に小さい画素グループに対して配色処理を実行して(図8のS314でNO、図9のS430、S432)、単色を示す変換済みオブジェクトCO1,CO3〜CO5を表わす変換済みデータCDを生成する。また、画像処理サーバ50は、画素数及び密度が比較的に大きい画素グループに対して合成処理を実行して(図8のS314でYES、図9のS420、S422)、複数色を示す変換済みオブジェクトCO2を表わす変換済みデータCDを生成する。これにより、ユーザは、変換済みオブジェクトCO2の中に参照画像RIのパターンを認識することができる。
上述したように、画像処理サーバ50は、各対象オブジェクトが有する各特徴、即ち、各画素グループの画素数及び密度に応じて、各画素グループに対して合成処理又は配色処理を適切に実行することができる。そして、画像処理サーバ50は、変換済みデータCDを生成して、当該変換済みデータCDをMFP10に送信する。この結果、MFP10は、変換済み画像CIをはがきサイズの用紙に印刷する。従って、面白味のある画像をユーザに提供し得る。
本実施例によると、ユーザは、例えば、ニューイヤーカード、クリスマスカード等に利用されるべき面白味のあるカードを容易に取得することができる。即ち、ユーザは、A4サイズの用紙にオブジェクトを手書きで描画する。そして、ユーザは、複数個のサムネイル画像SI1,SI2を見ながら参照番号を選択し、複数個のサムネイル画像SI3,SI4を見ながら配色番号を選択し、上記の用紙のスキャンをMFP10に実行させる。これにより、ユーザは、変換済み画像CIが印刷されたはがきサイズの用紙を容易に取得することができる。
(対応関係)
画像処理サーバ50が、「画像処理装置」の一例である。図12(B)の参照画像RI、参照データRDが、それぞれ、「特定画像」、「特定データ」の一例である。この場合、黄色と青色の2個の色が、「複数個の色」の一例である。また、図8のS302で特定されるk個の色が、「M個の色」の一例である。図8のS310,S312で算出される画素数及び密度が、「特徴データ」の一例である。閾値Th1、閾値Th2が、それぞれ、「第1の閾値」、「第2の閾値」の一例である。画素数が閾値Th1以上であり、かつ、密度が閾値Th2以上であること(S314でYES)が、「第1の特徴」の一例である。画素数が閾値Th1未満であること、又は、密度が閾値Th2以上であること(S314でNO)が、「第2の特徴」の一例である。例えば、図12(A)の対象オブジェクトTO2を表わす画素グループ、当該画素グループを構成する各画素が、それぞれ、「第1の画素グループ」、「第1画素」の一例である。また、図12(A)の対象オブジェクトTO1を表わす画素グループ、当該画素グループを構成する各画素が、それぞれ、「第2の画素グループ」、「第2画素」の一例である。また、図9のS420で抽出される画素RP(m,n)が、「対応画素」の一例である。
図2のS10の処理、T10の処理、S100の処理、S200の処理、S300の処理、S400の処理が、それぞれ、「対象データ取得部」、「特定データ取得部」、「判断部」、「オブジェクト決定部」、「算出部」、「変換部」によって実行される処理の一例である。また、図2において、変換済みデータCDをMFP10に送信する処理が、「出力部」によって実行される処理の一例である。
(第2実施例;図13)
第1実施例では、変換済み画像CIがはがきサイズの用紙に印刷されることが前提となっている。本実施例では、ユーザは、変換済み画像CIが印刷されるべき用紙のサイズを選択することができる。
本実施例では、画像処理サーバ50のメモリ64内の複数個の合成用データ70のそれぞれは、はがきサイズに対応する画素数を有する参照データのみならず、他のサイズ(例えばB5サイズ、A4サイズ等)に対応する画素数を有する参照データを含む。1個の合成用データに含まれる各サイズに対応する各参照データは、同じ画像(例えば図12(B)のパターン)を表わす。
ユーザは、配色番号を選択した後に、MFP10の操作部12を操作して、変換済み画像CIの印刷のための用紙サイズを選択する。
MFP10のCPU32は、スキャンデータSDを生成すると、スキャンデータSDと、参照番号と、配色番号と、用紙サイズ情報と、を含む変換指示150を、画像処理サーバ50に送信する。用紙サイズ情報は、ユーザによって選択された用紙サイズを示す情報である。
T10では、画像処理サーバ50のCPU62は、変換指示150に含まれる参照番号及び用紙サイズ情報に従って、参照データRDを取得する。即ち、CPU62は、当該参照番号に対応付けられている各参照データ(例えば、はがきサイズ、B5サイズ、A4サイズに対応する各参照データ)の中から、当該用紙サイズ情報が示す用紙サイズに対応する画素数を有する参照データRDを取得する。T20は、図2のT20と同様である。
S10では、CPU62は、変換指示150に含まれる用紙サイズ情報に従って、S10の縮小化処理を実行する。例えば、用紙サイズ情報が「はがきサイズ」を示す場合には、第1実施例と同様に、CPU62は、A4サイズに対応する画素数を有するスキャンデータSDに対する縮小化処理を実行して、はがきサイズに対応する画素数を有する対象データTDを生成する。また、例えば、用紙サイズ情報が「B5サイズ」を示す場合には、CPU62は、スキャンデータSDに対する縮小化処理を実行して、B5サイズに対応する画素数を有する対象データTDを生成する。また、例えば、用紙サイズ情報が「A4サイズ」を示す場合には、CPU62は、スキャンデータSDに対する縮小化処理を実行しない(即ちS10をスキップする)。この場合、対象データTDは、スキャンデータSDに一致する。
S100〜S400の処理は、図2のS100〜S400と同様である。CPU62は、用紙サイズ情報を利用して、S300の合成/配色決定処理を実行する。具体的に言うと、図8のS314において、CPU62は、用紙サイズ情報に応じて閾値Th1を決定する。即ち、CPU62は、用紙サイズ情報が示すサイズが大きい程、閾値Th1として大きい値を決定する。例えば、用紙サイズ情報が「はがきサイズ」を示す場合には、CPU62は、閾値Th1として第1の所定値を決定する。また、例えば、用紙サイズ情報が「B5サイズ」を示す場合には、CPU62は、閾値Th1として第1の所定値よりも大きい第2の所定値を決定する。S400が実行されると、用紙サイズ情報が示す用紙サイズに対応する画素数を有する変換済みデータCDが生成される。
MFP10のCPU32は、変換済み画像CIの印刷を印刷実行部20に実行させる際に、ユーザによって選択された用紙サイズを印刷実行部20に通知する。これにより、印刷実行部20は、選択済みの用紙サイズを有する用紙に変換済み画像CIの印刷を実行する。変換済みデータCDは、選択済みの用紙サイズに対応する画素数を有する。従って、変換済み画像CIは、選択済みの用紙サイズを有する用紙の全域に亘って印刷される。
(第2実施例の効果)
本実施例によると、CPU62は、変換済み画像CIが印刷されるべき用紙のサイズに応じて、閾値Th1として適切な値を決定することができ、この結果、画素グループに対して合成処理及び配色処理のどちらを実行すべきかを適切に決定することができる。本実施例では、「はがきサイズ」、「B5サイズ」が、それぞれ、「第1のサイズ」、「第2のサイズ」の一例である。
(第3実施例;図14)
第1実施例では、画像処理サーバ50は、メモリ64に予め記憶されている参照データRD及び配色パターンCOPを取得する。本実施例では、画像処理サーバ50は、MFP10から参照データRDを取得し、参照データRDを利用して配色パターンCOPを取得する。
MFP10のCPU32は、ユーザによって変換指示が入力されると、T6において、参照画像のスキャンを促すメッセージを表示部14に表示させる。これにより、ユーザは、所望の参照画像(例えば、書籍に描画されている画像、ユーザ自身によって描画された画像等)のスキャンをMFP10に実行させる。
MFP10のCPU32は、参照画像のスキャンをスキャン実行部22に実行させて、はがきサイズに対応する画素数を有する参照データRDを生成する。例えば、CPU32は、参照画像のスキャンによって得られるスキャンデータがA4サイズに対応する画素数を有する場合には、当該スキャンデータに対する縮小化処理を実行して、はがきサイズに対応する画素数を有する参照データRDを生成する。そして、CPU32は、参照データRDを画像処理サーバ50に送信する。
画像処理サーバ50のCPU62は、MFP10から参照データRDを受信することによって、参照データRDを取得する。次いで、S500において、CPU62は、参照データRDを利用して、配色パターン決定処理を実行する。この結果、CPU62は、配色パターンCOPを取得する。
MFP10のCPU32は、参照データRDを画像処理サーバ50に送信すると、T6において、変換されるべき対象画像(上記の参照画像とは異なる画像)のスキャンを促すメッセージを表示部14に表示させる。これにより、ユーザは、所望の対象画像(例えば、書籍に描画されている画像、ユーザ自身によって描画された画像等)のスキャンをMFP10に実行させることができる。
MFP10のCPU32は、対象画像のスキャンをスキャン実行部22に実行させて、スキャンデータSDを生成する。そして、CPU32は、スキャンデータSDを画像処理サーバ50に送信する。
画像処理サーバ50のCPU62は、MFP10からスキャンデータSDを受信すると、第1実施例と同様に、S10,S100〜S400の各処理を順次実行して、変換済みデータCDを生成する。なお、図8のS302では、CPU62は、図14のS500で生成された配色パターンCOPを利用して、色番号の数kを特定する。また、図9のS420では、CPU62は、MFP10から取得された参照データRDを利用して、画素値RGBrp(m,n)を抽出する。また、図9のS430では、CPU62は、図14のS500で生成された配色パターンCOPを利用して、RGBcoltarを抽出する。
(配色パターン決定処理;図15)
続いて、図15を参照して、図14のS500の配色パターン決定処理の内容を説明する。S502では、画像処理サーバ50のCPU62は、参照データRD内の各画素値の頻度を算出する。具体的には、CPU62は、まず、R値、G値、及び、B値のそれぞれが「0」である画素値(0,0,0)を有する画素の数(S502の例では「802」)を、参照データRDから算出する。これにより、CPU62は、画素値(0,0,0)の頻度を算出する。同様に、CPU62は、他の全ての画素値のそれぞれについて、頻度を算出する。即ち、CPU62は、256×256×256通りの画素値のそれぞれについて、頻度を算出する。
次いで、S504において、CPU62は、256階調のRGB色空間を512個(即ち8×8×8個)のブロックに区分する。図15は、512個のブロックを模式的に示す。次いで、CPU62は、512個のブロックのそれぞれについて、当該ブロックの代表値BL1〜BL512を決定する。ブロックの代表値は、当該ブロックに含まれる各画素値のうち、最も高い頻度を有する画素値である。例えば、R値が「0」〜「31」であり、かつ、G値が「0」〜「31」であり、かつ、B値が「0」〜「31」であるブロックでは、最も高い頻度を有する画素値は、(0,0,0)である。この場合、CPU62は、当該ブロックの代表値BL1として(0,0,0)を決定する。
次いで、S506において、CPU62は、S504で決定された512個の代表値BL1〜BL512の中から、予め決められている個数(例えば7個)の代表値を選択する。具体的には、CPU62は、まず、頻度が最も高い代表値を選択し、色番号CL1と当該代表値RGBcol1とを対応付ける。次いで、CPU62は、頻度が次に高い代表値を選択し、色番号CL2と当該代表値RGBcol2とを対応付ける。CPU62は、予め決められている個数の代表値を選択するまで、同様の動作を実行する。この結果、配色パターンCOPが完成する。
なお、変形例では、CPU62は、S504の処理を実行せずに、S506において、高い頻度を有する各画素値を順に選択して、配色パターンCOPを決定してもよい。ただし、本実施例のように、S504で各ブロックの代表値を決定して、S506で各ブロック代表値を選択する手法を採用すれば、見た目の色がほぼ同じである2個以上の画素値を含む配色パターンCOPが決定されるのを抑制することができる。例えば、画素値(0,0,0)と画素値(0,0,1)を含む配色パターンCOPが決定されるのを抑制することができる。
(第3実施例の効果)
本実施例によると、画像処理サーバ50は、MFP10から取得される参照データRDを利用して、合成処理を実行することができる。参照データRDは、ユーザによって準備される参照画像のスキャンによって生成されるデータである。このために、面白味のある変換済み画像をユーザに提供し得る。また、画像処理サーバ50は、参照データRDを利用して、配色パターンCOPを決定する(図14のS500)。即ち、画像処理サーバ50は、ユーザによって準備される参照画像に含まれる複数個の色に基づいて、配色パターンCOPを決定する。このために、合成処理によって得られる変換済みオブジェクトに含まれる色と、配色処理によって得られる変換済みオブジェクトに含まれる色と、が近似する。この結果、変換後の各色が統一感を有するとユーザに感じさせ得る変換済み画像を、ユーザに提供することができる。
(対応関係)
図14のS500の処理が、「色決定部」によって実行される処理の一例である。図15のS502において、「0」より大きい頻度が算出される各画素値が示す各色が、「複数個の色」の一例である。また、S506で決定される各色が、「M個の色」の一例である。
(第4実施例;図16)
本実施例では、画像処理サーバ50は、MFP10から受信する指示に応じて、変換済みデータCDをMFP10に送信するのか、確認データCD’をMFP10に送信するのか、を変える。
配色番号が選択されるまでの各処理は、第1実施例と同様である(図2参照)。ユーザは、配色番号を選択した後に、さらに、MFP10の操作部12を操作して、変換済み画像がはがきサイズの用紙に印刷されるべきか、変換済み画像の内容を確認するために、変換済み画像がA4サイズの用紙に印刷されるべきか、を選択することができる。
はがきサイズの用紙が選択される場合には、第1実施例の図2と同様に、MFP10のCPU32は、変換指示150を画像処理サーバ50に送信する。そして、画像処理サーバ50のCPU62は、MFP10から変換指示150を受信すると、はがきサイズに対応する画素数を有する変換済みデータCDをMFP10に送信する。これにより、MFP10は、変換済み画像をはがきサイズの用紙に印刷する。
一方、A4サイズの用紙が選択される場合(即ち確認のための印刷が選択される場合)には、図16に示されるように、MFP10のCPU32は、スキャンデータSDと、参照番号と、配色番号と、を含む確認指示152を、画像処理サーバ50に送信する。
画像処理サーバ50のCPU62は、MFP10から確認指示152を受信すると、第1実施例と同様に、S10,S100〜S400の各処理を順次実行して、変換済みデータCDを生成する。
次いで、S600において、画像処理サーバ50のCPU62は、メモリ64に予め記憶されているテンプレートデータ内の所定の位置に変換済みデータCDを書き込んで、確認データCD’を生成する。テンプレートデータは、A4サイズに対応する画素数を有しており、さらに、印刷確認であることを示すメッセージを表わすデータを含む。そして、CPU62は、確認データCD’をMFP10に送信する。
MFP10のCPU32は、画像処理サーバ50から確認データCD’を受信すると、確認データCD’を印刷実行部20に供給する。この結果、印刷実行部20は、確認データCD’によって表わされる画像を、A4サイズの用紙に印刷する。これにより、ユーザは、印刷済みの用紙を見ることによって、変換済み画像の内容を確認することができる。
図16は、確認データCD’によって表わされる画像が印刷されたA4サイズの用紙の一例を示す。A4サイズの用紙の中央の部分に変換済み画像が印刷され、変換済み画像の下方に印刷確認であることを示すメッセージが印刷される。このように、本実施例では、A4サイズの用紙の全域に亘って変換済み画像が印刷されるのではなく、A4サイズの用紙の一部分に変換済み画像が印刷される。この点において、ユーザによって選択される用紙サイズを有する用紙の全域に亘って変換済み画像が印刷される第2実施例(図13参照)とは異なる。
(対応関係)
A4サイズ、はがきサイズが、それぞれ、「第1の媒体サイズ」、「第2の媒体サイズ」の一例である。確認指示152、変換指示150が、それぞれ、「第1の指示」、「第2の指示」の一例である。スキャンデータSD、確認データCD’が、それぞれ、「元データ」、「出力データ」の一例である。S600の処理が、「生成部」によって実行される処理の一例である。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)例えば、MFP10は、複数個の合成用データ70又は複数個の配色用データ80を予め記憶していてもよい。そして、MFP10は、画像処理サーバ50に代えて、上記の各実施例の各処理(例えば、図2のT10、S20、S10、S100〜S400等)を実行してもよい。この場合、MFP10は、MFP10自身によって生成される変換済みデータCDを利用して、印刷を実行することができる。本変形例では、MFP10が、「画像処理装置」の一例である。
(変形例2)例えば、MFP10のためのドライバプログラムは、複数個の合成用データ70又は複数個の配色用データ80を含んでいてもよい。この場合、ドライバプログラムがインストールされるPCは、画像処理サーバ50に代えて、上記の各実施例の各処理を実行してもよい。本変形例では、PCが、「画像処理装置」の一例である。
(変形例3)上記の各実施例では、「A4サイズ」の用紙のスキャンが実行される。これに代えて、他のサイズ(例えば、はがきサイズ、B4、B5、リーガル等)の用紙のスキャンが実行されてもよい。
(変形例4)画像処理サーバ50は、図2のS10の縮小化処理を実行せずに、例えば、A4サイズに対応する第1の画素数を有するスキャンデータSDに対して二値化処理及びラべリング処理を順次実行して、第1の画素数を有するラベルデータLDを生成してもよい。この場合、画像処理サーバ50は、第1の画素数を有するラベルデータLDと、第1の画素数を有する参照データRDと、を利用して、合成/配色決定処理及び変換処理を順次実行して、第1の画素数を有する変換済みデータCDを生成してもよい。そして、画像処理サーバ50は、変換済みデータCDに対する縮小化処理を実行して、例えば、はがきサイズに対応する第2の画素数を有する縮小データを生成し、当該縮小データをMFP10に送信してもよい。この場合も、MFP10は、変換済み画像をはがきサイズの用紙に印刷することができる。本変形例では、スキャンデータSD、縮小データが、それぞれ、「対象データ」、「変換済みデータ」の一例である。
(変形例5)上記の実施例では、画像処理サーバ50は、変換済み画像CIをMFP10に印刷させるために、変換済みデータCDをMFP10に送信する。これに代えて、例えば、画像処理サーバ50は、変換済み画像CIをディスプレイに表示させるために、変換済みデータCDをディスプレイに送信してもよい。即ち、「変換済みデータ」は、印刷のためのデータでなくてもよく、表示のためのデータであってもよい。即ち、「出力部」は、変換済みデータを出力すればよい。
(変形例6)「対象データ」は、スキャンデータから得られるデータでなくてもよく、例えば、デジタルカメラで撮影された画像を表わすデータであってもよいし、描画ソフトウェアによって描画された画像を表わすデータであってもよい。即ち、「対象データ」は、変換対象の対象画像を表わすデータであればよい。
(変形例7)上記の各実施例では、画像処理サーバ50は、対象データTD内の注目画素以外の各画素(以下では「非注目画素」と呼ぶ)の画素値を変換しない(即ち図9のS406でNO)。これに代えて、画像処理サーバ50は、各非注目画素の画素値を変換してもよい。例えば、画像処理サーバ50は、各非注目画素の画素値を、白色を示すRGB値(255,255,255)に変換してもよい。この場合、画像処理サーバ50は、仮に、スキャン対象の用紙が白色でない場合に、白色を示す背景オブジェクトを表わす変換済み画像の印刷をMFP10に実行させることができる。一般的に言うと、「変換部」は、対象データ内の対象オブジェクトを表わす各画素の画素値を変換すればよく、対象データ内の背景オブジェクトを表わす各画素の画素値については、変換してもよいし、変換しなくてもよい。
(変形例8)上記の各実施例では、画像処理サーバ50は、画素グループの画素数及び密度を算出する(図8のS310、S312)。これに代えて、画像処理サーバ50は、画素グループの密度を算出せずに、当該画素グループの画素数を算出してもよい。そして、画像処理サーバ50は、当該画素グループの画素数が閾値Th1以上である場合に、当該画素グループに対する合成処理を実行し、当該画素グループの画素数が閾値Th1未満である場合に、当該画素グループに対する配色処理を実行してもよい。本変形例では、「特徴データ」は、密度を含まずに、画素数を含む。また、画像処理サーバ50は、画素グループの画素数を算出せずに、当該画素グループの密度を算出してもよい。そして、画像処理サーバ50は、当該画素グループの密度が閾値Th2以上である場合に、当該画素グループに対する合成処理を実行し、当該画素グループの密度が閾値Th2未満である場合に、当該画素グループに対する配色処理を実行してもよい。本変形例では、「特徴データ」は、画素数を含まずに、密度を含む。
(変形例9)「特徴データ」は、画素グループの画素数及び密度に限られず、他の特徴を示すデータであってもよい。例えば、画像処理サーバ50は、対象画像TIに対するOCR(Optical Character Readerの略)解析を実行して、対象画像TIに含まれる複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトが文字であるのか文字以外の図形であるのかを示す解析結果データを算出してもよい。そして、画像処理サーバ50は、解析結果データが図形を示す場合には、画素グループに対する合成処理を実行し、解析結果データが文字を示す場合には、画素グループに対する配色処理を実行してもよい。本変形例では、解析結果データが、「特徴データ」の一例である。即ち、「特徴データ」は、対象オブジェクトの特徴を示すデータであればよい。
(変形例10)上記の第3実施例(図14参照)では、参照データRDは、参照画像のスキャンによって生成される。これに代えて、第1実施例と同様に、画像処理サーバ50は、複数個の組合せデータ110をMFP10に送信して、MFP10からユーザによって選択された参照番号を受信してもよい。次いで、画像処理サーバ50は、複数個の合成用データ70に含まれる複数個の参照データの中から、選択済みの参照番号に対応付けられている参照データRDを取得してもよい(図2のT10参照)。そして、画像処理サーバ50は、取得済みの参照データRDを利用して、図14のS500の配色パターン決定処理を実行してもよい。本変形例では、ユーザに配色番号を選択させずに済む。一般的に言うと、「色決定部」は、特定データを利用してM個の色を決定すれよい。
(変形例11)上記の各実施例では、画像処理サーバ50のCPU62がメモリ64内のプログラムを実行することによって、図2、図3、図5、図8、図9等の各処理が実現される。これに代えて、これらの各処理のうちの少なくとも1つの処理は、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2:通信システム、10:多機能機、12:操作部、14:表示部、16:ネットワークインターフェース、20:印刷実行部、22:スキャン実行部、30:制御部、32:CPU、34:メモリ、50:画像処理サーバ、56:ネットワークインターフェース、60:制御部、62:CPU、64:メモリ、70:複数個の合成用データ、80:複数個の配色用データ、SD:スキャンデータ、TD:対象データ、BD:二値データ、RD:参照データ、MLD:中間ラベルデータ、LD:ラベルデータ、CD:変換済みデータ、SI1〜SI4:サムネイル画像、TI:対象画像、RI:参照画像、CI:変換済み画像、TO1〜TO5:対象オブジェクト、CO1〜CO5:変換済みオブジェクト、BO:背景オブジェクト

Claims (9)

  1. 画像処理装置であって、
    複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する対象データ取得部と、
    前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データであって、当該対象オブジェクトを表わす画素数を含む前記特徴データを算出する算出部と、
    前記複数個の対象オブジェクトの複数個の前記特徴データを利用して前記対象データを変換して、変換済みデータを生成する変換部であって、前記変換済みデータは、前記複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす、前記変換部と、
    前記変換済みデータを出力して、前記変換済み画像の印刷を印刷実行部に実行させる出力部と、を備え、
    前記変換部は、
    前記複数個の対象オブジェクトのうちの第1の対象オブジェクトの前記特徴データに含まれる前記画素数が第1の閾値以上である場合に、前記第1の対象オブジェクトの前記特徴データが第1の特徴を示すと判断して、前記変換済み画像が、前記第1の対象オブジェクトに代えて、2色以上を示す第1の変換済みオブジェクトを含むように、前記対象データ内の前記第1の対象オブジェクトを表わす各第1画素の各画素値を変換し、
    前記複数個の対象オブジェクトのうち、前記第1の対象オブジェクトとは異なる第2の対象オブジェクトの前記特徴データに含まれる前記画素数が前記第1の閾値未満である場合に、前記第2の対象オブジェクトの前記特徴データが前記第1の特徴とは異なる第2の特徴を示すと判断して、前記変換済み画像が、前記第2の対象オブジェクトに代えて、単色を示す第2の変換済みオブジェクトを含むように、前記対象データ内の前記第2の対象オブジェクトを表わす各第2画素の各画素値を変換
    前記変換済み画像が印刷されるべき用紙のサイズが第1のサイズである場合に、第1の所定値を第1の閾値として利用し、
    前記変換済み画像が印刷されるべき用紙のサイズが前記第1のサイズよりも大きい第2のサイズである場合に、前記第1の所定値よりも大きい第2の所定値を前記第1の閾値として利用する、
    画像処理装置。
  2. 画像処理装置であって、
    複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する対象データ取得部と、
    前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データであって、当該対象オブジェクトの密度を含む前記特徴データを算出する算出部と、
    前記複数個の対象オブジェクトの複数個の前記特徴データを利用して前記対象データを変換して、変換済みデータを生成する変換部であって、前記変換済みデータは、前記複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす、前記変換部と、
    前記変換済みデータを出力する出力部と、を備え、
    前記変換部は、
    前記複数個の対象オブジェクトのうちの第1の対象オブジェクトの前記特徴データに含まれる前記密度が第2の閾値以上である場合に、前記第1の対象オブジェクトの前記特徴データが第1の特徴を示すと判断して、前記変換済み画像が、前記第1の対象オブジェクトに代えて、2色以上を示す第1の変換済みオブジェクトを含むように、前記対象データ内の前記第1の対象オブジェクトを表わす各第1画素の各画素値を変換し、
    前記複数個の対象オブジェクトのうち、前記第1の対象オブジェクトとは異なる第2の対象オブジェクトの前記特徴データに含まれる前記密度が前記第2の閾値未満である場合に、前記第2の対象オブジェクトの前記特徴データが前記第1の特徴とは異なる第2の特徴を示すと判断して、前記変換済み画像が、前記第2の対象オブジェクトに代えて、単色を示す第2の変換済みオブジェクトを含むように、前記対象データ内の前記第2の対象オブジェクトを表わす各第2画素の各画素値を変換する、
    画像処理装置。
  3. 画像処理装置であって、
    複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する対象データ取得部と、
    複数個の色を含む特定画像を表わす特定データを取得する特定データ取得部と、
    前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データを算出する算出部と、
    前記複数個の対象オブジェクトの複数個の前記特徴データを利用して前記対象データを変換して、変換済みデータを生成する変換部であって、前記変換済みデータは、前記複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす、前記変換部と、
    前記変換済みデータを出力する出力部と、を備え、
    前記変換部は、
    前記複数個の対象オブジェクトのうちの第1の対象オブジェクトの前記特徴データが、第1の特徴を示す場合に、前記対象データ内の前記第1の対象オブジェクトを表わす各第1画素の各位置に対応する前記特定データ内の各位置に存在する各対応画素の各画素値を抽出して、前記対象データ内の前記各第1画素の各画素値を、前記特定データ内の前記各対応画素の各画素値に一致する各値に変換することによって、前記第1の対象オブジェクトに代えて、2色以上の色を示す第1の変換済みオブジェクトを含む前記変換済み画像を表わす前記変換済みデータを生成し、
    前記複数個の対象オブジェクトのうち、前記第1の対象オブジェクトとは異なる第2の対象オブジェクトの前記特徴データが、前記第1の特徴とは異なる第2の特徴を示す場合に、前記特定データ内の複数個の画素の複数個の画素値の中から1個の画素値を選択して、前記対象データ内の前記第2の対象オブジェクトを表わす各第2画素の各画素値の全てを、選択済みの前記1個の画素値に一致する値に変換することによって、前記第2の対象オブジェクトに代えて、選択済みの前記1個の画素値に対応する単色を示す第2の変換済みオブジェクトを含む前記変換済み画像を表わす前記変換済みデータを生成する、
    画像処理装置。
  4. 前記変換部は、前記特定データ内の前記複数個の画素の前記複数個の画素値の出現頻度を算出して、最も高い出現頻度を有する前記1個の画素値を選択する、請求項3に記載の画像処理装置。
  5. 前記画像処理装置は、さらに、
    前記対象データを構成する複数個の対象画素のそれぞれについて、当該対象画素が、所定の濃度以上を有する注目画素であるのか否かを判断する判断部を備え、
    2個以上の前記注目画素を複数個の画素グループに分類することによって、前記複数個の画素グループによって表わされる前記複数個の対象オブジェクトを決定するオブジェクト決定部と、を備える、請求項1から4のいずれか一項に記載の画像処理装置。
  6. 前記対象データ取得部は、第1の媒体サイズに対応する元データを縮小化して、前記第1の媒体サイズよりも小さい第2の媒体サイズに対応する前記対象データを取得し、
    前記画像処理装置は、さらに、
    第1の指示が与えられる場合に、前記第1の媒体サイズに対応するテンプレートデータ内に前記変換済みデータを書き込んで、出力データを生成する生成部を備え、
    前記出力部は、
    前記第1の指示が与えられる場合に、前記出力データを出力して、前記第1の媒体サイズを有する印刷媒体への印刷を印刷実行部に実行させ、
    前記第1の指示とは異なる第2の指示が与えられる場合に、前記変換済みデータを前記印刷実行部に出力して、前記第2の媒体サイズを有する印刷媒体への印刷を前記印刷実行部に実行させる、請求項1からのいずれか一項に記載の画像処理装置。
  7. 画像処理装置のためのコンピュータプログラムであって、
    前記画像処理装置に搭載されるコンピュータに、以下の各処理、即ち、
    複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する対象データ取得処理と、
    前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データであって、当該対象オブジェクトを表わす画素数を含む前記特徴データを算出する算出処理と、
    前記複数個の対象オブジェクトの複数個の前記特徴データを利用して前記対象データを変換して、変換済みデータを生成する変換処理であって、前記変換済みデータは、前記複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす、前記変換処理と、
    前記変換済みデータを出力して、前記変換済み画像の印刷を印刷実行部に実行させる出力処理と、を実行させ
    前記変換処理では、
    前記複数個の対象オブジェクトのうちの第1の対象オブジェクトの前記特徴データに含まれる前記画素数が第1の閾値以上である場合に、前記第1の対象オブジェクトの前記特徴データが第1の特徴を示すと判断して、前記変換済み画像が、前記第1の対象オブジェクトに代えて、2色以上を示す第1の変換済みオブジェクトを含むように、前記対象データ内の前記第1の対象オブジェクトを表わす各第1画素の各画素値を変換し、
    前記複数個の対象オブジェクトのうち、前記第1の対象オブジェクトとは異なる第2の対象オブジェクトの前記特徴データに含まれる前記画素数が前記第1の閾値未満である場合に、前記第2の対象オブジェクトの前記特徴データが前記第1の特徴とは異なる第2の特徴を示すと判断して、前記変換済み画像が、前記第2の対象オブジェクトに代えて、単色を示す第2の変換済みオブジェクトを含むように、前記対象データ内の前記第2の対象オブジェクトを表わす各第2画素の各画素値を変換
    前記変換済み画像が印刷されるべき用紙のサイズが第1のサイズである場合に、第1の所定値を第1の閾値として利用し、
    前記変換済み画像が印刷されるべき用紙のサイズが前記第1のサイズよりも大きい第2のサイズである場合に、前記第1の所定値よりも大きい第2の所定値を前記第1の閾値として利用する、
    コンピュータプログラム。
  8. 画像処理装置のためのコンピュータプログラムであって、
    前記画像処理装置に搭載されるコンピュータに、以下の各処理、即ち、
    複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する対象データ取得処理と、
    前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データであって、当該対象オブジェクトの密度を含む前記特徴データを算出する算出処理と、
    前記複数個の対象オブジェクトの複数個の前記特徴データを利用して前記対象データを変換して、変換済みデータを生成する変換処理であって、前記変換済みデータは、前記複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす、前記変換処理と、
    前記変換済みデータを出力する出力処理と、を実行させ
    前記変換処理では、
    前記複数個の対象オブジェクトのうちの第1の対象オブジェクトの前記特徴データに含まれる前記密度が第2の閾値以上である場合に、前記第1の対象オブジェクトの前記特徴データが第1の特徴を示すと判断して、前記変換済み画像が、前記第1の対象オブジェクトに代えて、2色以上を示す第1の変換済みオブジェクトを含むように、前記対象データ内の前記第1の対象オブジェクトを表わす各第1画素の各画素値を変換し、
    前記複数個の対象オブジェクトのうち、前記第1の対象オブジェクトとは異なる第2の対象オブジェクトの前記特徴データに含まれる前記密度が前記第2の閾値未満である場合に、前記第2の対象オブジェクトの前記特徴データが前記第1の特徴とは異なる第2の特徴を示すと判断して、前記変換済み画像が、前記第2の対象オブジェクトに代えて、単色を示す第2の変換済みオブジェクトを含むように、前記対象データ内の前記第2の対象オブジェクトを表わす各第2画素の各画素値を変換する、
    コンピュータプログラム。
  9. 画像処理装置のためのコンピュータプログラムであって、
    前記画像処理装置に搭載されるコンピュータに、以下の各処理、即ち、
    複数個の対象オブジェクトを含む対象画像を表わす対象データを取得する対象データ取得処理と、
    複数個の色を含む特定画像を表わす特定データを取得する特定データ取得処理と、
    前記複数個の対象オブジェクトのそれぞれについて、当該対象オブジェクトの特徴を示す特徴データを算出する算出処理と、
    前記複数個の対象オブジェクトの複数個の前記特徴データを利用して前記対象データを変換して、変換済みデータを生成する変換処理であって、前記変換済みデータは、前記複数個の対象オブジェクトに代えて、複数個の変換済みオブジェクトを含む変換済み画像を表わす、前記変換処理と、
    前記変換済みデータを出力する出力処理と、を実行させ
    前記変換処理では、
    前記複数個の対象オブジェクトのうちの第1の対象オブジェクトの前記特徴データが、第1の特徴を示す場合に、前記対象データ内の前記第1の対象オブジェクトを表わす各第1画素の各位置に対応する前記特定データ内の各位置に存在する各対応画素の各画素値を抽出して、前記対象データ内の前記各第1画素の各画素値を、前記特定データ内の前記各対応画素の各画素値に一致する各値に変換することによって、前記第1の対象オブジェクトに代えて、2色以上の色を示す第1の変換済みオブジェクトを含む前記変換済み画像を表わす前記変換済みデータを生成し、
    前記複数個の対象オブジェクトのうち、前記第1の対象オブジェクトとは異なる第2の対象オブジェクトの前記特徴データが、前記第1の特徴とは異なる第2の特徴を示す場合に、前記特定データ内の複数個の画素の複数個の画素値の中から1個の画素値を選択して、前記対象データ内の前記第2の対象オブジェクトを表わす各第2画素の各画素値の全てを、選択済みの前記1個の画素値に一致する値に変換することによって、前記第2の対象オブジェクトに代えて、選択済みの前記1個の画素値に対応する単色を示す第2の変換済みオブジェクトを含む前記変換済み画像を表わす前記変換済みデータを生成する、
    コンピュータプログラム。
JP2013173282A 2013-08-23 2013-08-23 画像処理装置 Active JP6163964B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013173282A JP6163964B2 (ja) 2013-08-23 2013-08-23 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013173282A JP6163964B2 (ja) 2013-08-23 2013-08-23 画像処理装置

Publications (2)

Publication Number Publication Date
JP2015041957A JP2015041957A (ja) 2015-03-02
JP6163964B2 true JP6163964B2 (ja) 2017-07-19

Family

ID=52695860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013173282A Active JP6163964B2 (ja) 2013-08-23 2013-08-23 画像処理装置

Country Status (1)

Country Link
JP (1) JP6163964B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2747328C2 (ru) * 2016-10-24 2021-05-04 Се Са Дирижабль и способ его изготовления

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006235222A (ja) * 2005-02-24 2006-09-07 Oki Data Corp 印刷装置
JP4135752B2 (ja) * 2006-06-12 2008-08-20 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像処理方法及び画像処理プログラム
JP2010081065A (ja) * 2008-09-24 2010-04-08 Fuji Xerox Co Ltd 画像形成装置および画像形成プログラム
JP2011004028A (ja) * 2009-06-17 2011-01-06 Konica Minolta Business Technologies Inc 画像形成装置
JP5589700B2 (ja) * 2010-09-14 2014-09-17 株式会社リコー 画像処理装置、画像形成装置、画像処理方法、画像処理プログラム及び記録媒体
JP2012253775A (ja) * 2011-06-06 2012-12-20 Toshiba Corp 画像形成装置、および画像形成方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2747328C2 (ru) * 2016-10-24 2021-05-04 Се Са Дирижабль и способ его изготовления

Also Published As

Publication number Publication date
JP2015041957A (ja) 2015-03-02

Similar Documents

Publication Publication Date Title
CN101123669B (zh) 图像转换方法和设备及具有该转换方法和设备的成像设备
JP5304827B2 (ja) 制御装置
US7616216B2 (en) Digital content creation system, program product, and storage medium
JP5477320B2 (ja) 画像処理装置
JP6808325B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5360112B2 (ja) 制御装置
CN112000303A (zh) 可实现水印打印的处理方法、装置、电子设备和存储介质
JP5924207B2 (ja) 画像処理装置及びプログラム
US7656414B2 (en) System and method for determination of gray for CIE color conversion using chromaticity
JP6163964B2 (ja) 画像処理装置
US8139268B2 (en) Image processing apparatus and image processing method of generating monochrome image data from two color components
JP6197478B2 (ja) 画像処理装置
JP2010050832A (ja) 画像処理装置、画像処理方法、プログラムおよび記録媒体
US9355473B2 (en) Image forming apparatus having color conversion capability
US9473676B2 (en) Image processing apparatus
JP5672340B2 (ja) 制御装置
JP2011228764A (ja) 画像処理装置及びそのプログラム
JP2011077697A (ja) 画像処理装置、画像形成装置、及び画像処理プログラム
JP2012070115A (ja) 印刷データ出力装置、印刷データ出力方法およびプログラム
JP2011228763A (ja) 画像処理装置及びそのプログラム
JP2001320593A (ja) 画像処理装置およびそれを備えた画像形成装置ならびに画像処理方法
WO2012091180A1 (ja) 文字検出装置、文字検出方法、および記録媒体
JP6740729B2 (ja) データ変換装置、データ変換方法およびデータ変換プログラム
JP2006260533A (ja) 画像処理装置及び画像処理方法
JP2021052261A (ja) 画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170428

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170605

R150 Certificate of patent or registration of utility model

Ref document number: 6163964

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150