(57)【特許請求の範囲】
【請求項１】
外部機器からの一画面分の入力画像のデータをエッジ強調処理して出力画像のデータを作成するためのエッジ強調度合を示すエッジ処理テーブルと、
一画面内に存在する複数の画像領域毎に基準座標情報とサイズ情報を対応させた画像領域テーブルと、
前記エッジ処理テーブル及び前記画像領域テーブルを格納したメモリと、
該メモリから読み出した前記エッジ処理テーブルと前記画像領域テーブルとに基づいて一画面内に存在するサイズの異なる画像領域に異なるエッジ強調処理を行う画像処理部と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記画像領域テーブルは、更に前記画像領域毎の回転有無情報を含み、前記画像処理部は、前記画像領域テーブルにより選択した処理領域の画像が回転していることを認識したときは該回転画像に応じたエッジ強調処理を行うことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記エッジ処理テーブルには、処理を行うべく所定のメモリ領域に画像を横向き又は縦向きのいずれかで格納したときの該画像に対するエッジ強調係数が予め設定されており、前記画像処理部は、前記所定のメモリ領域内に横向き又は縦向きで格納される画像の向きが前記エッジ処理テーブルのエッジ強調係数が対応する画像の向きと異なる向きの場合には、前記エッジ強調係数の上下の値と左右の値を入れ替え、前記サイズ情報から得られるｙ方向のサイズとｘ方向のサイズとを入れ替えて用いることを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記エッジ処理テーブルは、入力画像のサイズに一対一に対応する係数列を備え、前記画像処理部は、出力画像に応じてエッジ強調処理を行うか否かを示すエッジ強調処理可否テーブルを備えて、該エッジ強調処理可否テーブルと前記エッジ処理テーブルとにより出力画像に対しエッジ強調処理を実行または非実行とすることを特徴とする請求項１ないし３記載の画像処理装置。
【請求項５】
前記エッジ処理テーブルは、外部機器の機種毎に対応する係数列を有して構成されることを特徴とする請求項１ないし４記載の画像処理装置。
【請求項６】
前記画像処理部は、前記外部機器から送信される画像処理用の係数データを格納するメモリ領域を更に備え、前記外部機器から送信される画像処理用の係数データが送信されてきたとき前記エッジ強調処理前の画像処理を前記送信された係数データを用いて行うと共に前記各テーブルの係数を前記送信された係数と入れ替えて処理を行うことを特徴とする請求項１ないし５記載の画像処理装置。
【請求項７】
処理対象の画像のサイズ情報、該画像を処理するべく所定のメモリ領域に格納したときの該画像の所定の向きに対応して予め設定されるエッジ強調係数及び前記所定のメモリ領域に格納される処理対象の画像の回転有無情報を格納するメモリと、
該メモリに格納される回転有無情報により処理対象の画像の回転が認識されたときには、前記エッジ強調係数及び前記サイズ情報を画像の回転に応じて変換して用いることにより該回転画像に応じたエッジ強調処理を行う画像処理部と、
を備えることを特徴とする画像処理装置。
【請求項８】
前記エッジ強調係数は、前記所定のメモリ領域に画像を横向き又は縦向きのいずれかで格納したときの該画像に対するエッジ強調度合を示し、前記画像処理部は、前記所定のメモリ領域内に横向き又は縦向きで格納される画像の向きが前記エッジ強調係数が対応する画像の向きと異なる向きの場合には、前記エッジ強調係数の上下の値と左右の値を入れ替え、前記サイズ情報から得られるｙ方向のサイズとｘ方向のサイズとを入れ替えて用いることを特徴とする請求項７記載の画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、外部機器から入力される画像情報にエッジ強調処理を施して出力する画像処理装置に関する。
【０００２】
【従来の技術】
近年、ディジタルスチルカメラが普及している。このディジタルスチルカメラは、撮影した画像データをディジタルデータとして記憶ディスク装置に格納している。その画像データは、外部の又は内蔵の表示装置に表示され、あるいはインタフェースを介して接続される印刷装置で印刷して、随時鑑賞することができる。そして、その印刷出力装置としてのプリンタの需要が高まってきている。
【０００３】
プリンタは、データ用メモリ、ワーク用メモリ、印刷用メモリ等を有してカメラとの通信制御、画像処理、印刷制御などプリンタ全体を制御する制御装置を備えている。プリンタは、印刷の際にはシリアルＩ／Ｆ（インタフェース）を介してディジタルスチルカメラ（以下、単にカメラという）に接続される。一般に、カメラから送信される画像データはＪＰＥＧなどで圧縮されており、この圧縮画像データがそのままの形式でプリンタ側に送信される。プリンタは、その圧縮画像データをデータ用メモリに格納して画像処理と印刷処理を行う。
【０００４】
図２０は、そのようなプリンタによる印刷処理の動作を示すフローチャートである。同図に示すように、印刷スタートキーが入力操作されると（ステップＳ１）、カメラとの通信を開始し、カメラから画像データ（ＪＰＥＧ圧縮データ）を受信してデータ用メモリに格納する（ステップＳ２）。そして、その画像データに対してＪＰＥＧ伸長を行う（ステップＳ３）。この処理では、ＪＰＥＧ伸長処理により生成された輝度及び色差データ（Ｙ，Ｃｂ，Ｃｒデータ）は、ワーク用メモリ上に展開される。
【０００５】
次に、その「Ｙ、Ｃｂ、Ｃｒ」データを分光データの「Ｒ、Ｇ、Ｂ」データに変換する（ステップＳ４）。この変換した「Ｒ、Ｇ、Ｂ」データ（以下、ＲＧＢデータと記載）もワーク用メモリに格納される。続いて、このＲＧＢデータに対して、画像の拡大縮小や、減法混色の三原色によるフルカラー印刷のための印刷データ「Ｙ、Ｍ、Ｃ」への色変換処理等を行い、このように画像処理をした１画面分の画像データを印刷用メモリに格納する（ステップＳ５）。
【０００６】
この画像の拡大縮小などの処理が終了した一画面分の画像データの印刷用メモリ上への格納が終わると、この印刷用メモリ上の一画面分の画像データ全体に対して一様にエッジ強調処理を行う（ステップＳ６）。そして、このエッジ強調処理の終了した画像データを印刷用メモリから読み出して印刷を行う（ステップＳ７）。
【０００７】
図２１(a),(b) は、上記の印刷処理に使用されるテーブルであり、同図(c),(d) は、それらテーブルによって指定される画像のサイズと印刷用メモリ上のアドレスを模式的に示す図である。同図(a) のテーブルは、ＲＯＭ等に格納されており、拡大縮小後の画像のサイズ情報と印刷用メモリ上のアドレスを示している。同図(a) の最上行から順に示す「０、０」、「１、０」、「１、２４０」・・・の各行の第１要素「０」、「１」、「１」・・・は、画像の拡大縮小処理後のサイズ情報であり、同図(b) に示すように、「０」はサイズ「６４０×４８０」、「１」はサイズ「３２０×２４０」、「２」（同図(a) には図示していない）は「１６０×１２０」を夫々示している。このテーブルを参照することで、上記のサイズ情報「０」、「１」、「２」・・・から実際の画像サイズを得ることができる。
【０００８】
そして、各行の第２要素「０」、「０」、「２４０」・・・は、画像処理において最初に書き込みが行われる印刷用メモリ上のアドレスを示している。したがって、同図(a) のテーブルの１行目の「０、０」は、サイズが「６４０×４８０」であり最初の画素のアドレスが「０」であることを示している。また、２行目の「１、０」は、サイズが「３２０×２４０」であり最初の画素のアドレスが「０」であることを示している。そして、３目の「１、２４０」は、サイズが「３２０×２４０」であり最初の画素のアドレスが「２４０」であることを示している。３行目以下も同様である。
【０００９】
同図(c) は、６４０×４８０ドット構成の画面Ｇ０の画素の書き込みアドレスの印刷用メモリ上の配置を示したものであり、左上の最初の画素は、印刷用メモリ上のアドレス「０」に配置される。この画面Ｇ０は、同図(a) のテーブルの１行目のデータ「０、０」によって指定される画面構成を示している。
【００１０】
この６４０×４８０ドット構成の画面Ｇ０は、左上のアドレス「０」から４８０個の画素が順次左下に配置される。これら４８０個の画素のアドレスは、それぞれ「０」、「１」、「２」、・・・、「４７９」である。したがって同図(c) の６４０×４８０ドット構成の画面を同図(d) に示すように４分割して３２０×２４０ドット構成の画面Ｇ１、Ｇ２、Ｇ３及びＧ４としたとき、左下の分割画面Ｇ２の最初の画素Ｐ１の書き込みアドレスは「２４０」である。この分割画面Ｇ２は、同図(a) のテーブルの３行目のデータ「１、２４０」によって指定される画面構成を示している。また、左上の分割画面Ｇ１は、同図(a) のテーブルの２行目のデータ「１、０」によって指定される画面構成を示している。
【００１１】
同図(c),(d) のアドレス「０」の右隣の画素のアドレスは「４８０」であり、それから下方へ「４８１」、「４８２」、・・・、「９５９」まで４８０個の画素のアドレスが続いている。これを右方へ順次繰り返して右上のアドレスは「３０６７２０」、これから右下へアドレス「３０７１９９」まで最終の４８０個の画素が配置される。これによって、同図(d) の右上の分割画面Ｇ３の最初の画素Ｐ２の書き込みアドレスは「１５３６０」であり、右下の分割画面Ｇ４の最初の画素Ｐ３の書き込みアドレスは「１５３８４０」である。上記の分割画面Ｇ３は、同図(a) のテーブルの４行目のデータ「１、１５３６０」によって指定される画面構成を示しており、分割画面Ｇ４は、同図(a) のテーブルの５行目のデータ「１、１５３８４０」によって指定される画面構成を示している。
【００１２】
【発明が解決しようとする課題】
ところで、エッジ強調処理は、前述したようにホスト機器（この場合はカメラ）からの入力画像のサイズや画像処理後の印刷画像のサイズによらず、いずれに対しても同じように行われる。しかしながら、このように一律にエッジ強調処理を行うと、一つの画像を拡大した場合と縮小した場合とでは、拡大した方の画像はボケたように見え、縮小した方の画像はシャープに見える。すなわち、上記のように、拡大、縮小、いずれの画像に対しても、同じ度合いでエッジ強調処理を行うと、拡大したものにはシャープさが足りないという不満が生じ、縮小したものにはシャープ過ぎるという問題が発生する。また、画像処理後の印刷画像のサイズが同じ大きさであっても、入力画像のサイズが異なると、同様の問題が発生する。
【００１３】
本発明の課題は、入力画像のサイズや印刷画像のサイズに対応して適正なエッジ強調処理を行う画像処理装置を提供することである。
【００１４】
【課題を解決するための手段】
以下に、本発明の画像処理装置の構成を述べる。
本発明の画像処理装置は、外部機器からの一画面分の入力画像のデータをエッジ強調処理して出力画像のデータを作成するためのエッジ強調度合を示すエッジ処理テーブルと、一画面内に存在する複数の画像領域毎に基準座標情報とサイズ情報を対応させた画像領域テーブルと、前記エッジ処理テーブル及び前記画像領域テーブルを格納したメモリと、該メモリから読み出した前記エッジ処理テーブルと前記画像領域テーブルとに基づいて一画面内に存在するサイズの異なる画像領域に異なるエッジ強調処理を行う画像処理部とを備えて構成される。
【００１５】
例えば請求項2記載のように、前記画像領域テーブルは、更に前記画像領域毎の回転有無情報を含み、前記画像処理部は、前記画像領域テーブルにより選択した処理領域の画像が回転していることを認識したときは該回転画像に応じたエッジ強調処理を行うように構成される。
【００１６】
また、請求項3記載のように、前記エッジ処理テーブルには、処理を行うべく所定のメモリ領域に画像を横向き又は縦向きのいずれかで格納したときの該画像に対するエッジ強調係数が予め設定されており、前記画像処理部は、前記所定のメモリ領域内に横向き又は縦向きで格納される画像の向きが前記エッジ処理テーブルのエッジ強調係数が対応する画像の向きと異なる向きの場合には、前記エッジ強調係数の上下の値と左右の値を入れ替え、前記サイズ情報から得られるｙ方向のサイズとｘ方向のサイズとを入れ替えて用いるように構成される。
【００１７】
また、請求項４記載のように、前記エッジ処理テーブルは、入力画像のサイズに一対一に対応する係数列を備え、前記画像処理部は、出力画像に応じてエッジ強調処理を行うか否かを示すエッジ強調処理可否テーブルを備えて、該エッジ強調処理可否テーブルと前記エッジ処理テーブルとにより出力画像に対しエッジ強調処理を実行または非実行とするように構成される。
【００１８】
また、請求項５記載のように、前記エッジ処理テーブルは、外部機器の機種毎に対応する係数列を有して構成される。
【００１９】
また、例えば請求項６記載のように、前記画像処理部は、前記外部機器から送信される画像処理用の係数データを格納するメモリ領域を更に備え、前記外部機器から送信される画像処理用の係数データが送信されてきたとき前記エッジ強調処理前の画像処理を前記送信された係数データを用いて行うと共に前記各テーブルの係数を前記送信された係数と入れ替えて処理を行うように構成される。
【００２０】
また、本発明の画像処理装置は、処理対象の画像のサイズ情報、該画像を処理するべく所定のメモリ領域に格納したときの該画像の所定の向きに対応して予め設定されるエッジ強調係数及び前記所定のメモリ領域に格納される処理対象の画像の回転有無情報を格納するメモリと、該メモリに格納される回転有無情報により処理対象の画像の回転が認識されたときには、前記エッジ強調係数及び前記サイズ情報を画像の回転に応じて変換して用いることにより該回転画像に応じたエッジ強調処理を行う画像処理部とを備えて構成される。また、この画像処理装置において、前記エッジ強調係数は、前記所定のメモリ領域に画像を横向き又は縦向きのいずれかで格納したときの該画像に対するエッジ強調度合を示し、前記画像処理部は、前記所定のメモリ領域内に横向き又は縦向きで格納される画像の向きが前記エッジ強調係数が対応する画像の向きと異なる向きの場合には、前記エッジ強調係数の上下の値と左右の値を入れ替え、前記サイズ情報から得られるｙ方向のサイズとｘ方向のサイズとを入れ替えて用いるように構成される。
【００２１】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら説明する。
図１は、第１の実施の形態における画像処理装置の構成を示すブロック図である。同図に示す画像処理装置１は、例えばプリンタのインタフェースコントローラ部であり、印刷制御回路２は、例えばプリンタのエンジンコントローラ部である。上記の画像処理装置１には、外部のホスト機器であるディジタルカメラ（以下、単にカメラという）３がシリアルインタフェース（Ｉ／Ｆ）を介して接続される。
【００２２】
画像処理装置１は、ＣＰＵ４を備え、ＣＰＵ４にはユーザが印刷開始を指示するための印刷スタートキー５、カメラ３から入力される画像データを格納するデータ用メモリ６、その画像データの拡大・縮小と拡大・縮小後のデータから印刷用データへの変換と変換後のデータへのエッジ強調処理等の画像処理をするために一時的に使用するワーク用メモリ７、画像処理後の一画面分の印刷画像データを格納する印刷用メモリ８、処理プログラムと係数を格納したＲＯＭ９等が接続されている。印刷制御回路２は、印刷用メモリ８から読み出した印刷画像データに基づきプリンタエンジン部を制御して印刷を実行する。
【００２３】
本実施の形態においては、詳しくは後述するが、カメラ３から入力される入力画像データ（以下、単に入力画像ともいう）のサイズ、および画像処理後の印刷画像データ（以下、単に印刷画像ともいう）に応じて、エッジ強調の度合（係数）を変更して画像処理を行う。
【００２４】
図２(a),(b) は、本実施の形態において、外部機器として用いられるカメラ３の入力画像のサイズを示す図である。最近のディジタルカメラは、撮影時に画像のサイズ（画素数）を、例えば６４０×４８０ドット（以下、ＶＧＡサイズという）と３２０×２４０ドット（以下、ＱＶＧＡサイズという）の２種類の内から選択できるようになっている。一方、プリンタの印刷画像の解像度は、同図(c) に示すように通常は一種頬である。同図(c) は、図２１(c) に示した画像構成と同様の６４０×４８０ドットの解像度を示している。
【００２５】
このようにプリンタの解像度が１種類であるため、プリンタでは、カメラからの入力画像を印刷する際に、プリンタの解像度に合わせるように画像サイズの変換を行っている。この場合、上記のＶＧＡサイズとＱＶＧＡサイズの２つの撮影モードがある場合、どちらか一方の入力画像に対しては、画像サイズの変換をしなくて済むような解像度でプリンタの設計を行うのが効率的である。
【００２６】
本実施の形態では説明の便宜上、カメラ３の撮影モードを図２(a) に示すＶＧＡサイズと同図(b) に示すＱＶＧＡサイズの２種とし、プリンタの解像度を同図(c) に示す６４０×４８０ドットとする。つまり入力画像がＶＧＡサイズのときは画像サイズの変換が不要であり、入力画像がＱＶＧＡサイズのとき画像サイズの変換が必要な構成とする。
【００２７】
図３(a) は、本実施の形態において使用されるエッジ強調係数のテーブル（エッジ処理テーブル）の例を示す図であり。同図(b),(c),(d) は、そのエッジ処理テーブルの内容を説明する図である。同図(a) に示すように、エッジ処理テーブルは３つの係数「ａ，ｂ，ｃ」を１組として構成される。そして、ＶＧＡサイズの入力画像に対応するエッジ強調係数「ａ，ｂ，ｃ」として例えば「−１，−１，５」が用意され、ＱＶＧＡサイズの入力画像に対応するエッジ強調係数「ａ，ｂ，ｃ」として例えば「−１／８，−１／８，３／２」が用意される。このエッジ強調係数「ａ，ｂ，ｃ」は着目画素データに対してエッジ強調の演算をする際の「重み」データであり、同図(b) に示すように、着目画素を中心にした９個の画素に対して、中心の着目画素には係数「ｃ」、左右の画素には夫々係数「ａ」、そして上下の画素には夫々係数「ｂ」が割り当てられる。斜め方向の４個の画素には常に係数「０」が割り当てられるため、同図(a) のエッジ処理テーブルへの格納は省略される。これらの係数は夫々割り当てられた位置の画素データに掛けられ、掛けた値全体を合算した値が着目画素の値とされる。
【００２８】
この同図(b) の係数割り当て配置に基づいて、ＶＧＡサイズ用のエッジ強調係数「−１，−１，５」は、同図(c) のように着目画素Ｐ１１を中心にして配分され、ＱＶＧＡサイズ用のエッジ強調係数「−１／８，−１／８，３／２」は、同図(d) のように着目画素Ｐ１２を中心にして配分される。ＶＧＡサイズ用のエッジ強調係数「−１，−１，５」は強めのエッジ強調係数であり、大型画面となるＶＧＡサイズの画像の輪郭をボケないように強目に強調する。一方、ＱＶＧＡサイズ用のエッジ強調係数「−１／８，−１／８，３／２」は、弱めのエッジ強調係数であり、小型画面となるＱＶＧＡサイズの画像の輪郭がキツ目にならないように控え目に強調する。これらのエッジ強調係数の画像サイズに対応する値は実験値に基づいて経験的に設定される。
【００２９】
図４は、上記の構成において画像処理装置１のＣＰＵ４により行われる処理の動作を示すフローチャートである。この処理は、印刷スタートキー５が押されることにより開始される（ステップＳ１０）。
【００３０】
先ず、ＣＰＵ４はカメラ３と通信を行い、印刷する画像データを受信し、データ用メモリ６に格納する（ステップＳ１１）。カメラ３内部での画像データはＪＰＥＧで圧縮されたものでありプリンタ側へはそのままの形式で送信される。
【００３１】
ＣＰＵ４は、上記のＪＰＥＧ圧縮された入力画像データを受信すると、この受信画像データのＪＰＥＧ伸長後のサイズ（以下、入力画像サイズという）を求める（ステップＳ１２）。この入力画像サイズは、ＪＰＥＧ圧縮された入力画像データのヘッダ部分を解析することで得ることができる。本実施の形態においては入力画像のサイズは、前述したように、ＶＧＡサイズとＱＶＧＡサイズの２種類のみである。
【００３２】
次に上記の解析結果を参照し（ステップＳ１３）、ＶＧＡサイズなら（Ｓ１３がＹ）、ＣＰＵ４の内部レジスタに「１」を格納する（ステップＳ１４）。また、ＱＶＧＡサイズなら（Ｓ１３がＮ）、内部レジスタに「０」を格納する（ステップＳ１５）。
【００３３】
この解析処理が終わると、ＣＰＵ４は、入力画像データのＪＰＥＧ伸長を行い更に「Ｙ、Ｃｂ、Ｃｒ」データを「Ｒ、Ｇ、Ｂ」データに変換する処理を行い、その結果をワーク用メモリ７に格納する（ステップＳ１６）。
【００３４】
そして、先に内部レジスタに格納した値を参照し、その値が「０」か否かを判別する（ステップＳ１７）。この処理は、入力画像がＱＶＧＡサイズの画像であるか否（ＶＧＡサイズ）かを判別する処理である。
【００３５】
この判別で内部レジスタの値が「０」すなわち入力画像がＱＶＧＡサイズのときには（Ｓ１７がＹ）、図２(b) の画像サイズから図２(c) の画像サイズに変換する画像の拡大処理を行って（ステップＳ１８）、「Ｙ、Ｍ、Ｃ」データへ変換する色変換処理等を行い、この変換後の画像データ（以下、出力画像という）を印刷用メモリ８に格納する（ステップＳ１９）。一方、内部レジスタの値が「１」すなわち入力画像がＶＧＡサイズのときには直ちにステップＳ１９を行う。
【００３６】
このように、本実施の形態においては、ステップＳ１３で判別した入力画像のサイズによって、画像処理を異ならせている。すなわち、入力画像がＱＶＧＡサイズのときのみ、サイズ変換のための拡大処理を行っている。ところで、このような画像の拡大処理は拡大後の画像のボケを発生させる。このボケを除去するために、図３(c) に示したようなエッジ強調係数を用いて強めのエッジ強調処理を行う。但し、拡大処理を行っていない画像に対して上記と同じエッジ強調処理をしてしまうと、ザラついた印象の画像になってしまうから、入力画像サイズによってエッジ強調係数を変えるようにしている。
【００３７】
すなわち、本実施例では、上記処理に続いて再び内部レジスタに格納されている値を参照し、その値が「０」か否かを、つまり入力画像がＱＶＧＡサイズ画像であるか否かを判別する（ステップＳ２０）。そして、内部レジスタの値が「０」すなわち入力画像が小さなＱＶＧＡサイズの画像であった場合には（Ｓ２０がＹ）、この画像は拡大処理がなされているので、図３(c) の強めのエッジ強調係数をＲＯＭ９から読みだして（ステップＳ２１）、この読み出した強めのエッジ強調係数を用いて、印刷用メモリ８上の１画面の画像全面に対して一様にエッジ強調処理を行う（ステップＳ２３）。このエッジ強調処理が終わると、印刷制御回路２が印刷用メモリ８から上記の処理済みの印刷画像データを読み出して印刷を行う（ステップＳ２４）。
【００３８】
一方、ステップＳ２０の判別で、内部レジスタの値が「１」の場合は（Ｓ２０がＮ）、この入力画像はＶＧＡサイズであって、そのままのサイズが維持されている。したがって、この場合は図３(d) の弱めのエッジ強調係数をＲＯＭ９から読み出して（ステップＳ２２）、ステップＳ２３、Ｓ２４の処理を行う。
【００３９】
このように、本実施の形態においては、入力画像サイズと画像処理後の印刷画像サイズとの関係に対応する複数のエッジ強調係数を予めエッジ処理テーブルとして設定しておき、拡大処理した画像と拡大処理を行っていない画像とを弁別し、この拡大又は非拡大の画像に応じたエッジ強調係数を用いてエッジ強調処理に強弱の差をもたせ、これによって、画像の拡大又は非拡大に拘らず適正なエッジ強調処理のなされた良質の印刷画像を得るようにしている。
【００４０】
尚、上述の第１の実施の形態では、画像処理後の印刷画像のサイズをＶＧＡサイズのみとして説明しているが、一般に、ディジタルカメラ用のプリンタでは、同一画像を複数並べたパターンを印字するミニラベル印刷機能を持っている場合が多い。
【００４１】
図５(a),(b) は、そのようなミニラベル印刷の印刷画面の例を示す図であり、同図(a) はＱＶＧＡサイズの同一画像が４枚の場合、同図(b) は１６０×１２０サイズの同一画像が１６枚の場合を示している。同図(a) に示す同一画像が４枚の場合は、ＶＧＡサイズの入力画像を縮小してＱＶＧＡサイズにする。或は、ＱＶＧＡサイズの入力画像をサイズ変換しないでそのまま用いる。このようなときは、入力画像サイズと画像処理後の印刷画像サイズによって、エッジ強調度合を変えればよい。勿論、一画面内の個々の画像が小さくなることに応じて、そのような画像に合わせたエッジ強調係数を用いるようにする。
【００４２】
図６は、そのようなミニラベル印刷の場合にも対応できるエッジ強調係数のテーブルである。この図６に示すエッジ処理テーブル１０には、入力画像をＶＧＡサイズとＱＶＧＡサイズの２種類とし、画像処理後の出力画像をＶＧＡサイズ、ＱＶＧＡサイズ、及び１６０×１２０サイズの３種類として、「２種類」×「３種類」、合計「６種類」の組み合わせ（入力画像サイズと出力画像サイズの組み合わせ）に対応する６組の係数列が格納されている。
【００４３】
これら係数列の内、入力画像のサイズと出力画像のサイズが同一の場合の係数列１１及び係数列１５は、夫々図３(a) に示したＱＶＧＡ用の係数列と同一であり、入力画像を拡大して出力画像をＶＧＡサイズとする場合の係数列１４は、図３(a) のＶＧＡ用の係数列と同一である。また、入力画像のサイズに対して出力画像サイズを縦横１／２（面積で１／４）に縮小する場合の係数列１２及び係数列１６は夫々上記とは異なる共通の係数列を用いている。そして、入力画像ＶＧＡ用の出力画像サイズ１６０×１２０に対応する係数列１３は「０、０、１」となっており、結果としてエッジ強調処理が行わなれない係数である。これは、図５(b) に示すように、サイズ１６０×１２０の画像は極めて小さいのでエッジの強調を行わなくても見た目には輪郭が充分明瞭に見えるからである。このように、入力画像と出力画像のサイズによって細かく複数の係数列を設定して処理を行うようにすると、ミニラベル印刷の場合にも対応できる。
【００４４】
図７及び図８(a),(b) は、上記のエッジ処理テーブルを用いて動作するミニラベル印刷の場合にも対応できるエッジ強調処理のフローチャートである。先ず、図７に示すメインフローチャートの処理において、ステップＳ３０〜Ｓ３７の処理は、図４に示した処理のステップＳ１０〜Ｓ１７の処理と同一である。この処理の例では、ステップＳ３７より後の処理が図４の場合と異なる。
【００４５】
すなわち、ステップＳ３７で、先に内部レジスタに格納した値が「０」すなわち入力画像がＱＶＧＡサイズのときには（Ｓ３７がＹ）、詳しくは後述するＱＶＧＡサイズ処理を行い（ステップＳ３８）、一方、内部レジスタの値が「１」すなわち入力画像がＶＧＡサイズのときには（Ｓ３７がＮ）、これも詳しくは後述するＶＧＡサイズ処理を行う（ステップＳ３９）。そして、それらＱＶＧＡサイズ処理又はＶＧＡサイズ処理いずれかの処理の後、「Ｙ、Ｍ、Ｃ」データへ変換する色変換処理等を行い、この変換後の画像データ（出力画像）を印刷用メモリ８に格納し（ステップＳ４０）、この後、エッジ強調処理を行う（ステップＳ４１）。
【００４６】
このエッジ強調処理では、上記ＱＶＧＡサイズ処理又はＶＧＡサイズ処理で拡大又は縮小の処理と共に、ＲＯＭ９のエッジ処理テーブルから読み出されたエッジ強調係数が用いられる。このＱＶＧＡサイズ処理及びＶＧＡサイズ処理を、図８(a),(b) のサブフローチャートを用いて説明する。
【００４７】
図８(a) に示すＱＶＧＡサイズ処理において、先ず画像処理後の出力画像サイズにＶＧＡサイズが指定されているか否かを判別する（ステップＳ３８−１）。そして、出力画像サイズにＶＧＡサイズが指定されていれば（Ｓ３８−１がＹ）、入力画像がＱＶＧＡサイズであるので、３２０×２４０ドットの画像データを６４０×４３０ドットに拡大する画像拡大処理を行い（ステップＳ３８−２）、この入力画像のサイズと出力画像のサイズに対応する係数「−１，−１，５」をＲＯＭ９から読み出して（ステップＳ３８−３）、メインフローチャートの処理に戻る。
【００４８】
また、上記ステップＳ３８−１の判別で、出力画像サイズがＶＧＡサイズでない場合は（Ｓ３８−１がＮ）、続いて更に、出力画像サイズにＱＶＧＡサイズが指定されているか否かを判別する（ステップＳ３８−４）。そして、出力画像サイズにＱＶＧＡサイズが指定されていれば（Ｓ３８−４がＹ）、入力画像がＱＶＧＡサイズであるので、この場合は入出力画像が同一サイズであり、したがって画像拡大・縮小等は行わず直ちに入出力画像が同一サイズの場合の係数「−１／８、−１／８、３／２」をＲＯＭ９から読み出して（ステップＳ３８−３）、メインフローチャートの処理に戻る。
【００４９】
また、出力画像サイズが、上記ステップＳ３８−１の判別でＶＧＡサイズでなく上記ステップＳ３８−４の判別でＱＶＧＡサイズでもない場合は（Ｓ３８−４がＮ）、出力画像サイズに１６０×１２０のサイズが指定されているのであり、この場合は、３２０×２４０のＱＶＧＡサイズの入力画像を、１６０×１２０の１６枚物の出力画像に縮小する画像縮小処理を行った後（ステップＳ３８−６）、この縮小処理に対応する係数「−１／１６、−１／１６、５／４」をＲＯＭ９から読み出して（ステップＳ３８−３）、メインフローチャートの処理に復帰する。
【００５０】
次に、図８(b) に示すＶＧＡサイズ処理において、この場合も先ず画像処理後の出力画像サイズにＶＧＡサイズが指定されているか否かを判別する（ステップＳ３９−１）。そして、出力画像サイズにＶＧＡサイズが指定されていれば（Ｓ３９−１がＹ）、入力画像がＶＧＡサイズであるので、この場合は入出力画像が同一サイズであり、したがって画像拡大・縮小等は行わず直ちに入出力画像が同一サイズの場合の係数「−１／８、−１／８、３／２」をＲＯＭ９から読み出して（ステップＳ３９−２）、メインフローチャートの処理に戻る。
【００５１】
また、上記ステップＳ３８−１の判別で、出力画像サイズがＶＧＡサイズでない場合は（Ｓ３９−１がＮ）、続いて、出力画像サイズにＱＶＧＡサイズが指定されているか否かを判別し（ステップＳ３９−３）、ＱＶＧＡサイズが指定されていれば（Ｓ３９−３がＹ）、入力画像がＶＧＡサイズであるので、この６４０×４３０ドットの画像データをＱＶＧＡサイズの３２０×２４０ドットに縮小する画像縮小処理を行い（ステップＳ３９−４）、この入力画像のサイズと出力画像のサイズに対応する係数「−１／１６，−１／１６，５／４」をＲＯＭ９から読み出して（ステップＳ３９−５）、メインフローチャートの処理に戻る。
【００５２】
また、出力画像サイズが、上記ステップＳ３９−１の判別でＶＧＡサイズでなく上記ステップＳ３９−３の判別でＱＶＧＡサイズでもない場合は（Ｓ３９−３がＮ）、出力画像サイズには１６０×１２０のサイズが指定されている。この場合は、６４０×４８０のＶＧＡサイズの入力画像を、１６０×１２０の１６枚物の出力画像に縮小する画像縮小処理を行った後（ステップＳ３９−６）、この処理に対応する係数「０、０、１」をＲＯＭ９から読み出して（ステップＳ３９−７）、メインフローチャートの処理に戻る。
【００５３】
このように、入力画像のサイズと出力画像のサイズとに応じて夫々にエッジ強調係数を異ならせてエッジ強調処理を行うので、図２(a),(b) の入力画像を同図(c) の出力画像にする場合は勿論、更に、図５(a),(b) に示すミニラベル印刷用の画像にも適切なエッジ強調処理を施して出力することができる。
【００５４】
尚、上述の処理では、合計６種類の組み合わせに対応して処理を行っているが、入力画像のサイズが３種類以上の場合は、図７のメインフローチャートのステップＳ３７からの分岐をサイズの種類に合わせて３つ以上に増やせばよく、出力画像の種類が４種類以上の場合は、図８の各サブフローチャートにおいて、サイズの種類に合わせて判別処理を増加させていけばよい。
【００５５】
また、入力画像サイズと出力画像サイズに応じてエッジ強調係数を変更しているが、これに限ることなく、入力画像サイズに対する出力画像サイズの拡大（縮小）率を求めて、その値によりエッジ強調係数を変えるように構成してもよい。また、拡大又は縮小処理後にエッジ強調処理をしているが、これに限ることなく、拡大又は縮小前に、例えば、Ｙ（輝度）信号に、エッジ強調処理を行うようにしてもよい。
【００５６】
ところで、上述した第１の実施の形態では、印刷用メモリ８上に存在する一画面分の画像は、入力画像のサイズは２種類のサイズの内のいずれか１つであり、画像処理後の出力画像のサイズも複数種類のサイズの内のいずれか１つである。したがって、それらの入力画像と出力画像との組み合わせに応じて選択された係数「ａ、ｂ、ｃ」によって、印刷用メモリ８上の一画面分の画像全面に一様にエッジ強調処理を行っている。しかし、印刷画面には必ずしも同一サイズの画像のみが印刷されるとは限らず、サイズの異なる画像が一画面に混在する形式の画面が印刷される場合も考えられる。このようなとき、一画面の画像全体に一様なエッジ強調処理を行うと問題があることは前述した。しかし、このような場合にも本発明は対処できるようになっている。以下。これを第２の実施の形態として説明する。
図９(a) は、第２の実施の形態において処理される出力画像の例を示す図であり、同図(b) は、同図(a) の画面構成の各画像が、印刷用メモリ８上に書き込まれる際の画像領域番号とアドレスとの関係を模式的に示す図であり、同図(c) は、それら画像領域番号とその画像領域に書き込まれる各画像のサイズ情報及び書き込み開始アドレスを示すテーブル（画像領域テーブル）である。
【００５７】
上記の図９(b) に示す一画面分の画面領域全体のアドレス構成は、図２１(c) で説明した画素配分のアドレス構成と同一である。また、図９(c) のテーブルに上記の画像領域番号に夫々対応して示される各画像のサイズ情報と書込み開始アドレスは、図２１(a) で説明したサイズ情報及び書込み開始アドレスと同一である。
【００５８】
本実施の形態においては、指定された例えば図９(a) の出力画像に対して同図(b) 、(c) に示すテーブルを用いて画像領域毎にエッジ強調処理を行いながら出力画像を印刷用メモリ８上に展開する。
【００５９】
図１０は、そのような第２の実施の形態における異なるサイズの画像が一画面に混在する出力画像の処理のフローチャートである。尚、この処理では、ＣＰＵ内蔵の画像領域カウンタｉ及びアドレスレジスタａｄｒ（以下、単にアドレスａｄｒと記載する）が使用される。
【００６０】
同図のフローチャートに示すように、先ず画像領域カウンタｉを「０」に初期設定する（ステップＳ５０）。これにより、図９(a) に示す一画面分の各画像において、同図(b) に示す画像領域番号の「０」番から昇順に順次画像処理を進めていく準備がなされる。
【００６１】
続いて、画像領域番号ｉに対応するサイズ情報と書き込みアドレスをＲＯＭ９から読み出す（ステップＳ５１）。この処理は、図９(c) のテーブルからサイズ情報と書込み開始アドレスを読み出す処理であり、最初は画像領域番号が「０」であるので、この「０」番に対応するサイズ情報とアドレス「１、０」が読み出される。
【００６２】
上記に続き、その読み出した書き込みアドレス（この場合は「０」）をアドレスａｄｒに設定する（ステップＳ５２）。これにより、処理すべき画像領域の基準座標が設定される。
【００６３】
次に、上記のサイズ情報に基づいて実際のサイズを読み出す（ステップＳ５３）。この処理は、上記ステップＳ５１で読み出したサイズ情報とアドレス（この場合は「１、０」）の中のサイズ情報（この場合は「１」）に基づいて、図２１(b) に示したようなサイズ情報と実際のサイズとが対応するテーブルから、実際のサイズを読み出す処理である。図２１(b) に示すように、サイズ情報「１」が示す実際のサイズは３２０×２４０であり、これは図９(a),(b) に示すように、全体の１／４の大きさの画像領域「０」番のサイズである。ここで表現を変えて再度説明すれば、上記のサイズ３２０×２４０は、図９(b) においてｘ方向のドット数が３２０個、ｙ方向のドット数が２４０個の範囲の大きさであることを示している。
【００６４】
上記に続いて、エッジ強調係数を読み出す（ステップＳ５４）。このエッジ強調係数の読み出しに用いられるテーブルは、図６に示したテーブルであり、入力画像のサイズと上記サイズ情報から得られた出力画像のサイズとに基づいて得られる。
【００６５】
以下、この読み出したエッジ強調係数に基づいて、エッジ強調処理を順次行う。すなわち、先ずアドレスａｄｒの示すドット（画素データ）のエッジ強調処理を行う（ステップＳ５５）。これにより、先ず基準位置となる書込み開始位置のドットからエッジ強調処理が開始される。
【００６６】
続いて、ｙドット分（この場合は２４０ドット分）のエッジ強調処理が終了しているか否かを判別し（ステップＳ５６）、まだ終了していなければ（Ｓ５６がＮ）、アドレスａｄｒを「１」インクリメントして（ステップＳ５９）、上記ステップＳ５５、Ｓ５６を繰り返す。これにより、エッジ強調処理がｙ方向に進行する。
【００６７】
そして、上記ステップＳ５６で、ｙドット分のエッジ強調処理が終了したことを確認したときは（Ｓ５６がＹ）、次に、上記ｙドット分のエッジ強調処理がｘ回行われたか、すなわち縦２４０ドット×横３２０ドット分のエッジ強調処理が終了したか否かを判別する（ステップＳ５７）。そして、まだｘ回のエッジ強調処理が終了していないときは（Ｓ５７がＮ）、アドレスａｄｒの値を式「ａｄｒ＝ａｄｒ＋４８０−（ｙ−１）」によって演算してジャンプする（ステップＳ６０）。この処理は、ｙ方向の処理が終了しているので次の（隣接する）ｙ方向の処理を行うべく、そのｙ方向の最初のドットのアドレスを指定する（算出する）処理である。すなわち、いま終了したアドレスに全一画面の縦方向のドット数「４８０」を加算すると、その終了したアドレスの隣のアドレスになる。これから更にいま処理中のサイズの縦方向のドット数ｙよりも「１」少ないドット数を減算すると、アドレスが上に移動して丁度、直前のｙ方向の処理開始アドレスのｘ方向へ隣接するアドレス（次の処理開始アドレス）となる。
【００６８】
例えば、上記画像領域「０」番の最初のｙ方向の処理終了アドレスは「２３９」である。したがって、上記の式は「ａｄｒ＝２３９＋４８０−（２４０−１）」となり、ジャンプすべき新たなアドレスａｄｒは「４８０」となり、これは最初の処理開始アドレス「０」のｘ方向に隣接するアドレスである。
【００６９】
このアドレスジャンプ処理の後、再び上記ステップＳ５５〜Ｓ５９を繰り返し、そのｙ方向が終了すれば上記ステップＳ５７、Ｓ６０によりアドレスをジャンプするということを繰り返す。これにより、１つの画像領域内の全ドットに対するエッジ強調処理が進行する。そして、ステップＳ５７で、ｙドット分のエッジ強調処理がｘ回行われたことが確認されると、全ての画像領域（この例では「０」番から「９」番まで）についてエッジ強調処理が終了しているか否かを判別し（ステップＳ５８）、未だであれば（Ｓ５８がＮ）、画像領域カウンタｉを「１」インクリメントする（ステップＳ６１）。これにより、次の画像領域がエッジ強調処理の処理対象として指定される。
【００７０】
このように、次の画像領域が指定されたときは、ステップＳ５１に戻って、上述したステップＳ５１〜Ｓ６１の処理を繰り返す。そして、ステップＳ５８で全ての画像領域についてエッジ強調処理が終了したことを確認して（Ｓ５８がＹ）、処理を終了する。
【００７１】
このように、画像の拡大・縮小などの画像処理をした後にエッジ強調処理を行う場合に、画像処理後の異なるサイズの出力画像が一画面分のメモリ上に混在しているときでも、各画像領域毎に処理領域を選択して、画像サイズに適したエッジ強調処理を行うことができる。
【００７２】
尚、上述の第２の実施の形態においては、すべての画像を印刷用メモリ８に展開した後にエッジ強調処理を行っているが、例えば、画像領域番号０の画像データを印刷メモリ８上に置いたら、すぐにそれについてのエッジ強調処理を行うというようにして、色変換処理等の画像処理とエッジ強調処理を交互に繰り返すようにしてもよい。
【００７３】
ところで、上記第１及び第２の実施の形態においては、すべての画像が横向きであるが。画像が９０度回転した状態で出力指定される場合もある。このような場合でも、エッジ強調係数が、図３(c),(d) に示したように上下左右の隣接ドットに対して同一である場合は、単に画像領域のサイズデータ（ｘ，ｙ）のｘとｙの値を入れ替えるだけで処理すればよい。ところが、エッジ強調係数が上下左右の隣接ドットに対して異なる場合がある。
【００７４】
図１１(a),(b) は、夫々画像が互いに回転した状態を示す図である。以下同図(a) を横向きの画像、同図(b) を縦向きの画像という。同図(a) から見ると同図(b) は９０度回転している。このとき、同図(a) の画像のエッジ強調係数が、同図(c) に示すように着目ドットの左右に隣接するドットのみに係数「−２」の重みが付けられ、上下に隣接するドットには係数「０」で重み付けがなされない画像であるとすると、同図(a) の画像が同図(b) に示すように９０度回転したとき、同図(b) の画像を同図(a) と同様に表現しようとすると、そのエッジ強調処理係数も、同図(d) に示すように９０度回転した配置で各ドットに割り当てられていなければならない。通常では、この処理は面倒である。
【００７５】
本発明は、このような場合でも容易に適切なエッジ強調処理を行うことができる。以下、これについて第３の実施の形態として説明する。
図１２(a) は、第３の実施の形態における処理画像（回転画像２１）のサイズ及び書き込みアドレスを示す図であり、同図(b) は、色変換処理等の画像処理後の出力画像の領域番号、サイズ、印刷用メモリヘの書き込みアドレス、及び回転の有無を示すテーブル（回転データテーブル）であり、同図(c) は、着目ドットの上下及び左右のエッジ強調係数が異なる場合のエッジ処理テーブルの例を示している。
【００７６】
同図(a) の書き込みアドレス（書き込み開始のアドレス）は、いままでのように左上隅ではなく左下隅を指定される。また、ｘ方向の３２０ドットが縦方向になり、ｙ方向の２４０ドットが横方向になっている。これは画像が回転していることを受けて、この画像データが印刷用メモリ８ヘ書き込される際に左下隅が最初に書き込まれるためである。
【００７７】
また、同図(b) の回転データテーブルは、第１及び第２の実施の形態で示した画像領域テーブルに、回転の有無（０：回転無し、１：回転有り）を示す第３の要素が加わったものであり、同図(a) の回転画像を処理するためのテーブルである。画像領域番号は「０」、サイズ情報は「１」（３２０×２４０ドット）、アドレスは「９６４００」（回転画像の左下隅のアドレス）、及び回転の有無は「１」（回転有り）を示している。
【００７８】
また、同図(c) のエッジ処理テーブルは回転前の横向き画像のエッジ強調係数をそのまま格納している。すなわち、各係数列の３つの要素は左から右へ夫々回転前の画像（横向き画像）の着目ドットの左右用の係数ａ、着目ドットの上下用の係数ｂ、着目ドット自身用の係数ｃを示している。
【００７９】
図１３は、そのようなエッジ強調テーブルと上記の回転データテーブルとを用いて着目ドットの上下及び左右のエッジ強調係数が異なる回転画像のエッジ強調処理の手順を説明するフローチャートである。同フローチャートのステップＳ７０〜Ｓ７４は、図１０に示したフローチャートのステップＳ５０〜Ｓ５４と同様の処理であり、この間やや図１０の場合と異なるのは、ステップＳ７１では画像領域カウンタｉの指示する画像領域番号に対応するデータが図１２(b) に示す回転データテーブルから読み出されることである。
【００８０】
回転データテーブルには、図１０の場合と異なり、上述したようにサイズ情報と書き込みアドレスの他に回転の有無情報も含まれている。この回転有無情報が、上記ステップＳ７０〜Ｓ７４に続く処理で参照され、回転の有無に応じて処理が行われる。
【００８１】
すなわち、上記の回転有無情報を取り出し（ステップＳ７５）、続いて、その回転情報が回転有りを示す「１」であるか否かを判別する（ステップＳ７５）。そして、回転有無情報が回転有りを示す「１」であれば（Ｓ７５がＹ）、この場合は、先ず、アドレスａｄｒからサイズｘ分をを引く（ステップＳ７７）。これにより、図１２(a) に示す回転画像の左下の書き込みアドレス「９６４００」が「９６４００−３２０＝９６０８０」に変更されて画像の左上隅に移動する。
【００８２】
次に、サイズｘとサイズｙを入れ替える（ステップＳ７８）。これにより、図１２(a) に示す回転画像２１のサイズ２４０がサイズｘとなり、サイズ３２０がサイズｙに変更され、回転状態のまま画像の全ドットの座標が図１２(a) の印刷画面のｘ，ｙ座標で表現される。
【００８３】
上記に続いてエッジ強調係数のａとｂを入れ替える（ステップＳ７９）。これにより、図１２(c) のエッジ処理テーブルのサイズ情報「０」に対応して読み出されたエッジ強調係数「−２，０，５」のａ及びｂが入れ代わり、エッジ強調係数「０，−２，５」に変換される。すなわち、図１１(a) の横向き画像に対する同図(c) のエッジ強調係数が、同図(b) の回転画像（縦向き画像）に対する同図(d) のエッジ強調係数に変換される。
【００８４】
このように、サイズｘとサイズｙを入れ替え、上下と左右のエッジ強調係数を入れ替えた後、ステップＳ８０以下の処理を行う。尚、ステップＳ７６の判別で回転情報が回転無しを示す「０」であれば（Ｓ７５がＮ）、この場合は直ちにステップＳ８０以下の処理に移行する。
【００８５】
ステップＳ８０〜Ｓ８６の各処理は、図１０のステップＳ５５〜Ｓ６１の各処理と夫々同一である。但し、回転有りの場合は、ｘ、ｙが入れ代わっているので、図１０ではｙ方向へ２４０ドット分の処理をｘ方向へ３２０回繰り返していた処理が、図１３ではｙ方向へ３２０ドット分の処理をｘ方向へ２４０回繰り返えすことになるだけである。また、回転無しの場合は、図１０の場合の処理と同様である。
【００８６】
このように、画像が回転している場合は、サイズｘ，ｙの入れ替えを行っているので、回転の無い場合と同様にｙドット分の処理をｘ回行えばよいことになり、回転の有無に拘らず処理手順を統一的に扱うことができる。また、処理手順の僅かの増加のみで、画像の回転に応じた最適なエッジ強調処理ができるようになる。
【００８７】
尚、ＲＯＭ９に格納するエッジ処理テーブルの係数の設定値を、画像を横向きにおいたときにそのまま使用できる値を設定しているが、この初期設定値を縦向き画像用に設定しておき、画像が縦向きのときは係数をそのまま使用し、画像が横向きのとき係数ａ及びｂの入れ替えを行って使用するようにしてもよい。
【００８８】
ところで、上述の第１〜第３の実施の形態では、出力画像のサイズの種類が増加するに伴い、エッジ強調係数用のエッジ処理テーブルの容量が増加する。さらに、それぞれのサイズに対する最適なエッジ強調係数を決めるための設定作業も、この作業が試行錯誤的な実験によってなされるものであるため、多大な労力を要してしまう。このような場合に備えて本発明は更なる手順を用意している。これについて第４の実施の形態として以下に説明する。
【００８９】
この第４の実施の形態においては、１種類の入力画像サイズに対してエッジ強調係数を１種類のみ設定し、この設定した１種類のエッジ強調係数によってエッジ強調処理を行うか否かを制御するようにする。経験的に見ると、このように１つのエッジ強調係数で、エッジ強調処理を行うか否かで画像処理を制御しても、出力画像のサイズが入力画像のサイズよりも小さい場合には、画像品質に大きな問題はないことが多い。したがって、このように画像処理を制御することによりエッジ強調係数が１種類のみである場合に発生する先行技術の項で述べたような問題を解消することができる。
【００９０】
図１４は、参考のため出力画像の各サイズの例を示す図であり、説明の便宜上、８種類のみを示している。図は上にサイズ６８０×４８０、サイズ４８０×３６０、及びサイズ３８４×２４８を示し、下にサイズ３２０×２４０、サイズ２５６×１９２、サイズ２４０×１８０、サイズ２１３×１６０、及びサイズ１６０×１２０を示している。いずれも同一の縮尺である。尚、入力画像サイズについては簡単のためＶＧＡサイズのみとして以下説明する。
【００９１】
図１５(a) は、夫々異なるサイズの画像配置の例を示す図であり、同図(b) はその画像配置に対応する画像領域テーブルの例を示す図であり、同図(c) は、サイズ情報に対応する実際のサイズを示すサイズテーブルである。同図(b) の画像領域テーブル上段の、画像領域番号「０」は同図(a) に示す印刷画面の出力画像２２の画像領域番号であり、これに対応するサイズ情報及び書き込みアドレス「３、１１６１８」のサイズ情報「３」は出力画像２２のサイズ情報であり、書き込みアドレス「１１６１８」は出力画像２２の左上隅２３のアドレスである。出力画像２２の実サイズは同図(c) のサイズテーブルのデータ欄２４から３２０×２４０ドットであることが読み出されるようになっている。他の出力画像２５及び２６についても同様であり、出力画像２５は、画像領域番号が「１」、左上隅２７の書き出しアドレスは「１８７６９８」、そして、サイズ情報「７」に対応する実サイズは同図(c) のデータ欄２８から１６０×１２０ドットである。また、出力画像２６は、画像領域番号が「２」、左上隅２９の書き出しアドレスは「１８４５９４」、そして、サイズ情報「５」に対応する実サイズは同図(c) のデータ欄３１から２４０×１８０ドットである。
【００９２】
図１６は、ＶＧＡサイズの入力画像に対して画像処理されて上記のように出力される出力画像の各種サイズに対し、エッジ強調処理の可否を決定するためのテーブルである。同図に示すように、このエッジ強調処理可否テーブルは、サイズ情報とテーブル値からなり、サイズ情報は図１５(c) に示すサイズテーブルのサイズ情報に対応しており、この各サイズ情報に「１」又は「０」の２種類のテーブル値のいずれかが夫々対応している。テーブル値「１」はエッジ強調処理の「可」を示し、テーブル値の「０」はエッジ強調処理の「否」を示している。
【００９３】
この図１６の例ではサイズ情報「０」〜「４」までにテーブル値「１」が対応しており、これは実サイズ６４０×４８０〜実サイズ２５６×１９２の出力画像にエッジ強調処理を行うことを示している。また、サイズ情報「５」〜「７」にテーブル値「０」が対応しており、これは実サイズ２４０×１８０〜実サイズ１６０×１２０の出力画像にはエッジ強調処理を行わないことを示している。
【００９４】
図１７は、上記の各テーブルを用いて出力画像のサイズに応じてエッジ強調処理を選択的に行う処理のフローチャートである。同図のフローチャートにおいて、ステップＳ１００〜ステップＳ１０２の処理は図１０に示したフローチャートのステップＳ５０〜Ｓ５２の処理と同一である。但しこの場合は、ステップＳ１０１で読み出される画像領域テーブルは図１５(b) に示した画像領域テーブルである。
【００９５】
上記の処理に続いて、画像領域テーブルから読み出したサイズ情報に基づいてエッジ強調制御用ＲＯＭテーブル、すなわちＲＯＭ９に格納されている図１６に示すエッジ強調処理可否テーブルを読み出す（ステップＳ１０３）。そして、エッジ強調処理を行うか否かを判別する（ステップＳ１０４）。処理開始の初めは画像領域番号「０」の画像２２であり、したがって、図１５(b) の例ではサイズ情報が「３」、これに対応するエッジ強調処理可否テーブルのテーブル値は図１６の例では「１」である。
【００９６】
このように、エッジ強調処理可否テーブルのテーブル値がエッジ強調処理を指示する「１」であるときは（Ｓ１０４がＹ）、サイズ情報から実際のサイズを読み出す（ステップＳ１０５）。これにより、図１５(c) のサイズテーブルの例では上記のサイズ情報「３」に対応する実サイズ「３２０×２４０」が読み出される。
【００９７】
続いて、アドレスａｄｒで示されるドットのエッジ強調処理を行う（ステップＳ１０６）。以下ステップＳ１０６からステップＳ１１２までの処理は、図１０のステップＳ５５〜Ｓ６１の処理と同一である。但し処理に用いられるエッジ強調係数がＶＧＡサイズの入力画像に対応する値の固定した（つまり１種類の）エッジ強調係数である点が、他の実施の形態の場合と異なる。このように、出力画像のサイズが比較的大きいものにはエッジ強調処理を行うことが指示されて、エッジ強調処理が実行される。
【００９８】
また、続く画像領域番号「１」の画像２５の処理では、上記のステップＳ１０３で読み出されたエッジ強調処理可否テーブルのサイズ情報「７」に対応するテーブル値は「０」であるので、ステップＳ１０４の判別は「Ｎ」であり、この場合は直ちにステップＳ１０９の処理に移行する。これにより、出力画像のサイズが比較的小さいものにはエッジ強調処理を行わないことが指示されて、エッジ強調処理が無視される
なお、上記の実施の形態では入力画像サイズをＶＧＡサイズのみとし、これに対応して出力画像のエッジ強調係数を１種類に固定しているが、これに限ることなく、複数サイズの入力画像に対応して入力画像サイズ毎のエッジ強調係数のテーブルを用意しておき、出力画像のサイズを読み出した後に、そのサイズに対応するエッジ強調処理の可否を調べて、エッジ強調係数を設定するようにしてもよい。
【００９９】
ところで、上述したようにディジタルカメラ用のプリンタは、カメラと直接接続して画像信号の受信を行いながら印刷を実行する。ところが、プリンタに接続されるカメラには複数の機種が存在する。そして、それぞれの機種毎にカメラ内部の画像処理等が異なるのが普通であり、機種によって一様ではない。例えば、ＹＣｂＣｒ信号からＲＧＢ信号に変換する式が特殊であったり、或る種のカメラのみに特有なノイズが画像に重畳したり、または、カメラによっては画像のボケるものがあったりする。
【０１００】
画像がボケるものについては上述してきた出力画像のサイズに応じて使い分けるエッジ強調処理とは別な対応が必要であり、その他の不具合については、ＪＰＥＧ伸長から印刷用メモリヘ書き込むまでの画像処理で修正する必要がある。すなわち、接続されたカメラの種類に応じて、ＹＣｂＣｒ信号からＲＧＢ信号への変換の式を使い分け、ノイズ除去のためのフィルタリングを行い、エッジ強調係数を変更するいうことが必要になる。本発明は、このような場合にも対応できる用意がなされている。以下これについて第５の実施の形態として説明する。
【０１０１】
図１８(a) は、本実施の形態においてプリンタに接続されるカメラの機種に対応するフィルタ用テーブルであり、同図(a) に示す例では、カメラＡ、カメラＢ、カメラＣの３機種を想定している。フィルタ用テーブルはＲＯＭ９に予め格納されており、カメラ毎にフィルタリングするか否かのデータが設定される。この例では「１」がフィルタリングをすることを示し、「０」がフィルタリングをしないことを示している。
【０１０２】
なお、説明の便宜上、これらのカメラは全てＶＧＡサイズのみの撮影が可能、すなわちプリンタへの入力画像のサイズはＶＧＡサイズのみとする。また、カメラＡの出力にはノイズがあり、このカメラＡの画像のみＹ（輝度）信号へのノイズ除去のためにフィルタリングが必要であるとする。また、カメラＢには画像がボケやすい特性があるとする。そして、各カメラＡ、Ｂ、Ｃに対して理想的なＹＣｂＣｒ信号からＲＧＢ信号への変換式は、
カメラＡ，Ｃについては、
Ｒ＝Ｙ＋１．４０２＊Ｃｒ
Ｇ＝Ｙ−０．３４４＊Ｃｂ−０．７１４＊Ｃｒ
Ｂ＝Ｙ＋１．７７２＊Ｃｂ                              ・・・（１）
カメラＢについては、
Ｒ＝Ｙ＋Ｃｒ
Ｇ＝Ｙ−０．５０８＊Ｃｒ−０．１８６４＊Ｃｂ
Ｂ＝Ｙ＋Ｃｂ                                          ・・・（２）
であるとする。
【０１０３】
また、同図(b) は、各カメラＡ、Ｂ、Ｃ毎のエッジ強調係数を示すテーブルである。同図のテーブルに示すエッジ強調係数の各要素は、左から順に、図３(b) に示したドットａ，ｂ，ｃ用である。これらの係数は、カメラＡはローパスフィルタ処理を行う必要があるので少し強めの係数とし、カメラＢは受信した画像がボケる傾向にあるので更に強めの係数とし、カメラＣはプリンタにとってほとんど不具合のない特性であるので余りエッジ強調しない係数として設定されている。なお、この例では、これも説明の便宜上、プリンタの出力画像のサイズもＶＧＡサイズのみとする。つまり、拡大縮小処理が必要ないものとする。
【０１０４】
図１９は、上記のように設定される各種データに基づいて、第５の実施の形態において、カメラの機種毎に対応して選択的に行われる処理のフローチャートである。同図のフローチャートに示すように、印刷スタートキー５が入力操作されると（ステップＳ１２０）、画像処理装置１のＣＰＵ４は、接続されているカメラ３との通信を開始し（ステップＳ１２１）、先ず、プロダクトコードを要求するコマンドをカメラ３に送信する（ステップＳ１２２）。これにより、カメラ３からプロダクトコードがプリタンに送信され、プリンタはこれを受信して、これを例えばＣＰＵ４内蔵のレジスタ等に保管する（ステップＳ１２３）。プロダクトコードは、カメラの機種毎に持っている固有の値であり、このプロダクトコードによりＣＰＵ４は接続されているカメラ３の機種を認識できる。
【０１０５】
続いてカメラ３から、印刷する画像データを受信する（ステップＳ１２４）。画像データを受信すると、ＣＰＵ４は、先ずその受信データの伸長を行い、ワーク用メモリ７に格納する（ステップＳ１２５）。そして、上記取得しているプロダクトコードを参照して、カメラ３がフィルタリングが必要である機種（この例ではカメラＡ）であるか否かを判別する（ステップＳ１２６）。そして、カメラ３の機種がカメラＡであれば、上記伸長により生成したＹ（輝度）信号に対して、ノイズ除去のフィルタリングを行う（ステップＳ１２７）。この処理には、ローパスフィルタが用いられる。また、このフィルタリングを行う場合は、ワーク用メモリ７上で行い、結果をフィルタリング前のデータに上書きで格納する。
【０１０６】
次に、再び、すでに取得しているプロダクトコードを参照し、カメラ３の機種がカメラＢであるか否かを判別する（ステップＳ１２８）。なお、上記ステップＳ１２６で、カメラ３の機種がカメラＡでないときは（Ｓ１２６がＮ）、直ちにこのステップＳ１２８の処理に移行する。
【０１０７】
そして、カメラＢであれば（Ｓ１２８がＹ）、前述の式（２）を用いてＹＣｂＣｒ信号をＲＧＢ信号に変換する（ステップＳ１２９）。また、機種がカメラＢでなければ（Ｓ１２８がＮ）、前述の式（１）を用いてＹＣｂＣｒ信号をＲＧＢ信号に変換する（ステップＳ１３０）。これにより、接続しているカメラの特性に合った適正な「ＹＣｂＣｒ→ＲＧＢ」変換が実行される。なお、このＲＧＢ信号（データ）もワーク用メモリ７に格納される。
【０１０８】
上記処理に続いて色変換処理を行って、このデータを印刷用メモリ８に格納する（ステップＳ１３１）。そして、この印刷用メモリ８の全画像データ（一画面分の画像データ）に対してエッジ強調処理を行う（ステップＳ１３２）。このエッジ強調処理に用いられるエッジ強調係数は、図１８(b) のカメラＡ、Ｂ、Ｃ毎のエッジ強調係数を示すテーブルから読み出される。そして、上記のエッジ強調処理が終わって、印刷を実行する（ステップＳ１３３）。
【０１０９】
尚、上記第５の実施の形態では、接続されているカメラの機種により変更される処理は、Ｙ（輝度）信号へのフィルタリングと、ＹＣｂＣｒ→ＲＧＢ変換式、エッジ強調処理であるが、ＣｂＣｒ信号へのフィルタリングや色変換処理についても同様にプロダクトコードで機種を分別して行うようにしてもよい。
【０１１０】
また、カメラの機種毎に分岐して行う処理の中で、第１〜第４の実施の形態で述べた出力画像のサイズに対応する処理を行うようにすれば、エッジ強調処理ををさらに最適に行うことができる。
【０１１１】
また、既に登録されているカメラ以外のカメラが接続された場合には、新機種であると判断して、カメラ側から画像処理テーブルのデータを例えばプリンタ側に用意されているＥＰＲＯＭ等に送って書き込むようにし、プリンタ側でこのデータを用いて上述の処理を行うようにするとよい。
【０１１２】
また、プロダクトコードによって処理を変更するのではなく、入力画像の圧縮形式によって処理を変更するようにしてもよい。圧縮データのヘッダには、それぞれの圧縮形式による識別コードが含まれているから、その識別コードによって処理を変更するようにするとよい。
【０１１３】
【発明の効果】
以上詳細に説明したように、本発明によれば、一画面内の複数の画像領域毎に選択的にエッジ強調処理を行うので、一画面内に異なるサイズの画像が混在している場合でも各画像のサイズに適応したエッジ強調処理を行うことができ、したがって、全体として画像の輪郭に均整のとれた混在画像の印刷を行うことが可能となる。
【０１１４】
また、テーブルにサイズ情報と書き込みアドレス情報の他に回転有無情報を備えるので、処理画像が回転しているときでもサイズ及びエッジ強調係数を入れ替えるだけで正しいエッジ強調処理ができ、これにより、処理手順が大きく増加することがなく、したがって、低廉でエッジ強調処理機能の豊富な画像処理装置を提供することが可能となる。
【０１１５】
また、エッジ強調係数を入力画像のサイズに一対一に対応させて固定するので、エッジ強調係数を入力画像のサイズの種類に対応する数に限定することができ、一方では出力画像のサイズに応じてエッジ強調処理の可否を決定するので、出力画像のサイズが大小異なって混在しても適正なエッジ強調処理を行うことができ、したがって、エッジ強調係数用のＲＯＭの容量を削減できると共に軽減された作業量で適正なエッジ強調係数を設定することができて経済的である。
【０１１６】
また、本発明によれば、回転有無情報により処理対象の画像の回転が認識されたときには、予め画像の向きに対応して設定されたエッジ強調係数を画像の回転に応じて変換して用いることにより画像の回転に応じた最適なエッジ強調処理ができるようになる。
【図面の簡単な説明】
【図１】第１の実施の形態における画像処理装置の構成を示すブロック図である。
【図２】  (a),(b) は第１の実施の形態において外部機器として用いられるカメラの入力画像のサイズを示す図、(c) は印刷画像の解像度を示す図である。
【図３】  (a) は第１の実施の形態において使用されるエッジ強調係数のテーブル（エッジ処理テーブル）の例を示す図、(b),(c),(d) はそのテーブルの内容を説明する図である。
【図４】第１の実施の形態における構成において画像処理装置のＣＰＵにより行われる処理の動作を示すフローチャートである。
【図５】  (a),(b) はミニラベル印刷の印刷画面の例を２例示す図である。
【図６】ミニラベル印刷の場合にも対応できるエッジ強調係数のテーブルの例を示す図である。
【図７】第１の実施の形態においてミニラベル印刷の場合にも対応できるエッジ強調処理のメインフローチャートである。
【図８】  (a),(b) は第１の実施の形態におけるミニラベル印刷対応のエッジ強調処理のサブフローチャートである。
【図９】  (a) は第２の実施の形態において処理される出力画像の例を示す図、(b) はその画面構成の各画像の画像領域番号と印刷用メモリ上のアドレスとの関係を模式的に示す図、(c) はそれら画像領域番号とその画像領域に書き込まれる各画像のサイズ情報及び書き込み開始アドレス情報との対応関係を示すテーブル（領域テーブル）である。
【図１０】第２の実施の形態における異なるサイズの画像が一画面に混在する出力画像の処理のフローチャートである。
【図１１】  (a),(b) は第３の実施の形態における夫々画像が互いに回転した状態を示す図、(c),(d) は(a),(b) の画像に対応するエッジ強調係数を示す図である。
【図１２】  (a) は第３の実施の形態における回転画像のサイズ及び書き込みアドレスの例を示す図、(b) は、出力画像の回転データテーブルの例を示す図、(c) は着目ドットの上下及び左右のエッジ強調係数が異なる場合のエッジ処理テーブルの例を示す図である。
【図１３】第３の実施の形態における縦横でエッジ強調係数が異なる回転した出力画像の処理のフローチャートである。
【図１４】第４の実施の形態において参考のため出力画像の各サイズの例を８種類示す図である。
【図１５】  (a) は第４の実施の形態における異なるサイズの画像配置の例を示す図、(b) はその画像配置に対応する領域テーブルの例を示す図、(c) はサイズ情報に対応する実際のサイズを示すテーブルの例を示す図である。
【図１６】第４の実施の形態における出力画像の各サイズ毎にエッジ強調処理の可否を決定するためのテーブルである。
【図１７】第４の実施の形態における出力画像のサイズに応じてエッジ強調処理を選択的に行う処理のフローチャートである。
【図１８】  (a) は第５の実施の形態においてプリンタに接続されるカメラの機種に対応するフィル用テーブルを示す図、(b) は各カメラ毎のエッジ強調係数を示すテーブルである。
【図１９】第５の実施の形態におけるカメの機種毎に対応して選択的に行う処理のフローチャートである。
【図２０】従来のプリンタによるカメラ画像の印刷処理の動作を示すフローチャートである。
【図２１】  (a),(b) は従来のカメラ画像の印刷処理に使用されるテーブルを示す図、(c),(d) はそれらのテーブルによって指定される画像のサイズと印刷用メモリ上のアドレスを模式的に示す図である。
【符号の説明】
１    画像処理装置
２    印刷制御回路
３    ディジタルカメラ（カメラ）
４    ＣＰＵ
５    印刷スタートキー
６    データ用メモリ
７    ワーク用メモリ
８    印刷用メモリ
９    ＲＯＭ
Ｐ１１，Ｐ１２  着目画素
１０  ミニラベル印刷にも対応できる係数テーブル
１１〜１６  係数列
２１  回転画像
２２、２５、２６  出力画像
２３、２７、２９  書き込みアドレスの位置
２４、２８、３１  サイズテーブルのデータ欄
【図１】
0003671270.tif 000002
【図２】
0003671270.tif 000003
【図３】
0003671270.tif 000004
【図４】
0003671270.tif 000005
【図５】
0003671270.tif 000006
【図６】
0003671270.tif 000007
【図７】
0003671270.tif 000008
【図８】
0003671270.tif 000009
【図９】
0003671270.tif 000010
【図１０】
0003671270.tif 000011
【図１１】
0003671270.tif 000012
【図１２】
0003671270.tif 000013
【図１３】
0003671270.tif 000014
【図１４】
0003671270.tif 000015
【図１５】
0003671270.tif 000016
【図１６】
0003671270.tif 000017
【図１７】
0003671270.tif 000018
【図１８】
0003671270.tif 000019
【図１９】
0003671270.tif 000020
【図２０】
0003671270.tif 000021
【図２１】
0003671270.tif 000022