特許第6769045号(P6769045)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ブラザー工業株式会社の特許一覧

特許6769045画像処理装置、および、コンピュータプログラム
<>
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000002
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000003
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000004
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000005
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000006
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000007
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000008
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000009
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000010
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000011
  • 特許6769045-画像処理装置、および、コンピュータプログラム 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6769045
(24)【登録日】2020年9月28日
(45)【発行日】2020年10月14日
(54)【発明の名称】画像処理装置、および、コンピュータプログラム
(51)【国際特許分類】
   G06K 9/00 20060101AFI20201005BHJP
   G06T 5/00 20060101ALI20201005BHJP
【FI】
   G06K9/00 S
   G06T5/00 710
【請求項の数】12
【全頁数】23
(21)【出願番号】特願2016-37554(P2016-37554)
(22)【出願日】2016年2月29日
(65)【公開番号】特開2017-156852(P2017-156852A)
(43)【公開日】2017年9月7日
【審査請求日】2019年1月17日
(73)【特許権者】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】110001058
【氏名又は名称】特許業務法人鳳国際特許事務所
(72)【発明者】
【氏名】澤田 和英
【審査官】 新井 則和
(56)【参考文献】
【文献】 特開2003−067670(JP,A)
【文献】 特開2002−007963(JP,A)
【文献】 特開2001−061062(JP,A)
【文献】 特開2000−201274(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 9/00−9/82
G06T 5/00
(57)【特許請求の範囲】
【請求項1】
第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、ビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、ベクトル形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む複数個の部分画像データを含む前記対象画像データを取得する取得部と、
前記複数個の部分画像データのそれぞれが前記ビットマップ形式のデータであるか前記ベクトル形式のデータであるかを判断する判断部と、
前記複数個の部分画像データのうち、前記ビットマップ形式のデータであると判断される部分画像データに対して文字認識処理を含む第1処理を実行し、前記ベクトル形式のデータであると判断される部分画像データに対して前記文字認識処理を含まない第2処理を実行して、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成部と、
を備え、
前記第1処理は、
前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像内の文字領域を特定する特定処理と、
前記文字領域に対する前記文字認識処理と、
前記文字認識処理によって特定された前記第1の文字の文字コードを含む文字情報を用いて、前記第1の部分画像データの前記第1の文字のエッジ強度よりも高いエッジ強度を有する前記第1の文字を含む画像を示す第1の処理済データを生成する第1の変換処理と、
を含み、
前記第2処理は、前記第2の部分画像データの前記第2の文字のエッジ強度変更せずに、前記第2の文字を含む画像を示す第2の処理済データを生成する処理を含み、
前記処理済画像データは、前記第1の処理済データと前記第2の処理済データとを含む、画像処理装置。
【請求項2】
第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、ビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、ベクトル形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む前記対象画像データを取得する取得部と、
前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像において、前記第1の文字を特定する特定部と、
前記対象画像データを用いて、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成部であって、前記処理済画像データは、(A)前記第1の文字を含む画像を示す第1の処理済データであって、前記第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された前記第1の処理済データと、(B)前記第2の文字を含む画像を示す第2の処理済データであって、前記第2の部分画像データのエッジ強度が変更されていない前記第2の処理済データと、を含む、前記生成部と、
を備え
前記第1の変換処理は、前記第1の部分画像データによって示される画像内において、前記第1の文字のエッジに沿う複数個の中間画素であって、前記第1の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の中間画素の個数を減少させる処理である、画像処理装置。
【請求項3】
第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、第1の階調数のビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、前記第1の階調数より少ない第2の階調数のビットマップ形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む前記対象画像データを取得する取得部と、
前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像において、少なくとも前記第1の文字を特定する特定部と、
前記対象画像データを用いて、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成部であって、前記処理済画像データは、(A)前記第1の文字を含む画像を示す第1の処理済データであって、前記第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された前記第1の処理済データと、(B)前記第2の文字を含む画像を示す第2の処理済データであって、前記第2の部分画像データのエッジ強度が変更されていない、または、前記第2の部分画像データのエッジ強度よりも低いエッジ強度を有する文字に変換する第2の変換処理が実行された前記第2の処理済データと、を含む、前記生成部と、
を備える画像処理装置。
【請求項4】
請求項に記載の画像処理装置であって、
前記第1の変換処理は、前記第1の部分画像データに対して文字認識処理を実行することによって、前記第1の文字の文字コードを含む文字情報であって、前記第1の部分画像データに代えて前記第1の文字を表現する前記文字情報を生成する処理と、前記文字情報を用いて、前記第1の処理済データを生成する処理と、を含む、画像処理装置。
【請求項5】
請求項3に記載の画像処理装置であって、
前記第1の変換処理は、前記第1の部分画像データによって示される画像内において、前記第1の文字のエッジに沿う複数個の中間画素であって、前記第1の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の中間画素の個数を減少させる処理である、画像処理装置。
【請求項6】
請求項2または5に記載の画像処理装置であって、
前記生成部は、前記処理済画像のサイズに応じて、前記第1の部分画像データによって示される画像を拡大する拡大処理を実行し、
前記第1の変換処理は、前記拡大処理の拡大率が第1の拡大率である場合には、第1の幅分だけ前記複数個の中間画素の個数を減少させ、前記拡大処理の拡大率が前記第1の拡大率より大きな第2の拡大率である場合には、前記第1の幅より広い第2の幅分だけ前記複数個の中間画素の個数を減少させる処理である、画像処理装置。
【請求項7】
請求項に記載の画像処理装置であって、
前記生成部は、
第1の場合には、前記第1の部分画像データに対して文字認識処理を実行することによって得られる前記第1の文字の文字コードを含む文字情報であって、前記第1の部分画像データに代えて前記第1の文字を表現する前記文字情報を生成する処理と、前記文字情報を用いて、前記第1の処理済データを生成する処理と、を含む前記第1の変換処理を実行し、
第2の場合には、前記第1の部分画像データによって示される画像内において、前記第1の文字のエッジに沿う複数個の中間画素であって、前記第1の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の中間画素の個数を減少させる前記第1の変換処理を実行する、画像処理装置。
【請求項8】
請求項に記載の画像処理装置であって、
前記第1の場合は、前記第1の部分画像データに対して前記文字認識処理が実行された結果、文字認識の成功率が基準以上である場合であり、
前記第2の場合は、前記第1の部分画像データに対して前記文字認識処理が実行された結果、文字認識の成功率が前記基準未満である場合である、画像処理装置。
【請求項9】
請求項に記載の画像処理装置であって、
前記第2の変換処理は、前記第2の部分画像データによって示される画像内において、前記第2の文字のエッジに沿う複数個の画素であって、前記第2の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の画素の個数を増加させる処理である、画像処理装置。
【請求項10】
第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、ビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、ベクトル形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む複数個の部分画像データを含む前記対象画像データを取得する取得機能と、
前記複数個の部分画像データのそれぞれが前記ビットマップ形式のデータであるか前記ベクトル形式のデータであるかを判断する判断機能と、
前記複数個の部分画像データのうち、前記ビットマップ形式のデータであると判断される部分画像データに対して文字認識処理を含む第1処理を実行し、前記ベクトル形式のデータであると判断される部分画像データに対して前記文字認識処理を含まない第2処理を実行して、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成機能と、
をコンピュータに実現させ、
前記第1処理は、
前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像内の文字領域を特定する特定処理と、
前記文字領域に対する前記文字認識処理と、
前記文字認識処理によって特定された前記第1の文字の文字コードを含む文字情報を用いて、前記第1の部分画像データの前記第1の文字のエッジ強度よりも高いエッジ強度を有する前記第1の文字を含む画像を示す第1の処理済データを生成する第1の変換処理と、
を含み、
前記第2処理は、前記第2の部分画像データの前記第2の文字のエッジ強度変更せずに、前記第2の文字を含む画像を示す第2の処理済データを生成する処理を含み、
前記処理済画像データは、前記第1の処理済データと前記第2の処理済データとを含む、コンピュータプログラム。
【請求項11】
第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、ビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、ベクトル形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む前記対象画像データを取得する取得機能と、
前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像において、前記第1の文字を特定する特定機能と、
前記対象画像データを用いて、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成機能であって、前記処理済画像データは、(A)前記第1の文字を含む画像を示す第1の処理済データであって、前記第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された前記第1の処理済データと、(B)前記第2の文字を含む画像を示す第2の処理済データであって、前記第2の部分画像データのエッジ強度が変更されていない前記第2の処理済データと、を含む、前記生成機能と、
をコンピュータに実現させ
前記第1の変換処理は、前記第1の部分画像データによって示される画像内において、前記第1の文字のエッジに沿う複数個の中間画素であって、前記第1の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の中間画素の個数を減少させる処理である、コンピュータプログラム。
【請求項12】
第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、第1の階調数のビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、前記第1の階調数より少ない第2の階調数のビットマップ形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む前記対象画像データを取得する取得機能と、
前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像において、少なくとも前記第1の文字を特定する特定機能と、
前記対象画像データを用いて、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成機能であって、前記処理済画像データは、(A)前記第1の文字を含む画像を示す第1の処理済データであって、前記第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された前記第1の処理済データと、(B)前記第2の文字を含む画像を示す第2の処理済データであって、前記第2の部分画像データのエッジ強度が変更されていない、または、前記第2の部分画像データのエッジ強度よりも低いエッジ強度を有する文字に変換する第2の変換処理が実行された前記第2の処理済データと、を含む、前記生成機能と、
をコンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、複数種類のデータで表現される複数個の文字領域を含む画像に対する画像処理に関する。
【背景技術】
【0002】
画像データは、文字を表す複数種類のデータを含む場合があることが知られている。例えば、特許文献1には、画像を表すデータ構造として、文字を表現するコード化データと、文字を表現するビットマップデータと、を含むハイブリッドデータ構造が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−42126号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
このような画像データを用いて出力される画像では、一の種類のデータで表現される文字のエッジの見栄えと、他の種類のデータで表現される文字のエッジの見栄えと、が異なる場合があった。このように、一つの画像にエッジの見栄えが異なる複数個の文字が含まれると、画像に違和感が生じる可能性があった。
【0005】
本明細書は、文字を示す複数種類のデータを含む画像データを用いて表される画像に生じる違和感を低減する技術を開示する。
【課題を解決するための手段】
【0006】
本明細書に開示された技術は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【0007】
[適用例1]第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、ビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、ベクトル形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む前記対象画像データを取得する取得部と、前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像において、前記第1の文字を特定する特定部と、前記対象画像データを用いて、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成部であって、前記処理済画像データは、(A)前記第1の文字を含む画像を示す第1の処理済データであって、前記第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された前記第1の処理済データと、(B)前記第2の文字を含む画像を示す第2の処理済データであって、前記第2の部分画像データのエッジ強度が変更されていない前記第2の処理済データと、を含む、前記生成部と、を備える画像処理装置。
【0008】
ビットマップ形式で表現される第1の文字のエッジ強度は、ベクトル形式で表現される第2の文字のエッジ強度より低くなりがちである。上記構成によれば、処理済画像データは、第1の文字を示し、第1の文字データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された第1の処理済データと、第2の文字を示し、エッジ強度が変更されていない第2の処理済データと、を含む。この結果、処理済画像において、第1の文字と第2の文字とのエッジ強度が近づくので、第1の文字と第2の文字との見栄えの差を低減できる。この結果、処理済画像に生じる違和感を低減することができる。
【0009】
[適用例2]第1の文字と第2の文字とを含む対象画像を示す対象画像データであって、第1の階調数のビットマップ形式で前記第1の文字を含む画像を示す第1の部分画像データと、前記第1の階調数より少ない第2の階調数のビットマップ形式で前記第2の文字を含む画像を示す第2の部分画像データと、を含む前記対象画像データを取得する取得部と、前記第1の部分画像データを解析して、前記第1の部分画像データによって示される画像において、少なくとも前記第1の文字を特定する特定部と、前記対象画像データを用いて、前記第1の文字と前記第2の文字とを含む処理済画像を示す処理済画像データを生成する生成部であって、前記処理済画像データは、(A)前記第1の文字を含む画像を示す第1の処理済データであって、前記第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された前記第1の処理済データと、(B)前記第2の文字を含む画像を示す第2の処理済データであって、前記第2の部分画像データのエッジ強度が変更されていない、または、前記第2の部分画像データのエッジ強度よりも低いエッジ強度を有する文字に変換する第2の変換処理が実行された前記第2の処理済データと、を含む、前記生成部と、を備える画像処理装置。
【0010】
第1の階調数で表現される第1の文字のエッジ強度は、第1の階調数より少ない第2の階調数で表現される第2の文字のエッジ強度より低くなりがちである。上記構成によれば、処理済画像データは、第1の文字を示し、第1の部分画像データのエッジ強度よりも高いエッジ強度を有する文字に変換する第1の変換処理が実行された第1の処理済データと、第2の文字を示し、エッジ強度が変更されていない、または、第2の部分画像データのエッジ強度よりも低いエッジ強度を有する文字に変換する第2の変換処理が実行された第2の処理済データと、を含む。この結果、処理済画像において、第1の文字と第2の文字とのエッジ強度が近づくので、第1の文字と第2の文字との見栄えの差を低減できる。この結果、処理済画像に生じる違和感を低減することができる。
[適用例3]
適用例1または2に記載の画像処理装置であって、
前記第1の変換処理は、前記第1の部分画像データに対して文字認識処理を実行することによって、前記第1の文字の文字コードを含む文字情報であって、前記第1の部分画像データに代えて前記第1の文字を表現する前記文字情報を生成する処理と、前記文字情報を用いて、前記第1の処理済データを生成する処理と、を含む、画像処理装置。
[適用例4]
適用例1〜3のいずれかに記載の画像処理装置であって、
前記第1の変換処理は、前記第1の部分画像データによって示される画像内において、前記第1の文字のエッジに沿う複数個の中間画素であって、前記第1の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の中間画素の個数を減少させる処理である、画像処理装置。
[適用例5]
適用例4に記載の画像処理装置であって、
前記生成部は、前記処理済画像のサイズに応じて、前記第1の部分画像データによって示される画像を拡大する拡大処理を実行し、
前記第1の変換処理は、前記拡大処理の拡大率が第1の拡大率である場合には、第1の幅分だけ前記複数個の中間画素の個数を減少させ、前記拡大処理の拡大率が前記第1の拡大率より大きな第2の拡大率である場合には、前記第1の幅より広い第2の幅分だけ前記複数個の中間画素の個数を減少させる処理である、画像処理装置。
[適用例6]
適用例1または2に記載の画像処理装置であって、
前記生成部は、
第1の場合には、前記第1の部分画像データに対して文字認識処理を実行することによって得られる前記第1の文字の文字コードを含む文字情報であって、前記第1の部分画像データに代えて前記第1の文字を表現する前記文字情報を生成する処理と、前記文字情報を用いて、前記第1の処理済データを生成する処理と、を含む前記第1の変換処理を実行し、
第2の場合には、前記第1の部分画像データによって示される画像内において、前記第1の文字のエッジに沿う複数個の中間画素であって、前記第1の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の中間画素の個数を減少させる前記第1の変換処理を実行する、画像処理装置。
[適用例7]
適用例6に記載の画像処理装置であって、
前記第1の場合は、前記第1の部分画像データに対して前記文字認識処理が実行された結果、文字認識の成功率が基準以上である場合であり、
前記第2の場合は、前記第1の部分画像データに対して前記文字認識処理が実行された結果、文字認識の成功率が前記基準未満である場合である、画像処理装置。
[適用例8]
適用例2に記載の画像処理装置であって、
前記第2の変換処理は、前記第2の部分画像データによって示される画像内において、前記第2の文字のエッジに沿う複数個の画素であって、前記第2の文字の色を示す値と、背景の色を示す値と、の間の階調を示す値を有する前記複数個の画素の個数を増加させる処理である、画像処理装置。
【0011】
なお、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、印刷装置、印刷方法、表示装置、表示方法、これら装置の機能または上記方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【0012】
図1】実施例における画像処理装置としての計算機200と複合機100との構成を示すブロック図である。
図2】印刷処理のフローチャートである。
図3】第1実施例の対象画像OI(図3(A))と対象画像データID(図3(B))との一例を示す図である。
図4】第1実施例のラスタライズ処理のフローチャートである。
図5】第1実施例の文字変換処理のフローチャートである。
図6】中間色領域除去処理の説明図である。
図7】第2実施例の対象画像OIb(図7(A))と対象画像データIDb(図3(B))との一例を示す図である。
図8】第2実施例のラスタライズ処理のフローチャートである。
図9】第2実施例の文字変換処理Aのフローチャートである。
図10】第2実施例の文字変換処理Bのフローチャートである。
図11】文字変換処理Bの説明図である。
【発明を実施するための形態】
【0013】
A.第1実施例:
A−1:画像処理装置の構成
次に、実施の形態を実施例に基づき説明する。図1は、実施例における画像処理装置としての計算機200と、複合機100と、の構成を示すブロック図である。
【0014】
計算機200は、例えば、パーソナルコンピュータであり、計算機200のコントローラとしてのCPU210と、ハードディスクドライブなどの不揮発性記憶装置220と、RAMなどの揮発性記憶装置230と、マウスやキーボードなどの操作部260と、液晶ディスプレイなどの表示部270と、通信部280と、を備えている。計算機200は、通信部280を介して、複合機100などの外部装置と通信可能に接続される。
【0015】
揮発性記憶装置230は、CPU210が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域231を提供する。不揮発性記憶装置220には、コンピュータプログラムCPが格納されている。コンピュータプログラムCPは、本実施例では、複合機100の後述するプリンタ部130を制御するためのプリンタドライバプログラムであり、サーバからダウンロードされる形態で提供される。これに代えて、コンピュータプログラムCPは、DVD−ROMなどに格納される形態で提供されてもよい。CPU210は、コンピュータプログラムCPを実行することにより、後述する印刷処理を実行する。
【0016】
複合機100は、イメージセンサを用いて原稿を光学的に読み取ることによってスキャンデータを生成するスキャナ部120と、所定の方式(例えば、インクジェット、レーザー)によって用紙などの印刷媒体に画像を印刷するプリンタ部130と、スキャナ部120やプリンタ部130を制御するCPUとメモリとを含む制御部110と、を備えている。
【0017】
A−2:印刷処理
図2は、印刷処理のフローチャートである。この印刷処理は、例えば、計算機200において、コンピュータプログラムCPが実行されて、プリンタドライバが起動されているときに、ユーザの開始指示に基づいて開始される。
【0018】
S10では、CPU210は、印刷すべき対象画像を示す対象画像データを取得する。対象画像データは、例えば、不揮発性記憶装置220に格納された複数個の画像データの中から、ユーザの指定に基づいて選択された1個の画像データである。
【0019】
図3は、第1実施例の対象画像OI(図3(A))と、対象画像データID(図3(B))と、の一例を示す図である。図3(A)の対象画像OIは、3個のオブジェクトOb1〜Ob3と、背景Bgと、を含んでいる。第1オブジェクトOb1は、写真Pcと、第1の文字Tx1と、を含む。第2オブジェクトOb2は、第2の文字Tx2を含む。第3オブジェクトOb3は、描画Drを含む。描画は、イラスト、表、線図、模様などを含む。
【0020】
対象画像データIDは、例えば、ページ記述言語に従って、画像を記述するデータである。対象画像データIDは、例えば、PDF(Portable Document Format)形式やXPS(XML Paper Specification)形式に従う画像ファイルである。これに代えて、対象画像データIDは、文書作成アプリケーションなどのアプリケーションプログラムによって作成され、該アプリケーションに固有の形式で記述された画像ファイルであっても良い。
【0021】
対象画像データIDは、複数種類のデータ形式のデータを含み得る。例えば、図3(B)の対象画像データIDは、第1オブジェクトOb1を示す第1オブジェクトデータOD1と、第2オブジェクトOb2を示す第2オブジェクトデータOD2と、第3オブジェクトOb3を示す第3オブジェクトデータOD3と、を含む。
【0022】
第1オブジェクトデータOD1は、ビットマップ形式で、写真Pcと第1の文字Tx1とを含む画像(すなわち、図3(A)の第1オブジェクトOb1)を示すビットマップデータである。第1オブジェクトデータOD1は、第1オブジェクトOb1を示すJPEGデータと、対象画像OI内における、第1オブジェクトOb1の位置を示す座標情報と、を含んでいる。JPEGデータは、例えば、第1オブジェクトOb1を示すRGB画像データを、JPEG(Joint Photographic Experts Group)圧縮で圧縮して得られる。RGB画像データは、複数個の画素にて構成されるビットマップデータであり、画素ごとの色をRGB値で表すRGB画像データである。1個の画素のRGB値は、赤(R)と緑(G)と青(B)との3個の色成分の階調値(以下、成分値とも呼ぶ)を含んでいる。本実施例では、各成分値の階調数は、256階調である。
【0023】
第2オブジェクトデータOD2は、ベクトル形式で、第2の文字Tx2を含む画像(すなわち、図3(A)の第2オブジェクトOb2)を示すベクトルデータである。第2オブジェクトデータOD2は、例えば、第2の文字Tx2を記述するコマンドを含む。このコマンドは、例えば、第2の文字Tx2を示す文字コードと、第2の文字Tx2のサイズを示すサイズ情報と、第2の文字Tx2のフォントを示すフォント情報と、対象画像OI内における第2の文字Tx2の位置を示す座標情報と、を含んでいる。
【0024】
第3オブジェクトデータOD3は、ベクトル形式で、描画Drを含む画像(すなわち、図3(A)の第3オブジェクトOb3)を示すベクトルデータである。第3オブジェクトデータOD3は、描画Drを記述するコマンドを含む。このコマンドは、描画Drを構成する図形や線、および、それらの色や対象画像OI内の位置を定義する情報を含む。
【0025】
S20では、CPU210は、対象画像データに対してラスタライズ処理を実行して、対象画像OIを示す処理済画像データを生成する。処理済画像データは、複数個の画素を含むビットマップデータであり、具体的には、RGB画像データである。ラスタライズ処理の詳細は、後述する。
【0026】
S30では、CPU210は、処理済画像データに対して色変換処理を実行する。これによって、処理済画像データの各画素のRGB値は、印刷用の複数個の色材に対応する複数個の成分値を含む色値に変換される。本実施例では、RGB値は、C(シアン)、M(マゼンタ)、Y(イエロ)、K(ブラック)の4個の成分値を含むCMYK値に変換される。
【0027】
S40では、CPU210は、色変換処理後の処理済画像データに対してハーフトーン処理を実行して、ドットの形成状態を画素ごと、かつ、色材ごとに表すドットデータを生成する。
【0028】
S50では、CPU210は、ドットデータを用いて印刷ジョブを生成する。例えば、CPU210は、ドットデータを、プリンタ部130を用いて印刷を行う際に用いられる順番に並べ替える処理と、ドットデータにプリンタ制御コードやデータ識別コードを付加する処理と、を実行する。この結果、複合機100によって解釈可能な印刷ジョブが生成される。S60では、CPU210は、生成された印刷ジョブを、複合機100に出力する。複合機100のプリンタ部130は、計算機200から出力された印刷ジョブに基づいて画像を印刷する。
【0029】
A−3:ラスタライズ処理
図2のS20のラスタライズ処理について説明する。図4は、第1実施例のラスタライズ処理のフローチャートである。S100では、CPU210は、対象画像データIDに含まれる複数個のオブジェクトデータOD1〜OD3の中から、処理対象の1個のオブジェクトデータを選択する。S105では、CPU210は、処理対象のオブジェクトデータが、ベクトルデータであるか否かを判断する。
【0030】
処理対象のオブジェクトデータがベクトルデータである場合には(S105:YES)、S110にて、CPU210は、処理対象のオブジェクトデータに含まれるコマンドを解釈することによって、処理対象のオブジェクトデータをキャンバス上に展開する展開処理を実行する。キャンバスは、例えば、生成すべき処理済画像と同一サイズを有し、全ての画素の値が初期値を有するRGB画像である。したがって、展開処理によって生成される処理済みデータは、例えば、処理対象のオブジェクトデータが、第2の文字Tx2(第2オブジェクトOb2)を示す第2オブジェクトデータOD2である場合には、第2の文字Tx2を示すRGB画像データである。処理済みデータによって示される画像、例えば、第2の文字Tx2を含む画像は、例えば、背景の色を示す背景色値を有する背景画素と、文字の色を示す文字色値を有する文字画素と、の2種類の画素を含む。そして、当該画像は、背景色値と、文字色値と、の間の階調を示す値を有する中間画素を含まない。このために、当該画像によって示される第2の文字Tx2のエッジのエッジ強度は、比較的高い。
【0031】
なお、処理対象のオブジェクトデータが、描画Dr(第3オブジェクトOb3)を示す第3オブジェクトデータOD3である場合には、描画Drを示すRGB画像データが、処理済みデータとして生成される。
【0032】
処理対象のオブジェクトデータがベクトルデータでない場合、すなわち、処理対象のオブジェクトデータがビットマップデータである場合には(S105:YES)、S115にて、CPU210は、処理対象のオブジェクトデータをキャンバス上に展開する展開処理を実行する。例えば、処理対象のオブジェクトデータが、図3(A)の写真Pcと第1の文字Tx1とを含む第1オブジェクトOb1を示す第1オブジェクトデータOD1である場合には、第1オブジェクトデータOD1に含まれるJPEGデータが展開される。この結果、第1オブジェクトOb1を示すRGB画像データが生成される。なお、処理対象のオブジェクトデータが、圧縮されていないRGB画像データを含む場合には、キャンバス上にそのまま配置される。
【0033】
S120では、CPU210は、S115にて生成済みのRGB画像データに対して、文字領域特定処理を実行する。文字領域特定処理は、RGB画像データによって示されるRGB画像内において、文字を含む1個以上の文字領域を特定する処理である。例えば、CPU210は、公知のエッジ検出フィルタをスキャンデータに適用して、RGB画像内のエッジを抽出して、エッジ量が基準より多い領域をオブジェクト領域として特定する。CPU210は、特定された1以上のオブジェクト領域のうち、文字としての特徴を有する領域を、文字領域として特定する。文字としての特徴は、例えば、色数が基準より少なく、かつ、背景色とは異なる色を有するオブジェクト画素の割合が基準より小さいことである。なお、文字領域特定処理は、例えば、様々な公知の手法を採用することができ、公知の手法は、例えば、特開2013−030090号公報、特開平5−225378号公報、特開2002−288589号公報に開示されている。
【0034】
例えば、S115にて展開されたRGB画像データによって示される画像が、図3(A)の第1オブジェクトOb1である場合には、第1オブジェクトOb1内の第1の文字Tx1を含む文字領域TAが特定される。S115にて展開されたRGB画像データによって示される画像に文字が含まれない場合には、文字領域は特定されない。
【0035】
S125では、CPU210は、文字領域特定処理によって特定された文字領域があるか否かを判断する。特定された文字領域がある場合には(S125:NO)、S130にて、CPU210は、展開されたRGB画像データに対して、文字変換処理を実行する。文字変換処理の詳細は、後述する。特定された文字領域がない場合には(S125:NO)、S130の処理はスキップされる。以上の説明から解るように、処理対象のオブジェクトデータが、第1の文字Tx1を含む第1オブジェクトOb1を示す第1オブジェクトデータOD1である場合には、処理済みデータは、RGB画像データに展開された後に、文字変換処理が実行されたデータである。
【0036】
S140では、CPU210は、対象画像データIDに含まれる全てのオブジェクトデータを処理したか否かを判断する。未処理のオブジェクトデータがある場合には(S140:YES)、CPU210は、S100に戻って、次のオブジェクトデータを選択する。全てのオブジェクトデータを処理した場合には(S140:YES)、CPU210は、ラスタライズ処理を終了する。
【0037】
ラスタライズ処理後の処理済画像データによって示される処理済画像は、図3(A)の対象画像OIと同様に、オブジェクトOb1〜Ob3を含む画像、すなわち、第1の文字Tx1と、第2の文字Tx2と、写真Pcと、描画Drと、を含む画像となる。ここで、処理済画像内の第1の文字Tx1は、上述したS130の文字変換処理によって、対象画像OI内の第1の文字Tx1のエッジ強度より高いエッジ強度を有する。
【0038】
A−4:文字変換処理
図4のS130の文字変換処理について説明する。図5は、第1実施例の文字変換処理のフローチャートである。S205では、CPU210は、文字領域特定処理によって特定された文字領域(例えば、図3(A)の文字領域TA)内の画像に対して、文字認識処理を実行する。
【0039】
文字認識処理は、公知のOCR(Optical Character Reader)技術を用いて、画像データを解析することによって、画像内の文字を示す文字情報を生成する処理である。生成される文字情報は、例えば、画像内の文字の識別情報である文字コードと、画像内の文字の位置を示す位置情報と、文字のサイズを示す情報と、文字のフォントを示す情報と、文字の色を示す情報と、を含む。
【0040】
S210では、CPU210は、S130の文字認識処理の結果、文字認識の成功率は、基準以上であるか否かを判断する。文字認識処理では、文字領域に含まれる各文字について、文字認識が成功した場合には、その文字の情報が出力され、文字認識が失敗した場合には、失敗した旨を示す情報が出力される。CPU210は、文字領域に含まれる文字の総数に対する、文字認識が成功した文字の個数の割合Trを算出する。CPU210は、当該割合Trが、予め定められた基準(例えば、80%)以上であるか否かを判断する。
【0041】
文字認識の成功率が、基準以上である場合には(S210:YES)、S215にて、CPU210は、文字領域内の文字を消去する。図3(A)の例では、文字領域TA内の第1の文字Tx1が、一旦、消去される。具体的には、CPU210は、文字領域の背景の色を示す背景色値を特定し、文字領域内の全ての画素の値を、背景色値に置換する。背景色値には、例えば、文字領域の複数個の画素の各成分の最頻値(Rbg、Gbg、Bbg)が用いられる。
【0042】
S220では、CPU210は、生成済みの文字情報を用いて、文字領域内に、文字を、再度、生成する。具体的には、CPU210は、文字を構成する文字画素を、文字情報によって示されるサイズ、色、フォントを有する文字を形成するように、文字領域内に配置する。図3(A)の例では、文字領域TA内に、再度、第1の文字Tx1が生成される。
【0043】
例えば、S220で、再度、文字が生成された後の文字領域内の画像は、例えば、背景色値を有する背景画素と、文字色値を有する文字画素と、の2種類の画素を含む。そして、当該画像は、背景色値と、文字色値と、の間の階調を示す値を有する中間画素を含まない。これに対して、S215にて、文字が消去される前の文字領域TA内の画像は、JPEGデータによって表される文字を含むので、背景画素と文字画素とに加えて、中間画素を含む。このために、このために、S215、S220の処理後の文字領域TA内の文字のエッジ強度は、S215、S220の処理前の文字領域TA内の文字のエッジ強度より高い。
【0044】
文字認識の成功率が、基準未満である場合には(S210:NO)、S230にて、CPU210は、中間色領域除去処理を実行する。図6は、中間色領域除去処理の説明図である。図6(A)には、文字領域内の文字の例として、文字Txが図示されている。図6(B)には、図6(A)のラスタラインL1上の画素の値を示すグラフである。ラスタラインL1は、文字Txを横断する横方向(図6(A)のX方向)に沿ったラスタラインである。図6(B)には、1個の成分(例えば、R成分)について図示されているが、他の成分についてもほぼ同様のグラフとなる。ラスタラインL1上の画素は、背景色値Bvを有する背景画素と、文字色値Tvを有する文字画素と、背景色値Bvと文字色値Tvとの間の階調を示す値を有する中間画素と、を含む。図6(B)には、複数個の背景画素によって構成される背景色領域BCと、複数個の文字画素によって構成される文字色領域TCと、複数個の中間画素によって構成される中間色領域MCと、が図示されている。中間色領域MCは、背景色領域BCと文字色領域TCとの間に位置している。
【0045】
第1実施例の中間色領域除去処理では、CPU210は、文字領域内の全てのラスタラインにおいて、複数個の中間画素のそれぞれを、背景画素に置換することによって、中間画素を除去する。この結果、図6(C)に示すように、例えば、処理後のラスタラインL1上において、中間色領域MCが除去される。図6(C)に示すように、中間画素が除去されることによって、文字と背景との間のエッジ近傍において、背景色値Bvから文字色値Tvへと変化する勾配が、処理前と比較して大きくなる。この結果、処理後の文字領域内の文字のエッジ強度が、処理前と比較して高くなる。
【0046】
以上の説明から解るように、文字変換処理によって、処理済みの文字領域内の文字のエッジ強度は、処理前の文字領域内の文字のエッジ強度と比較して高くなる。文字変換処理は、第1オブジェクトデータOD1によって示される画像内の文字を、第1オブジェクトデータOD1のエッジ強度よりも高いエッジ強度を有する文字に変換する処理である、と言うことができる。
【0047】
以上説明した第1実施例によれば、CPU210は、ビットマップ形式で第1の文字Tx1を表現する第1オブジェクトデータOD1と、ベクトル形式で第2の文字Tx2を表現する第2オブジェクトデータOD2と、を含む対象画像データIDを取得する(図2のS10)。CPU210は、ラスタライズ処理によって、第1の文字Tx1と第2の文字Tx2とを含む処理済画像を示す処理済画像データを生成する(図2のS20)。ラスタライズ処理では、CPU210は、第1オブジェクトデータOD1を解析して、オブジェクトデータOD1によって示される画像(例えば、第1オブジェクトOb1)において、第1の文字Tx1を特定する(図4のS120)。そして、CPU210は、以下の(A1)、(B1)の2つの処理済みデータを含む処理済画像データを生成する。
【0048】
(A1)第1の文字Tx1を示す処理済みデータであって、図4のS130にて文字変換処理が実行された処理済みデータ。
(B1)第2の文字Tx2を示す処理済みデータであって、文字変換処理が実行されていない、すなわち、エッジ強度が変更されていない処理済みデータ。
【0049】
ビットマップ形式で表現される第1の文字Tx1のエッジ強度は、ベクトル形式で表現される第2の文字Tx2のエッジ強度より低くなりがちである。これは、上述したように、ビットマップ形式で表現される文字画像は、文字画素と背景画素とに加えて、中間画素を含み得るためである。このために、仮に、対象画像データIDを、単純に、RGB画像データに展開すると、該RGB画像データによって示される画像では、第1の文字Tx1のエッジ強度が、第2の文字Tx2のエッジ強度より低くなる。このような画像は、例えば、第1の文字Tx1が、第2の文字Tx2よりもぼけているように見えるので、観察者に違和感を生じさせ得る。
【0050】
第1実施例によれば、ラスタライズ処理によって生成される処理済画像データは、上記(A1)の処理済みデータと、(B1)の処理済みデータと、を含む。この結果、処理済画像において、第1の文字Tx1と第2の文字Tx2とのエッジ強度が近づくので、第1の文字Tx1と第2の文字Tx2との見栄えの差を低減できる。この結果、処理済画像に生じる違和感を低減することができる。ひいては、処理済画像データを用いて、印刷される画像に生じる違和感を低減することができる。
【0051】
第1実施例において、図5の文字変換処理は、オブジェクトデータOD1に対して文字認識処理を実行することによって、第1の文字Tx1の文字コードを含む文字情報を生成する処理(S205)と、該文字情報を用いて、(A1)の処理済データを生成する処理(S220)と、を含む。文字情報は、オブジェクトデータOD1に代えて、第1の文字Tx1を表現する情報である、と言うことができる。この結果、処理済画像における第1の文字Tx1のエッジ強度を適切に高くすることができる。
【0052】
さらに、図5の文字変換処理は、オブジェクトデータOD1によって示されるビットマップ画像(RGB画像)内において、第1の文字Tx1のエッジに沿う複数個の中間画素の個数を減少させる処理(S230の中間色領域除去処理)を含む。この結果、第1の文字Tx1のエッジに沿う中間画素の個数を減少させることによって、処理済画像における第1の文字Tx1のエッジ強度を適切に高くすることができる。
【0053】
さらに、第1実施例では、オブジェクトデータOD1に対して文字認識処理が実行された結果、文字認識の成功率が基準以上である場合に(S210:YES)、文字認識処理(S205)を実行して得られる文字情報を用いて処理済データを生成する処理(S220)を含む文字変換処理が実行される。そして、文字認識の成功率が基準未満である場合に(S210:NO)、文字情報を用いることなく実行される中間色領域除去処理(S230)を含む文字変換処理が実行される。この結果、文字認識の成功率に基づいて、文字認識処理を利用する文字変換処理と、文字認識処理を利用しない文字変換処理と、を適切に使い分けることができる。したがって、処理済画像における第1の文字Tx1のエッジ強度をより適切に高くさせることができる。
【0054】
ここで、エッジ強度は、文字画素と、背景画素と、の境界(エッジ)において、文字色値から背景色値に至る値の変化の勾配(変化率)が高いほど、高くなる。したがって、エッジ強度は、文字画素と、背景画素と、の境界において、中間画素が存在する中間色領域の幅が小さいほど、高くなる。また、エッジ強度は、文字と背景とのコントラストが高いほど高くなる。なお、エッジ強度は、公知のsobelフィルタを適用することで、算出することができる。
【0055】
以上の説明から解るように、オブジェクトデータOD1は、第1の部分画像データの例であり、第2オブジェクトデータOD2は、第2の部分画像データの例である。また、(A1)の処理済みデータは、第1の処理済みデータの例であり、(B1)の処理済みデータは、第2の処理済みデータの例である。
【0056】
B.第2実施例:
B−1.対象画像データ
図7は、第2実施例の対象画像OIb(図7(A))と、対象画像データIDb(図7(B))と、の一例を示す図である。図7(A)の対象画像OIbは、図3(A)の対象画像OIと同様に、文字Tx1、Tx2と、描画Drと、写真Pcと、背景Bgと、を含む。
【0057】
図7(B)の対象画像データIDbは、いわゆる高圧縮PDFファイルである。図7(B)の対象画像データIDbは、背景画像BIを示す圧縮済の背景画像データBDと、第2の文字Tx2を示す圧縮済の文字二値データTDと、を含んでいる。対象画像データIDbは、さらに、第2の文字Tx2の色を示す文字色値と、背景画像BIにおける第2の文字Tx2の位置を示す座標情報と、を含んでいる。
【0058】
対象画像データIDbは、例えば、対象画像OIbを示す元画像データを用いて、所定の計算機によって、以下のように生成される。元画像データは、例えば、原稿を光学的に読み取ることによって生成されるスキャンデータなどのRGB画像データである。RGB画像データの各画素の値の階調数は、例えば、256階調である。所定の計算機は、例えば、スキャンデータを生成するスキャナのCPUである。計算機は、元画像データを解析して、対象画像OIb内の文字領域を特定し、当該文字領域内の文字を構成する複数個の文字画素を特定する。計算機は、当該文字画素を示す文字二値データTDを生成する。計算機は、元画像データにおいて、特定された文字画素の値を背景色値に置換することによって、対象画像OIbから文字が消去された背景画像BIを示す背景画像データBDを生成する。計算機は、文字二値データTDを二値データの圧縮に適したFAXG3方式で圧縮し、背景画像データBDを多値データの圧縮に適したJPEG方式で圧縮する。計算機は、これらの圧縮済みのデータTD、BDを文字色値と座標情報とともに、PDFファイルに格納して、対象画像データIDbを生成する。背景画像データBD(RGB画像データ)、文字二値データTDは、いずれもビットマップ形式の画像データである。ただし、背景画像データBDは、例えば、256階調の画素の値を有し、文字二値データTDは、背景画像データBDより少ない2階調の画素の値を有する。
【0059】
ここで、背景画像データBDによって示される背景画像BIは、背景Bgと、写真Pcと、描画Drと、第1の文字Tx1と、を含み、第2の文字Tx2を含んでいない。このように、第1の文字Tx1は、文字であるにも関わらずに、背景画像BIに含まれている。この理由は、例えば、上述した対象画像データIDbの生成過程において、対象画像OIb内の文字領域を特定する際に、第1の文字Tx1を含む文字領域の特定に失敗したからである。
【0060】
第2実施例では、このように予め生成された対象画像データIDbが、図2のS10にて、印刷すべき画像を示す画像データとして取得される。
【0061】
B−2.ラスタライズ処理
第2実施例では、ラスタライズ処理の内容が、第1実施例とは異なる。他の処理は、第1実施例と同様であるので、説明を省略する。
【0062】
図8は、第2実施例のラスタライズ処理のフローチャートである。S300では、CPU210は、対象画像データIDbに含まれる背景画像データBDを、処理対象として選択する。S305では、CPU210は、圧縮済みの背景画像データBDを展開して、展開された背景画像データBD(RGB画像データ)を生成する。
【0063】
S310では、CPU210は、展開された背景画像データBDに対して、図4のS120と同様の文字領域特定処理を実行する。背景画像データBDによって示される背景画像BIが、例えば、図3(A)の例のように、第1の文字Tx1を含む場合には、文字Tx1を含む文字領域TAが特定される。背景画像BIに文字が含まれない場合には、文字領域は特定されない。
【0064】
S315では、CPU210は、文字領域特定処理によって特定された文字領域があるか否かを判断する。特定された文字領域がない場合には(S320:NO)、S325にて、CPU210は、拡大処理を実行する。この拡大処理は、背景画像データBDによって示される背景画像BIを、生成すべき処理済画像のサイズに応じて拡大する処理である。生成すべき処理済画像のサイズは、印刷すべき画像のサイズであり、印刷解像度に基づいて決定される。拡大処理の拡大率ERは、縦方向および横方向の画素数の増加率である。本実施例では、拡大処理の拡大率ERは、例えば、2倍(200%)である(ER=2)。この場合には、拡大処理によって、横方向の画素数が2倍となり、かつ、縦方向の画素数が、2倍となるように、拡大処理が実行される。
【0065】
特定された文字領域がある場合には(S315:YES)、S320にて、CPU210は、展開された背景画像データBDに対して、文字変換処理Aを実行する。文字変換処理Aの詳細は、後述する。文字変換処理Aは、上述した拡大処理を含む。
【0066】
以上説明したS300〜S325にて、背景画像BIを示す処理済みデータが生成される。
【0067】
S330では、CPU210は、対象画像データIDbに含まれる1個の文字二値データTDを、処理対象として選択する。S335では、CPU210は、圧縮済みの文字二値データTDを展開して、展開された文字二値データTDを生成する。
【0068】
S340では、CPU210は、展開された文字二値データTDによって示される文字、例えば、図7(A)の第2の文字Tx2を、S300〜S325にて生成済みの処理済みデータによって示される背景画像BI上に配置する。CPU210は、例えば、第2の文字Tx2を背景画像BIのサイズに応じて拡大する。CPU210は、拡大済みの第2の文字Tx2を、座標情報によって示される位置に、文字色値によって示される色で、背景画像BI上に配置する。背景画像BIは、RGB画像データで示されるから、第2の文字Tx2は、文字二値データからRGB画像データに変換されたうえで、背景画像BI上に配置される。
【0069】
S345では、CPU210は、背景画像BI上に配置された第2の文字Tx2に対して文字変換処理Bを実行する。文字変換処理Bの詳細は、後述する。
【0070】
S350では、CPU210は、対象画像データIDbに含まれる全ての文字二値データを処理したか否かを判断する。図7(B)の例では、対象画像データIDbに含まれる文字二値データは1個であるが、高圧縮PDFファイルである対象画像データは、複数個の文字二値データを含み得る。
【0071】
未処理の文字二値データがある場合には(S350:NO)、CPU210は、S330に戻って、未処理の文字二値データを選択する。全ての文字二値データを処理した場合には(S350:YES)、ラスタライズ処理は終了される。以上のラスタライズ処理によって、対象画像データIDbを用いて、第1の文字Tx1と第2の文字Tx2とを含む処理済画像を示す処理済画像データが生成される。
【0072】
B−3.文字変換処理A
図8のS320の文字変換処理Aについて説明する。図9は、第2実施例の文字変換処理Aのフローチャートである。
【0073】
S405では、CPU210は、図8のS325と同様に、拡大率ERで、展開された背景画像データBDを拡大する拡大処理を実行する。
【0074】
S410では、CPU210は、拡大処理の拡大率ERに応じて、補正パラメータAPを決定する。補正パラメータAPは、例えば、拡大率ERの逆数に決定される(AP=1/ER)。本実施例では、上述したように、拡大率ERは、2倍であるので、補正パラメータAPは、1/2に決定される。
【0075】
S415では、CPU210は、拡大済みの背景画像BIにおいて、文字領域(例えば、図7(A)の文字領域TA)内の画像を解析して、中間色領域MCの幅Wmcを特定する。図6(A)、(B)を例として、具体的に説明する。CPU210は、文字領域TA内の文字Tx(図6(A))を横断するラスタラインL1上の複数個の画素を解析することによって、図6(B)に示す中間色領域MCの幅Wmcを特定する。
【0076】
S420では、CPU210は、補正パラメータAPに基づいて、中間色領域MCの一部分を除去する。具体的には、CPU210は、中間色領域MCのうち、文字色領域TC側の補正パラメータAP分の幅だけ残して、背景色領域BC側の残りの部分を除去する。中間色領域MCの除去は、図5のS230の中間色領域除去処理と同様に、除去対象の部分を構成する複数個の中間画素のそれぞれを、背景画素に置換することによって行われる。図6(D)は、補正パラメータAPが、1/2である場合の例である。この場合には、図6(D)に示すように、図6(B)の中間色領域MCのうち、文字色領域TC側の1/2だけ残して、背景色領域BC側の1/2が除去される。なお、拡大率ERが3倍である場合には、補正パラメータAPが、1/3である。したがって、この場合には、図6(B)の中間色領域MCのうち、文字色領域TC側の1/3だけ残して、背景色領域BC側の2/3が除去される(図示省略)。
【0077】
以上の説明から解るように、文字変換処理Aでは、CPU210は、拡大処理の拡大率ERが第1の拡大率(例えば、2倍)である場合には、第1の幅(例えば、1/2の幅)分だけ複数個の中間画素の個数を減少させる。そして、CPU210は、拡大処理の拡大率ERが第1の拡大率より大きな第2の拡大率(例えば、3倍)である場合には、第1の幅より広い第2の幅(例えば、2/3の幅)分だけ複数個の中間画素の個数を減少させる。
【0078】
具体的には、文字変換処理Aでは、CPU210は、拡大処理の拡大率ERが、M倍(M>1)である場合には、中間色領域MCの{1−(1/M)}の幅分だけ複数個の中間画素の個数を減少させる。
【0079】
この結果、拡大率ERに応じて、適切な幅分の複数個の画素の値が変更されるので、処理済画像において、例えば、文字領域TA内の第1の文字Tx1(図7(A))のエッジ強度を適切に高くすることができる。具体的には、拡大処理が実行されると、文字のエッジのぼけた部分、すなわち、中間色領域MCも拡大される。このために、拡大済みの画像では、文字のぼけが目立ち得る。文字変換処理Aでは、拡大処理の拡大率ERに応じて、中間画素の個数が減少されるので、拡大済みの画像の文字のぼけの程度が、拡大前の画像と同程度になるように、拡大済みの画像の文字のエッジ強度を高くすることができる。
【0080】
以上の説明から解るように、文字変換処理Aは、背景画像BI内の文字を、背景画像データBDのエッジ強度よりも高いエッジ強度を有する文字に変換する処理である、と言うことができる。
【0081】
B−4.文字変換処理B
図8のS345の文字変換処理Bについて説明する。図10は、第2実施例の文字変換処理Bのフローチャートである。
【0082】
S505では、S510の平滑化処理で用いられる平滑化パラメータSPを決定する。平滑化パラメータSPには、例えば、平滑化フィルタのサイズP(Pは、3以上の奇数)が用いられる。平滑化フィルタは、例えば、注目画素を中心とする縦P個×横P個のサイズを有し、フィルタの範囲内の画素の平均値を注目画素の値とするフィルタである。本実施例では、平滑化パラメータSPは、予め定められた値に決定される。
【0083】
S510では、CPU210は、背景画像BI上に配置された文字二値データに基づく文字、例えば、図7(A)の第2の文字Tx2に対して、平滑化処理を実行する。平滑化処理は、例えば、処理対象の文字を含む領域内の複数個の画素に対して、上述した平滑化フィルタを適用することによって実行される。平滑化フィルタのサイズは、平滑化パラメータSPに基づいて決定される。
【0084】
平滑化処理によって、処理対象の文字のエッジに沿って、中間画素によって構成される中間色領域MCが付加される。図11は、文字変換処理Bの説明図である。図11(A)は、文字変換処理Bの平滑化処理の処理対象となる文字について、図6(B)と同様に、文字を横断するラスタライン上の画素の値を示すグラフである。文字変換処理Bの処理対象となる文字は、文字二値データに基づく文字である。したがって、図11(A)に示すように、処理前の文字は、文字画素によって構成される文字色領域TCと、背景画素によって構成される背景色領域BCと、を含み、中間画素によって構成される中間色領域MCを含まない。
【0085】
図11(B)には、平滑化処理が実行された後の文字について、図11(A)と同じラスタライン上の画素の値を示すグラフである。図11(B)に示すように、平滑化処理によって、文字色領域TCと背景色領域BCとの間のエッジに、中間画素によって構成される中間色領域MCが付加される。文字変換処理Bは、処理対象の文字に沿って、複数個の中間画素を増加させる処理である、と言うことができる。
【0086】
以上の説明から解るように、文字変換処理Bによれば、処理対象の文字、例えば、図7(A)の第2の文字Tx2のエッジに沿う中間画素の個数を増加させることによって、処理済画像における文字のエッジ強度を適切に低くすることができる。
【0087】
本実施例の文字二値データTDは、スキャンデータを二値化して得られたデータである。スキャンデータによって示される画像内の文字のエッジには、一般的に、ぼけた領域、すなわち、中間画素で構成される領域が存在する。このために、文字二値データTDによって示される第2の文字Tx2のエッジは、スムーズではなく、がたつきを含んでいる。したがって、文字二値データTDによって示される第2の文字Tx2に、中間色領域MCを付加することによってエッジ強度を低くすると、文字のエッジのがたつきを目立たなくするとともに、元画像の文字に近づけることができる。この結果、文字の見栄えを向上することができる。
【0088】
以上の説明から解るように、文字変換処理Bは、文字二値データTDによって示される文字を、文字二値データTDのエッジ強度よりも低いエッジ強度を有する文字に変換する処理である、と言うことができる。
【0089】
以上説明した第2実施例によれば、CPU210は、256階調のビットマップ形式で第1の文字Tx1を含む背景画像BIを示す背景画像データBDと、2階調のビットマップ形式で第2の文字Tx2を含む画像を示す文字二値データTDと、を含む対象画像データIDbを取得する。CPU210は、図8のラスタライズ処理によって、第1の文字Tx1と第2の文字Tx2とを含む処理済画像を示す処理済画像データを生成する。ラスタライズ処理では、CPU210は、背景画像データBDを解析して、背景画像データBDによって示される背景画像BIにおいて、第1の文字Tx1を特定する(図8のS310)。そして、CPU210は、以下の(A2)、(B2)の2つの処理済みデータを含む処理済画像データを生成する。
【0090】
(A2)第1の文字Tx1を示す処理済みデータであって、図8のS320にて文字変換処理Aが実行された処理済みデータ。
(B2)第2の文字Tx2を示す処理済みデータであって、図8のS345にて文字変換処理Bが実行された処理済みデータ。
【0091】
256階調で表現される第1の文字Tx1のエッジ強度は、2階調で表現される第2の文字Tx2のエッジ強度より低くなりがちである。これは、256階調で表現される文字画像は、文字画素と背景画素とに加えて、中間画素を含み得るためである。このために、仮に、対象画像データIDbを、単純に、RGB画像データに展開すると、第1実施例と同様に、該RGB画像データによって示される画像では、第1の文字Tx1のエッジ強度が、第2の文字Tx2のエッジ強度より低くなる。このような画像は、例えば、第1の文字Tx1が、第2の文字Tx2よりもぼけているように見えるので、観察者に違和感を生じさせ得る。
【0092】
第2実施例によれば、ラスタライズ処理によって生成される処理済画像データは、上記(A2)の処理済みデータと、(B2)の処理済みデータと、を含む。この結果、処理済画像において、第1の文字Tx1と第2の文字Tx2とのエッジ強度が近づくので、第1の文字Tx1と第2の文字Tx2との見栄えの差を低減できる。この結果、処理済画像に生じる違和感を低減することができる。ひいては、処理済画像データを用いて、印刷される画像に生じる違和感を低減することができる。
【0093】
以上の説明から解るように、背景画像データBDは、第1の部分画像データの例であり、文字二値データTDは、第2の部分画像データの例である。また、(A2)の処理済みデータは、第1の処理済みデータの例であり、(B2)の処理済みデータは、第2の処理済みデータの例である。
【0094】
C.変形例:
(1)上記第1実施例のオブジェクトデータOD1や第2実施例の背景画像データBDの階調数は、256階調に限られず、例えば、64階調や128階調であっても良い。一般的には、第1実施例のオブジェクトデータOD1や第2実施例の背景画像データBDの階調数は、3階調以上の階調数であれば良い。
【0095】
(2)上記第1実施例の文字変換処理や第2実施例の文字変換処理Aに代えて、処理対象の画像内の文字のエッジ強度を高くする他の処理が実行されても良い。また、第2実施例の文字変換処理Bに代えて、処理対象の画像内の文字のエッジ強度を低くする他の処理が実行されても良い。エッジ強度を高くする他の処理としては、画像内のコントラストを高くする公知のコントラスト調整処理や、画像内のノイズを除去する公知のノイズ除去処理が採用され得る。また、エッジ強度を低くする他の処理としては、画像内のコントラストを低くする公知のコントラスト調整処理や、画像にノイズを付加するノイズ付加処理が採用され得る。
【0096】
(3)上記第2実施例では、文字変換処理Aと文字変換処理Bとの両方を実行して、処理済み画像において、第1の文字Tx1と、第2の文字Tx2と、のエッジ強度を近づけている。これに代えて、文字変換処理Bを省略して、文字変換処理Aのみを実行することで、第1の文字Tx1と、第2の文字Tx2と、のエッジ強度を近づけても良い。換言すれば、(B2)の処理済みデータは、第2の文字Tx2を示す処理済みデータであって、文字二値データTDのエッジ強度が変更されていない処理済みデータであっても良い。なお、この場合には、例えば、文字変換処理Aに代えて、第1実施例の文字変換処理が実施されても良い。
【0097】
(4)上記第1実施例の文字変換処理(図5)では、文字認識処理の成功率に基づいて、文字認識処理を利用する文字変換処理(S215、S220)と、文字認識処理を利用しない文字変換処理(S230)と、を使い分けている。これに代えて、例えば、ユーザの指示に基づいて、これらの2種類の文字変換処理を使い分けても良い。この場合には、例えば、CPU210は、図8のS205の後に、UI画面を表示して、ユーザに文字認識処理の結果を表示する。CPU210は、該UI画面を介して、2種類の文字変換処理のいずれを用いるかの指示をユーザから取得する。CPU210は、その後に、ユーザによって指示された文字変換処理を実行する。
【0098】
(5)上記各実施例では、図2のS20にて生成された処理済画像データを用いて、印刷ジョブの生成・出力が行われ(S50、S60)、処理済画像の印刷が行われる。これに代えて、S20にて生成された処理済画像データを用いて、処理済画像の表示部270への表示が行われても良い。また、処理済画像データは、例えば、PDFファイルに格納されて、不揮発性記憶装置220に保存されても良い。
【0099】
(6)図8の文字変換処理では、S205にて、文字認識処理を実行することによって、第1の文字Tx1の文字情報を取得している。例えば、対象画像データIDが、PDFファイルである場合には、第1の文字Tx1の文字情報が、予め付加されている場合がある。このような場合には、文字認識処理を省略して、予め付加された文字情報を取得しても良い。
【0100】
(7)図10の文字変換処理Bでは、平滑化パラメータSPとして、平滑化フィルタのサイズPが用いられているが、これに代えて、平滑化フィルタの適用回数Nが用いられても良い。この場合には、S510の平滑化処理では、固定サイズの平滑化フィルタを、平滑化パラメータSPとしての適用回数N分だけ、処理対象の文字に対して適用する処理が実行される。
【0101】
(8)図2の印刷処理を実行する画像処理装置としての計算機200は、パーソナルコンピュータとは異なる種類の装置、例えば、複合機100、デジタルカメラ、スキャナ、スマートフォンであってもよい。複合機100が図2の印刷処理を実行する場合には、処理済画像データを用いる印刷は、例えば、複合機100のプリンタ部130を用いて実行される。また、図2の印刷処理を実行する画像処理装置は、例えば、計算機200や複合機100から対象画像データを取得して画像処理を実行するサーバであっても良い。このようなサーバは、ネットワークを介して互いに通信可能な複数個の計算機であっても良い。この場合には、ネットワークを介して互いに通信可能な複数個の計算機の全体が、画像処理装置に対応する。
【0102】
(9)上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、図1の計算機200のCPU210が実行している処理の一部は、専用のハードウェア回路によって実現されてもよい。
【0103】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【0104】
100...複合機、110...制御部、120...スキャナ部、130...プリンタ部、200...計算機、210...CPU、220...不揮発性記憶装置、230...揮発性記憶装置、231...バッファ領域、260...操作部、270...表示部、280...通信部、CP...コンピュータプログラム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11