JP4766030B2 - 画像処理装置及び画像処理プログラム - Google Patents

画像処理装置及び画像処理プログラム Download PDF

Info

Publication number
JP4766030B2
JP4766030B2 JP2007265652A JP2007265652A JP4766030B2 JP 4766030 B2 JP4766030 B2 JP 4766030B2 JP 2007265652 A JP2007265652 A JP 2007265652A JP 2007265652 A JP2007265652 A JP 2007265652A JP 4766030 B2 JP4766030 B2 JP 4766030B2
Authority
JP
Japan
Prior art keywords
image
character
module
color
vector information
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.)
Expired - Fee Related
Application number
JP2007265652A
Other languages
English (en)
Other versions
JP2009094955A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2007265652A priority Critical patent/JP4766030B2/ja
Priority to US12/137,343 priority patent/US8483499B2/en
Publication of JP2009094955A publication Critical patent/JP2009094955A/ja
Application granted granted Critical
Publication of JP4766030B2 publication Critical patent/JP4766030B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/18Extraction of features or characteristics of the image
    • G06V30/182Extraction of features or characteristics of the image by coding the contour of the pattern
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、画像処理装置及び画像処理プログラムに関する。
画像データ全体又はその画像内の個々の文字画像を、ベクトル情報(アウトライン情報を含む)に変換し、画像の再利用を容易にしようとする技術が存在する。例えば、文字画像をアウトライン化することによって、画像を拡大したときであっても、画質劣化のない画像を得ることができるようになる。又は、アウトライン化によって、編集等の再利用が容易となる。
これに関連する技術として、例えば、特許文献1には、紙原稿中の文字をアウトライン化する際には、できるだけ高解像度で二値化した文字オブジェクト二値画像をアウトライン化した方が、高画質なアウトラインデータを生成できるが、一方で、高解像度二値画像をアウトライン化する際には、情報量が大きいためにアウトライン化処理に時間がかかるという問題点を鑑み、処理時間を短縮しつつ、高品位なアウトライン化画像を生成することを目的とし、小さな文字は高解像度二値画像よりアウトライン化し、大きな文字は低解像度二値画像よりアウトライン化することが開示されている。つまり、入力画像の文字認識を行い、かつ文字形状をアウトライン化することを行っている。
さらに、カラー画像を層に分けて、ファイル化する例を示す。
一般にカラー画像のデータ量は大きいため、圧縮して蓄積、あるいは、伝送が行われる。画像に歪みを与えない可逆圧縮方式では、高い圧縮率を得ることができないため、一般的な圧縮画像フォーマットとしては、JPEG方式(さらに具体的にはJPEGベースライン方式、以下、単純にJPEG方式と称する)が利用されることが多い。JPEG方式は非可逆符号化の一種であるため、圧縮によって、画像に歪みが生じる。そのため、極端に高い圧縮率を得ることは困難である。
そこで、従来のJPEG方式よりも高い圧縮率を得る方式として、特許文献2又は特許文献3に示されるような多層構造の画像フォーマットが提案されてきた。
これらは、JPEG方式による画像の歪みは、主として、高周波成分電力の大きな画像のエッジ部分に発生するという現象を避けるため、入力画像を、高周波成分電力の大きな文字/線画部分と、文字/線画部分を除いたバックグラウンド部分に分解して、バックグラウンド部分は、JPEG方式で高い圧縮率で圧縮し、文字/線画部分は、可逆符号化で圧縮するという方策を採るものである。
例えば、特許文献2には、デジタル画像データの圧縮率を高めることを課題とし、オリジナルピクセルマップを2つのプレーンにセグメント化し、次に各プレーンを効率的な方法で別々に圧縮し、損失性圧縮法で十分に圧縮するピクセルは一方のプレーンに配置され、非損失性圧縮が施されるべきピクセルはもう一方のプレーンに配置され、セレクタプレーンはオリジナルピクセルマップの全てのピクセルを追跡するために作成されることが開示されている。
また、例えば、特許文献3には、文書を、複数のバイナリ前景平面を有する複合ラスタコンテンツフォーマットで画像データに変換するシステム及び方法を提供することを課題とし、画像データを線毎に分析して、類似の色及びエッジ特徴を有する画素を特定し、1つの線上にあるこれらの画素と別の線上の画素とは、両者が類似の特徴を共有する場合にはリンクされ、これらのリンクされた画素同士は領域としてグループ化され、この領域の平均色が計算され、画素が属する領域を特定する画像マップが、領域の最終的なテーブルと共に生成されることが開示されている。
特開2006−253892号公報 特開2000−196893号公報 特開2005−228331号公報
ところで、多値画像内の文字等と絵柄を分離して、それぞれに適した符号化を行うことによって、高い圧縮率を得ることができるが、文字等の再現性に関してはその符号化による品質に左右されることになる。
本発明は、多値画像内の2値画像をベクトル化した場合であっても、前記多値画像を用いて、多値画像を生成した場合の再現性の劣化を抑制するようにした画像処理装置及び画像処理プログラムを提供することを目的としている。
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項1記載の発明は、多値画像から前景の多値画像、背景の多値画像及び該前景の多値画像を切り抜くための選択情報である2値画像を抽出する画像抽出手段と、前記画像抽出手段によって抽出された2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、前記画像抽出手段によって抽出された前景の多値画像、前記画像抽出手段によって抽出された背景の多値画像、前記ベクトル情報生成手段によって生成されたベクトル情報、該背景の多値画像の描画命令記述、該ベクトル情報で該前景の多値画像を切り抜く切り抜き描画記述及び該切り抜き描画記述によって切り抜かれた画像を該背景の多値画像に描画する切り抜き画像描画記述を有するファイルを形成するファイル形成手段を具備し、前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、前記ベクトル情報で切り抜かれる前記前景の多値画像は、アウトライン化された文字を含む領域内を該文字の色で塗り潰したものとすることを特徴とする画像処理装置である。
請求項記載の発明は、前記画像処理装置は、前記画像抽出手段によって抽出された前景の多値画像を符号化する第1の符号化手段と、前記画像抽出手段によって抽出された背景の多値画像を符号化する第2の符号化手段を具備し、前記ファイル形成手段は、前記第1の符号化手段によって符号化された前景の多値画像、前記第2の符号化手段によって符号化された背景の多値画像、前記ベクトル情報生成手段によって生成されたベクトル情報、該背景の多値画像の描画命令記述、該ベクトル情報で該前景の多値画像を切り抜く切り抜き描画記述及び該切り抜き描画記述によって切り抜かれた画像を該背景の多値画像に描画する切り抜き画像描画記述を有するファイルを形成することを特徴とする請求項に記載の画像処理装置である。
請求項3記載の発明は、多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記画像抽出手段によって抽出された2値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段を具備し、前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、前記色決定手段は、文字内の前記2値画像の色が一つである場合、文字内の前記2値画像の色が複数であってその色が類似している場合、文字内の前記2値画像の色が複数であってその色が類似していない場合に分けて処理を行うことを特徴とする画像処理装置である。
請求項4記載の発明は、多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記多値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段を具備し、前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、前記色決定手段は、前記多値画像内の文字内の平均色をベクトル情報の色情報とする、前記多値画像内の文字内の画素値が類似している場合と類似していない場合に分けてベクトル情報の色情報を決定する、又は前記多値画像内の文字の中心付近の色でベクトル情報の色情報を決定することを特徴とする画像処理装置である。
請求項記載の発明は、前記色決定手段は、前記ベクトル情報に対応する2値画像が複数ある場合、該2値画像の色の平均値又は色の占める面積に基づいて、該ベクトル情報の色を決定することを特徴とする請求項又はに記載の画像処理装置である。
請求項6記載の発明は、コンピュータを、多値画像から前景の多値画像、背景の多値画像及び該前景の多値画像を切り抜くための選択情報である2値画像を抽出する画像抽出手段と、前記画像抽出手段によって抽出された2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、前記画像抽出手段によって抽出された前景の多値画像、前記画像抽出手段によって抽出された背景の多値画像、前記ベクトル情報生成手段によって生成されたベクトル情報、該背景の多値画像の描画命令記述、該ベクトル情報で該前景の多値画像を切り抜く切り抜き描画記述及び該切り抜き描画記述によって切り抜かれた画像を該背景の多値画像に描画する切り抜き画像描画記述を有するファイルを形成するファイル形成手段として機能させ、前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、前記ベクトル情報で切り抜かれる前記前景の多値画像は、アウトライン化された文字を含む領域内を該文字の色で塗り潰したものとすることを特徴とする画像処理プログラムである。
請求項7記載の発明は、コンピュータを、多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記画像抽出手段によって抽出された2値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段として機能させ、前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、前記色決定手段は、文字内の前記2値画像の色が一つである場合、文字内の前記2値画像の色が複数であってその色が類似している場合、文字内の前記2値画像の色が複数であってその色が類似していない場合に分けて処理を行うことを特徴とする画像処理プログラムである。
請求項8記載の発明は、コンピュータを、多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記多値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段として機能させ、前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、前記色決定手段は、前記多値画像内の文字内の平均色をベクトル情報の色情報とする、前記多値画像内の文字内の画素値が類似している場合と類似していない場合に分けてベクトル情報の色情報を決定する、又は前記多値画像内の文字の中心付近の色でベクトル情報の色情報を決定することを特徴とする画像処理プログラムである。
請求項の画像処理装置によれば、多値画像内の2値画像をベクトル化した場合であっても、前記多値画像を用いて、多値画像を生成した場合の再現性の劣化を抑制することができるようになる。
請求項の画像処理装置によれば、本構成を有していない場合に比較して、容量が増大することを抑制したファイル画像を生成することができるようになる。
請求項の画像処理装置によれば、多値画像内の2値画像をベクトル化した場合であっても、色情報を付与して、多値画像を生成した場合の再現性の劣化を抑制することができるようになる。
請求項の画像処理装置によれば、多値画像内の2値画像をベクトル化した場合であっても、色情報を付与して、多値画像を生成した場合の再現性の劣化を抑制することができるようになる。
請求項の画像処理装置によれば、本構成を有していない場合に比較して、再現性の劣化を抑制した上で、より容量効率のよい色情報を付与することができるようになる。
請求項の画像処理プログラムによれば、多値画像内の2値画像をベクトル化した場合であっても、前記多値画像を用いて、多値画像を生成した場合の再現性の劣化を抑制することができるようになる。
請求項の画像処理プログラムによれば、多値画像内の2値画像をベクトル化した場合であっても、色情報を付与して、多値画像を生成した場合の再現性の劣化を抑制することができるようになる。
請求項の画像処理プログラムによれば、多値画像内の2値画像をベクトル化した場合であっても、色情報を付与して、多値画像を生成した場合の再現性の劣化を抑制することができるようになる。
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
なお、本実施の形態で用いるモジュールとは、一般的に論理的に分離可能なソフトウエア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、コンピュータ・プログラム、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させること、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能にほぼ一対一に対応しているが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)を含む。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。
なお、画像データとは、画像を、数値を有した点(ドット)の羅列として表現したデータをいい、ビットマップ画像、ラスタ画像ともいわれる。圧縮又は暗号化等が行われた画像データでもよいが、ベクトル情報又はアウトライン情報は含まれない。画像データを格納するファイル形式として、BMP(BitMaP)、TIFF(Tagged Image File Format)、PNG(Portable Network Graphics)、JPEG/JPEG2000(Joint Photographic Experts Group)、GIF(Graphics Interchange Format)などがある。また、本実施の形態で扱う画像データは、1枚の画像であってもよいし、複数枚の画像データであってもよい。なお、本実施の形態が入力対象とする画像データは、多値画像(カラー画像等を含む)データであり、1画素に3以上の状態(カラー、多値)がある画像データである。
また、画素の塊とは、4連結又は8連結で連続する画素領域(一つの連結成分)を少なくとも含み、これらの画素領域の集合をも含む。これらの画素領域の集合とは、4連結等で連続した画素領域が複数あり、その複数の画素領域が近傍にあるものをいう。ここで、近傍にあるものとは、例えば、互いの画素領域が距離的に近いもの、文章としての1行から1文字ずつ切り出すように縦又は横方向に射影し、空白地点で切り出した画像領域、又は所定間隔で切り出した画像領域等がある。また、文字認識の際に、文字矩形を取得して、その文字矩形内の黒画素を文字として捉えてもよい。
なお、1つの画素の塊として、1文字の画像となる場合が多い。ただし、実際に人間が文字として認識できる画素領域である必要はない。文字の一部分、文字を形成しない画素領域等もあり、何らかの画素の塊であればよい。以下、「文字」又は「文字画像」という場合は、特に断りがない限り「画素の塊」の意で用いる。
また、ベクトル化には、アウトライン化を含む。アウトライン化とは、文字画像の輪郭形状をベジエのような曲線等で近似して表す方法である。このような手法の例として、特許文献1記載の技術を挙げることができる。また、ベクトル化とは、対象としては文字画像に限られず、前述の画素の塊を対象として、直線、円弧、ベジエ曲線、面、塗り潰し等の数式(アルゴリズム等を含む)等の描画情報によってその画像を表現するものである。以下、アウトライン化を主に例示して説明するが、その他のベクトル化であってもよい。また、ここでは、文字画像に文字コードを割り当てたファイルを生成することもベクトル化に含める。
また、ベクトル情報から画像データを生成すること(ベクトル化の逆)をレンダリング処理という。
また、ファイルとは、一つの単位として記憶又は処理される、名前の付いた情報の集合であり、OS(オペレーティングシステム)や応用ソフトウエアがプログラムやデータを扱う際のひとまとまりの単位となるものである。
<第1の実施の形態>
第1の実施の形態(第1−1の実施の形態〜第1−3の実施の形態を含む)の概要について説明する。
第1の実施の形態では、多値画像をN(1以上の整数)層に分離した2値画像に対し、アウトライン化処理を行う。なお、N層に分離する技術として特許文献3に示すような技術を用いてもよい。つまり、多値画像内の色とエッジの特徴に基づいて、N層に分離する。その場合に、類似の色値を有する画素群であって、その画素群を囲んでおり、連続した境界を有する領域を1つの2値画像とすればよい。
N個の2値画像それぞれに対してアウトライン化処理を行い、フォント登録を行って、N個の文字層と1個の多値画像層に変換する。ここで、フォント登録とは、フォントファイルを作成することである。
出力データフォーマットは、1個の多値画像層と、各々に色データを付与したN個の文字層データ(フォントファイルを含んでもよい)である。
フォントファイルとしては、N個の文字層それぞれに独立にフォントファイルを形成してもよいし、画像全体で一つのフォントファイルを形成してもよい。
フォアグラウンド画像とは、主に文字又は線画等からなる画像であり、2値画像となってもその画像の形状は基本的に異なるものにはならない画像をいう。以下に説明する実施の形態では、ベクトル化の対象となる画像である。
バックグラウンド画像とは、フォアグラウンド画像以外の画像をいい、主に写真又は画像の背景となる地肌等からなる画像であり、多値画像で表現すべき画像である。
<第1−1の実施の形態>
図1は、第1−1の実施の形態の構成例についての概念的なモジュール構成図を示している。
第1−1の実施の形態は、図1に示すように、N層分離モジュール110、文字層処理モジュール121、文字層処理モジュール122、文字層処理モジュール12N、多値バックグラウンド層処理モジュール129、出力ファイル形成モジュール130を有している。
N層分離モジュール110は、文字層処理モジュール121、文字層処理モジュール122、文字層処理モジュール12N、多値バックグラウンド層処理モジュール129、出力ファイル形成モジュール130と接続されており、入力した多値画像からベクトル化の対象となる画像を2値画像として抽出する。さらに、抽出した2値画像以外の画像をバックグラウンドの多値画像として抽出するようにしてもよい。つまり、入力画像は、N層分離モジュール110によって、色毎に分けられたN層の2値画像(1色に1層を割り当てる)と、1層のバックグラウンド多値画像に分けられる。なお、N層に分離する技術として特許文献3に示すような技術を用いてもよい。
また、N層分離モジュール110は、2値画像として複数を抽出し、その各々の2値画像の色情報を抽出し、その色情報を出力ファイル形成モジュール130に渡すようにしてもよい。色情報とは、抽出した2値画像の各々の2値画像の代表となる色を表すデータである。具体的には、RGB等で表される色のデータ、色を識別できる識別子(「2」は「青」を表す等)等がある。
文字層処理モジュール121、文字層処理モジュール122、文字層処理モジュール12Nは、N層分離モジュール110、出力ファイル形成モジュール130と接続されており、N層分離モジュール110によって抽出された2値画像をベクトル化してベクトル情報を生成し、そのベクトル情報を含む結果を文字層データとして出力ファイル形成モジュール130へ渡す。図1では、文字層処理モジュールは、各々の2値画像の層に対応してN個あるが、1つの文字層処理モジュールが全ての2値画像を処理するようにしてもよいし、N個よりも多い文字層処理モジュールが予め用意されていてもよい。第1−1の実施の形態以外においても同様である。
なお、文字層処理モジュール121、文字層処理モジュール122、文字層処理モジュール12N内のモジュール構成、その処理等の詳細については、第1−1−1の実施の形態〜第1−1−4の実施の形態を用いて説明する。
多値バックグラウンド層処理モジュール129は、N層分離モジュール110、出力ファイル形成モジュール130と接続されており、JPEG化等の多値画像符号化処理を行う。つまり、N層分離モジュール110により分離されたバックグラウンド多値画像を受け取り、多値画像符号化処理を行い、その結果を出力ファイル形成モジュール130へ渡す。ただし、多値バックグラウンド層処理モジュール129は、多値画像符号化処理を行わず、N層分離モジュール110により分離されたバックグラウンド多値画像をそのまま出力ファイル形成モジュール130へ渡すようにしてもよい。
出力ファイル形成モジュール130は、N層分離モジュール110、文字層処理モジュール121、文字層処理モジュール122、文字層処理モジュール12N、多値バックグラウンド層処理モジュール129と接続されており、N層分離モジュール110から各文字層の色情報を受け取り、文字層処理モジュール121、文字層処理モジュール122、文字層処理モジュール12Nの各々から文字層データを受け取り、多値バックグラウンド層処理モジュール129から多値画像符号化処理の結果(多値画像符号化処理が行われていないバックグラウンド多値画像であってもよい)を受け取り、出力ファイル300を形成する。その形成の際に、文字層データにその文字層の色情報を付与する。
ここで、図3を用いて、出力ファイル形成モジュール130によって形成される出力ファイル300のデータ構造の例を説明する。
出力ファイル300は、N個の文字層データと、それに対応するN個の色情報と、多値画像であるバックグラウンド層データがまとめられている。具体的には、バックグラウンド層データ399、文字色1 301A、文字層データ1 301B、文字色2 302A、文字層データ2 302B、文字色N 30NA、文字層データN 30NBを有している。文字層データと色情報の対はN個ある。文字色1 301A、文字色2 302A、文字色N 30NAは、各々文字層処理モジュール121、122、12Nから渡された文字層データであり、それに対応する文字層データ1 301B、文字層データ2 302B、文字層データN 30NBは、N層分離モジュール110から渡された色情報であり、バックグラウンド層データ399は、多値バックグラウンド層処理モジュール129から渡された符号化データである。
また、文字層データは、各々の文字層処理モジュールによる処理結果であるベクトル情報、つまり2値画像をそのままアウトライン化したものであってもよい。又は、第1−2の実施の形態によって生成される出力ファイルであってもよい。より具体的には、第3の実施の形態で説明する文字層データ2710であってもよい。
図2に示すフローチャートを用いて、第1−1の実施の形態による処理例を説明する。
ステップS202では、N層分離モジュール110が、多値画像からベクトル化の対象となる画像、つまり文字層を2値画像として抽出する。
ステップS204では、N層分離モジュール110が、各文字層の色情報を抽出する。
ステップS206では、N層分離モジュール110が、多値画像であるバックグラウンド層を抽出する。
ステップS208では、文字層処理モジュール121、122、12Nが、ステップS202で抽出された各文字層に対して、ベクトル化処理を行う。
ステップS210では、多値バックグラウンド層処理モジュール129が、ステップS206で抽出されたバックグラウンド層に対して、符号化処理を行う。
ステップS212では、出力ファイル形成モジュール130が、ステップS208での各々の結果にステップS204で抽出された色情報を付与し、ステップS210での結果を合成して出力ファイルを形成する。
なお、第1−1の実施の形態による処理例を図2に示すフローチャートを用いて説明したが、必ずしもこの順序である必要はなく、例えば、ステップS202〜ステップS206の処理はどのような順序であってもよく、また、平行的に処理を行うようにしてもよい。ステップS208とステップS210の処理についても同様である。
<第1−1−1の実施の形態〜第1−1−4の実施の形態>
第1−1の実施の形態の文字層処理モジュールの具体的な構成を、第1−1−1の実施の形態〜第1−1−4の実施の形態を用いて説明する。つまり、第1−1−1の実施の形態〜第1−1−4の実施の形態を、第1−1の実施の形態の文字層処理モジュールとして組み入れた形となる。
第1−1−1の実施の形態〜第1−1−4の実施の形態に示す入力画像は、各文字層処理モジュールの入力画像(2値画像)である。つまり、N層分離モジュール110から渡された2値画像である。また、第1−1−1の実施の形態〜第1−1−4の実施の形態に示す出力ファイルは、各文字層処理モジュールの出力データである文字層データである。ただし、必ずしもファイルとなっている必要はなく、例えば、メモリ内に記憶して、出力ファイル形成モジュール130に渡すようにしてもよい。
<第1−1−1の実施の形態>
図4は、第1−1−1の実施の形態の構成例についての概念的なモジュール構成図である。第1−1−1の実施の形態は、図4に示すように、文字切り出しモジュール410、文字コード決定モジュール420、フォント登録モジュール430、出力ファイル形成モジュール440を有している。
文字切り出しモジュール410は、図4に示すように、文字コード決定モジュール420、フォント登録モジュール430、出力ファイル形成モジュール440と接続されており、入力画像から文字画像(画素の塊)を切り出す。切り出した文字画像を文字コード決定モジュール420、フォント登録モジュール430へ渡し、切り出した文字画像の文字サイズ(画素の塊のサイズ)と入力画像における位置を出力ファイル形成モジュール440へ渡す。
文字コード決定モジュール420は、図4に示すように、文字切り出しモジュール410、フォント登録モジュール430、出力ファイル形成モジュール440と接続されており、文字切り出しモジュール410によって切り出された文字画像に対して、その文字画像を一意に識別できる文字コードを割り当てる(決定する)。この割り当てとしては、入力画像内で一意に識別できるようにすれば、どのような方法でもよい。例えば、出現順に文字コードを割り当てるようにしてもよい。ただし、本実施の形態による処理結果をワープロのような文字処理用のソフトウエア等で用いる場合は、エスケープコードなどを割り当てないようにするとよい。また、文字認識を行って、JIS等の文字コードを割り当ててもよいし、その文字コード体系にはない文字形状として外字コードを割り当てるようにしてもよい。なお、入力画像を再現することに、文字認識の精度は依存しない。
割り当てた文字コードをフォント登録モジュール430、出力ファイル形成モジュール440へ渡す。
フォント登録モジュール430は、図4に示すように、文字切り出しモジュール410、文字コード決定モジュール420、出力ファイル形成モジュール440と接続されており、文字切り出しモジュール410によって切り出された文字画像と文字コード決定モジュール420によって割り当てられた文字コードを関連付ける。つまり、文字コードに対応する文字画像(アウトライン化されたもの、つまり、アウトラインデータを含む)をフォントファイル形式で登録(フォントファイルを作成)する。つまり、後にその文字コードによって、フォントを参照できるようにし、文字コード、位置、文字サイズを指定すれば、元の画像が再現できるようにする。登録したフォントファイルを出力ファイル形成モジュール440へ渡す。
出力ファイル形成モジュール440は、図4に示すように、文字切り出しモジュール410、文字コード決定モジュール420、フォント登録モジュール430と接続されており、文字切り出しモジュール410によって切り出された文字画像の文字サイズと位置、文字コード決定モジュール420によって決定された文字コード、フォント登録モジュール430によって登録されたフォントファイルを受け取り、これらを一つのファイルにまとめる(形成する)。そのファイルをさらに符号化してもよい。
なお、各文字コードに対して、全てに文字サイズと位置が必要なわけではない。相対的にサイズと位置が決定できる場合には、必要な部分のみを指定すればよい。例えば、文字サイズが変化しない場合は、最初の1回のみ指定すればよい。あるいは、Y座標が変化しない場合には、X座標のみを指定すればよい。あるいは、フォントのサイズが固定されている場合には、サイズを指定する必要はない。
出力ファイル形成モジュール440でまとめたファイルは、出力ファイルとして出力される。このファイル形式としては、フォント情報を含めることができるものであればよく、例えばPDF(Portable Document Format)(登録商標)を挙げることができる。
次に、第1−1−1の実施の形態による作用・働き(動作)を説明する。図5に示すフローチャートを用いて、第1−1−1の実施の形態による処理例を説明する。
ステップS502では、文字切り出しモジュール410が、入力画像から全ての文字画像を切り出し、その文字画像の文字サイズと位置を抽出する。
ステップS504では、文字コード決定モジュール420が、ステップS502で切り出された各文字画像に文字コードを割り当てる。
ステップS506では、フォント登録モジュール430が、ステップS502で切り出された文字画像とステップS504で割り当てられた文字コードとを対応付けてフォントファイルを生成する。
ステップS508では、出力ファイル形成モジュール440が、ステップS502で抽出された文字サイズと位置、ステップS504で割り当てられた文字コード、ステップS506で作成されたフォントファイルをまとめて、出力ファイルを形成する。
なお、ステップS502で、全ての文字画像を切り出したが、1つの文字画像を切り出して、ステップS504〜ステップS508の処理を行ってもよい。その場合、ステップS502〜ステップS508までを繰り返して処理を行うことになる。
<第1−1−2の実施の形態>
図6は、第1−1−2の実施の形態の構成例についての概念的なモジュール構成図である。第1−1−2の実施の形態は、第1−1−1の実施の形態に代表文字決定モジュール620を付加したものである。
文字切り出しモジュール610は、図6に示すように、代表文字決定モジュール620、出力ファイル形成モジュール650と接続されており、その機能は第1−1−1の実施の形態の文字切り出しモジュール410と同等であり、切り出した文字画像を代表文字決定モジュール620へ渡し、切り出した文字画像の文字サイズと入力画像における位置を出力ファイル形成モジュール650へ渡す。
代表文字決定モジュール620は、図6に示すように、文字切り出しモジュール610、文字コード決定モジュール630、フォント登録モジュール640と接続されており、文字切り出しモジュール610で切り出された文字画像同士を比較して、類似する形状の文字画像をまとめる。つまり、代表文字決定モジュール620は、2値画像内の文字画像と他の文字画像との相似度に基づいて、代表画像を生成する。
文字画像間の相似度を検証して代表文字を決定する方式として以下を例に挙げる。
(1)切り出された文字画像である2枚の2値画像を入力する。
(2)2枚の入力画像の黒画素の重心をあわせる。
(3)重心をあわせた2枚の入力画像のXOR(eXclusive OR:排他的論理和)演算を行う。
(4)XOR演算の結果、1となった画素(相違する画素)の個数を数える。この個数が閾値以下であれば、類似する文字画像であると判断する。
(5)切り出された文字画像に対して、他の文字画像との相似度を前記の手法で計算し、次々に似ている文字画像をまとめる。
(6)このように似ている文字画像を共通化して、代表文字を生成する。
つまり、代表文字を生成することによって、入力画像の中から一部の画像データである文字画像を共通化している。具体的には、文字画像を共通化するとは、前述したように、複数の文字画像から1つの共通した代表文字を生成すること、又は複数の文字画像の中から1つの文字画像を代表文字として選択すること等がある。
したがって、代表文字としては、例えば、似ている文字画像の平均値を計算し、それを2値化した文字画像、又は、似ている文字画像の中から1つを選択したもの等となる。
なお、文字画像が類似するか否かの判定として、前述した他に、例えば、切り出された文字画像を1つのベクトルデータとして扱い、クラスタリングを行い、当該文字画像と類似する文字画像を抽出してもよい。この場合、当該文字画像を表すベクトルデータと判定対象の文字画像を表すベクトルデータとの距離(例えば、ユークリッド距離等)が所定値以下(すなわち、2つのベクトルデータの距離が近いとき)の場合は、当該文字画像と判定対象の文字画像とが類似していると判定する。
さらに、2つの文字画像パターンの論理演算の結果画像に基づいて膨張画像を生成し、その膨張画像と重なり合う割合に基づいて、類似しているか否かを判定するようにしてもよい。つまり、完全に一致する場合の膨張させる度合い(膨張半径)によって、相違度を判定するようにしてもよい。
この他に、特開平07−200745号公報、I. H. Witten, A.Moffat, and T. C. Bell 著 「Managing Gigabytes」 Morgan Kaufmmann Publishers pp.320-332.等に記載されている方法を用いてもよい。
なお、類似度とは、2つの画像が合同である場合に最大となり、相違する度合いに応じて減少する量のことである。
類似度の代わりに、2つの画像が合同である場合に最小となり、相違する度合いに応じて増加する量を用いてもよい。この場合は、「距離」又は「相違度」と呼ばれる。距離とは、画像をベクトルで表した場合(画素値そのものをベクトルとする、又は画像の特徴量をベクトルとする等)に、ベクトルで表現した画像を空間内に配置し、その空間内での各画像同士の隔たり(距離)のことである。例えば、ユークリッド距離、マンハッタン距離、ハウスドルフ距離、マハラノビス距離、ベクトル間の角度θ、cosθ、cosθの2乗等がある。
相似度という用語は、類似度、距離又は相違度という用語を含んで用いる。したがって、「相似度に基づいて、代表画像を生成する」という場合は、類似度が高いものを用いて代表画像を生成する、又は距離が近いもの(相違度が低いもの)を用いて代表画像を生成するの意が含まれる。なお、以下、「高い、低い、近い、大きい、類似」等の比較の判断は、閾値との比較によって行う。また、閾値は、予め定めたもの、又は状況(2値画像内の画像の状況等)に応じて決定するようなものであってもよい。2値画像内の画像の状況としては、例えば、文字画像の大きさ等がある。
文字コード決定モジュール630は、図6に示すように、代表文字決定モジュール620、フォント登録モジュール640、出力ファイル形成モジュール650と接続されており、入力する文字画像が代表文字決定モジュール620によって生成された代表文字である以外は、第1−1−1の実施の形態の文字コード決定モジュール420と同等である。ただし、類似する文字画像の代表文字に対してのみ文字コードの割り当て(文字認識を含む)を行っている。つまり、類似する文字画像に対しては、同じ文字コードを割り当てている。
フォント登録モジュール640は、図6に示すように、代表文字決定モジュール620、文字コード決定モジュール630、出力ファイル形成モジュール650と接続されており、入力する文字画像が代表文字決定モジュール620によって生成された代表文字である以外は、第1−1−1の実施の形態のフォント登録モジュール430と同等である。ただし、類似する文字画像(入力画像内に複数出現している文字画像)に対して、1つの文字コードが割り当てられ、その1つの文字コードには1つのフォントが対応していることになる。
出力ファイル形成モジュール650は、図6に示すように、文字切り出しモジュール610、文字コード決定モジュール630、フォント登録モジュール640と接続されており、第1−1−1の実施の形態の出力ファイル形成モジュール440と同等である。ただし、類似する文字画像に対して、1つのフォントが対応している。したがって、出力ファイル形成モジュール650が形成した出力ファイルを用いて、元の画像(入力画像)を再現する場合、1つのフォントを複数回(入力画像内に類似する文字画像が出現している回数分)参照して、元の画像を描画することになる。
次に、第1−1−2の実施の形態による作用・働き(動作)を説明する。図7に示すフローチャートを用いて、第1−1−2の実施の形態による処理例を説明する。
ステップS702では、文字切り出しモジュール610が、入力画像から全ての文字画像を切り出し、その文字画像の文字サイズと位置を抽出する。
ステップS704では、代表文字決定モジュール620が、ステップS702で切り出された文字画像から代表文字を決定する。
ステップS706では、文字コード決定モジュール630が、ステップS704で決定された代表文字に文字コードを割り当てる。
ステップS708では、フォント登録モジュール640が、ステップS704で決定された代表文字とステップS706で割り当てられた文字コードとを対応付けてフォントファイルを生成する。
ステップS710では、出力ファイル形成モジュール650が、ステップS702で抽出された文字サイズと位置、ステップS706で割り当てられた文字コード、ステップS708で作成されたフォントファイルをまとめて、出力ファイルを形成する。
<第1−1−3の実施の形態>
図8は、第1−1−3の実施の形態の構成例についての概念的なモジュール構成図である。第1−1−3の実施の形態は、第1−1−2の実施の形態に拡大モジュール840を付加したものである。
文字切り出しモジュール810は、図8に示すように、代表文字決定モジュール820、出力ファイル形成モジュール860と接続されており、第1−1−2の実施の形態の文字切り出しモジュール610と同等である。
代表文字決定モジュール820は、図8に示すように、文字切り出しモジュール810、文字コード決定モジュール830、拡大モジュール840と接続されており、決定した代表文字を拡大モジュール840へ渡すこと以外は、第1−1−2の実施の形態の代表文字決定モジュール620と同等である。
拡大モジュール840は、図8に示すように、代表文字決定モジュール820、フォント登録モジュール850と接続されており、代表文字決定モジュール820によって決定された代表文字を受け取り、その代表文字の拡大代表文字(高解像度化した文字画像)を生成する。つまり、入力画像全体に対して拡大を行うわけではなく、代表文字決定モジュール820によって代表文字を決定した後に、その代表文字画像を拡大する。この生成方法については、図10を用いて後述する。そして、拡大代表文字をフォント登録モジュール850へ渡す。
文字コード決定モジュール830は、図8に示すように、代表文字決定モジュール820、フォント登録モジュール850、出力ファイル形成モジュール860と接続されており、第1−1−2の実施の形態の文字コード決定モジュール630と同等である。
フォント登録モジュール850は、図8に示すように、文字コード決定モジュール830、拡大モジュール840、出力ファイル形成モジュール860と接続されており、入力する文字画像が拡大モジュール840によって拡大された代表文字である以外は、第1−1−2の実施の形態のフォント登録モジュール640と同等である。
なお、フォント登録モジュール850は、次のような処理を行ってもよい。
異なる代表文字画像に対して、文字コード決定モジュール830によって(特に文字認識を行った場合)同じ文字コードが付されることもありえる。この場合、各々の代表文字を別のフォント種として登録してもよい。
つまり、次のように行う。
(1)フォント種X(X=0,1,2,...)を登録するとする。
(2)代表文字画像の文字認識を行い、文字コードがYとなったとする。この文字コードYの文字画像を、フォント種Xに登録する。ただし、フォント種Xは、文字コードYが登録されていないフォント種Xの中で、最もXの値が小さいものとする。
(2−1)すなわち、文字コードYが初めて出現した場合は、フォント種0に登録する。
(2−2)フォント種0,1,...N−1に文字コードYが登録されている場合、フォント種Nに文字コードYを登録する。
出力ファイル形成モジュール860は、図8に示すように、文字切り出しモジュール810、文字コード決定モジュール830、フォント登録モジュール850と接続されており、第1−1−2の実施の形態の出力ファイル形成モジュール650と同等である。
図9を用いて、第1−1−3の実施の形態の処理例を説明する。
文字切り出しモジュール810は、複数の「2」という文字が記載された入力画像910を対象画像とする。文字切り出しモジュール810は、図9に示すように、文字画像911、文字画像912、文字画像913を文字画像911の解像度で切り出す。そして、文字サイズ/文字位置データ950を抽出する。
代表文字決定モジュール820は、これらの複数の「2」という文字画像が類似していると判定する。
文字コード決定モジュール830は、「2」という文字画像の文字コード・データ940を割り当てる。
拡大モジュール840は、文字画像911、文字画像912、文字画像913の重点(重心線911A等の交差点)を求め、その重点を一致させるように位相を移動して高解像度文字画像920を生成する。
フォント登録モジュール850は、高解像度文字画像920からアウトライン情報であるフォント・データ930を生成する。
出力ファイル形成モジュール860は、フォント・データ930、文字コード・データ940、文字サイズ/文字位置データ950から出力ファイルを形成する。
図10を用いて、拡大モジュール840の処理例を説明する。
図10(A)は、入力画像910の解像度(第1の解像度)における標本化格子(第1の標本化格子1001、第1の標本化格子1002、第1の標本化格子1003、第1の標本化格子1004)及び文字画像の重心位置(重心1001A、重心1002A、重心1003A、重心1004A)を表している。
拡大モジュール840は、まず、図10(B)に示すように、文字画像の重心に基づいて、4つの標本化格子の位相を移動させる。つまり、重心1001A、重心1002A、重心1003A、重心1004Aを重心1005に一致させて、図10(B)のような画像を生成する。
図10(C)、図10(D)は、第1の解像度よりも高い第2の解像度の標本化格子を設定する手法の例を説明する図である。図10(C)に記載された丸数字(1、2、3、4)は、第1の解像度における文字画像の値を例示している。ここで、文字画像は、丸数字が第1の解像度における標本化格子の格子点上に表されるようにプロットされている。
図10(D)において、第2の標本化格子1006は高解像度画像の標本化格子である。
拡大モジュール840は、第1の解像度における4つの標本化格子の位相が移動されると、図10(C)に示すように、第2の解像度における標本化格子を設定し、図10(D)に示すように、文字画像の重心が一致するように、第2の解像度における標本化格子の位相を移動させる。
図10(E)は、第2の解像度における文字画像の値を算出する手法の例を説明する図である。第2の標本化格子1006A、第2の標本化格子1006B、第2の標本化格子1006C、第2の標本化格子1006D内の中心にある丸数字は、第2の解像度における文字画像の値を例示しているものである。ここで、第2の解像度における文字画像は、中心にある丸数字が、第2の解像度における標本化格子の格子点上に表されるように示されている。
そして、拡大モジュール840は、第1の解像度における各文字画像の位相に基づいて、その各文字画像の画素値から、第2の解像度における文字画像の画素値を補間する。本例では、拡大モジュール840は、最近傍補間法を適用して、第2の解像度における文字画像の画素値を補間する。すなわち、拡大モジュール840は、第1の解像度における文字画像の4つの値(図10(E)では、丸数字の1、2、3、4)のうち、第2の解像度における標本化格子点に最も近い値を選択して、第2の解像度における文字画像の値とする。具体的には、第2の標本化格子1006Aでは、中心に最も近い値は「1」であり、「1」を採用している(丸数字は1である)。なお、補間方法は、この方法に限定されるものではなく、その他の方法(例えば、線形補間法など)を適用してもよい。
なお、拡大モジュール840の処理は、前述の処理に限られず、線形補間、キュービックコンボリューション等でもよい。
次に、第1−1−3の実施の形態による作用・働き(動作)を説明する。図11に示すフローチャートを用いて、第1−1−3の実施の形態による処理例を説明する。
ステップS1102では、文字切り出しモジュール810が、入力画像から全ての文字画像を切り出し、その文字画像の文字サイズと位置を抽出する。
ステップS1104では、代表文字決定モジュール820が、ステップS1102で切り出された文字画像から代表文字を決定する。
ステップS1106では、文字コード決定モジュール830が、ステップS1104で決定された代表文字に文字コードを割り当てる。
ステップS1108では、拡大モジュール840が、ステップS1104で決定された代表文字を拡大する。
ステップS1110では、フォント登録モジュール850が、ステップS1108で拡大された代表文字とステップS1106で割り当てられた文字コードとを対応付けてフォントファイルを生成する。
ステップS1112では、出力ファイル形成モジュール860が、ステップS1102で抽出された文字サイズと位置、ステップS1106で割り当てられた文字コード、ステップS1110で作成されたフォントファイルをまとめて、出力ファイルを形成する。
<第1−1−4の実施の形態>
図12は、第1−1−4の実施の形態の構成例についての概念的なモジュール構成図である。第1−1−4の実施の形態は、第1−1−3の実施の形態とは、文字コード決定モジュール1240が拡大代表文字に対して文字コードを決定するようにしたことが異なる。
文字切り出しモジュール1210は、図12に示すように、代表文字決定モジュール1220、出力ファイル形成モジュール1260と接続されており、第1−1−3の実施の形態の文字切り出しモジュール810と同等である。
代表文字決定モジュール1220は、図12に示すように、文字切り出しモジュール1210、拡大モジュール1230と接続されており、拡大モジュール1230にのみ代表文字を渡すこと以外は、第1−1−3の実施の形態の代表文字決定モジュール820と同等である。
拡大モジュール1230は、図12に示すように、代表文字決定モジュール1220、文字コード決定モジュール1240、フォント登録モジュール1250と接続されており、拡大代表文字を文字コード決定モジュール1240にも渡す以外は、第1−1−3の実施の形態の拡大モジュール840と同等である。
文字コード決定モジュール1240は、図12に示すように、拡大モジュール1230、フォント登録モジュール1250、出力ファイル形成モジュール1260と接続されており、拡大モジュール1230によって拡大された代表文字を受け取り、その代表文字の文字コードを割り当てる。代表文字は高解像度化が行われており、例えば、文字コードの割り当てとして文字認識を行わせ、誤認識の少ない文字認識を行わせるようにしてもよい。そして、その文字コードをフォント登録モジュール1250、出力ファイル形成モジュール1260へ渡す。
フォント登録モジュール1250は、図12に示すように、拡大モジュール1230、文字コード決定モジュール1240、出力ファイル形成モジュール1260と接続されており、第1−1−3の実施の形態のフォント登録モジュール850と同等である。
出力ファイル形成モジュール1260は、図12に示すように、文字切り出しモジュール1210、文字コード決定モジュール1240、フォント登録モジュール1250と接続されており、第1−1−3の実施の形態の出力ファイル形成モジュール860と同等である。
次に、第1−1−4の実施の形態による作用・働き(動作)を説明する。図13に示すフローチャートを用いて、第1−1−4の実施の形態による処理例を説明する。
ステップS1302では、文字切り出しモジュール1210が、入力画像から全ての文字画像を切り出し、その文字画像の文字サイズと位置を抽出する。
ステップS1304では、代表文字決定モジュール1220が、ステップS1302で切り出された文字画像から代表文字を決定する。
ステップS1306では、拡大モジュール1230が、ステップS1304で決定された代表文字を拡大する。
ステップS1308では、文字コード決定モジュール1240が、ステップS1306で拡大された代表文字に文字コードを割り当てる。
ステップS1310では、フォント登録モジュール1250が、ステップS1306で拡大された代表文字とステップS1308で割り当てられた文字コードとを対応付けてフォントファイルを生成する。
ステップS1312では、出力ファイル形成モジュール1260が、ステップS1302で抽出された文字サイズと位置、ステップS1308で割り当てられた文字コード、ステップS1310で作成されたフォントファイルをまとめて、出力ファイルを形成する。
なお、第1−1−1の実施の形態〜第1−1−4の実施の形態では、文字コードを用いているが、文字コードの代わりにフォントコードを用いるようにしてもよい。なお、フォントコードとは、切り出した文字画像を一意に識別する識別符号である。つまり、フォントコードと文字画像との対応表を生成し、フォントコードを用いてその対応表から文字画像を抽出することによって、原画像を生成することができる。具体的には、例えば、文字画像の出現順に番号を付すようにしてもよい。
<第1−2の実施の形態>
図14は、第1−2の実施の形態の構成例についての概念的なモジュール構成図である。
第1−1の実施の形態では、各文字層処理モジュールでフォント登録処理、文字コード決定処理をそれぞれ行っていたが、これを1つにまとめたものである。
第1−2の実施の形態は、N層分離モジュール1410、文字層処理モジュール1421、文字層処理モジュール1422、文字層処理モジュール142N、多値バックグラウンド層処理モジュール1429、出力ファイル形成モジュール1430、統一フォント処理モジュール1440を有している。
N層分離モジュール1410は、文字層処理モジュール1421、文字層処理モジュール1422、文字層処理モジュール142N、多値バックグラウンド層処理モジュール1429、出力ファイル形成モジュール1430と接続されており、その機能は第1−1の実施の形態のN層分離モジュール110と同等である。
多値バックグラウンド層処理モジュール1429は、N層分離モジュール1410、出力ファイル形成モジュール1430と接続されており、その機能は第1−1の実施の形態の多値バックグラウンド層処理モジュール129と同等である。
出力ファイル形成モジュール1430は、N層分離モジュール1410、文字層処理モジュール1421、文字層処理モジュール1422、文字層処理モジュール142N、多値バックグラウンド層処理モジュール1429、統一フォント処理モジュール1440と接続されており、その機能は第1−1の実施の形態の出力ファイル形成モジュール130と同等であり、出力ファイル300を形成する。
統一フォント処理モジュール1440は、文字層処理モジュール1421、1422、142N、出力ファイル形成モジュール1430と接続されている。
統一フォント処理モジュール1440内には、第1−1の実施の形態の文字層処理モジュール(121、122、12N)内のフォント登録モジュール(第1−1−1の実施の形態〜第1−1−4の実施の形態のフォント登録モジュール430、640、850、1250に該当)、文字コード決定モジュール(第1−1−1の実施の形態〜第1−1−4の実施の形態の文字コード決定モジュール420、630、830、1240に該当)を有している。つまり、第1−1の実施の形態で各文字層処理モジュールが行っているフォント登録処理、文字コード決定処理を、統一フォント処理モジュール1440内に一つにまとめたものである。そして、その処理結果を各文字層処理モジュール(1421、1422、142N)に返している。
さらに、統一フォント処理モジュール1440は、フォントコード・文字コード対応表作成モジュールを有していてもよい。つまり、第1−1の実施の形態では、文字コードをフォントコードと同等に用いているが、フォントコードは文字画像(アウトラインデータを含む)を識別するための識別子として用い、そのフォントコードと文字認識の結果である文字コードとを対応させるフォントコード・文字コード対応表を作成する。そして、そのフォントコード・文字コード対応表を出力ファイル形成モジュール1430に渡す。出力ファイル形成モジュール1430は、フォントコード・文字コード対応表を含めた出力ファイルを形成する。これによって、出力ファイルを受け取った画像処理装置では、フォントコード・文字コード対応表内の文字コードに対応するフォントコードを抽出し、さらにそのフォントコードから文字画像を生成して画像を再生する。
さらに、統一フォント処理モジュール1440は、第1−1−1の実施の形態〜第1−1−4の実施の形態の出力ファイル形成モジュール440、650、860、1260に該当するモジュールを有していてもよい。つまり、各文字層データを生成して、出力ファイル形成モジュール1430に渡すようにしてもよい。その場合、出力ファイル形成モジュール1430は、各文字層処理モジュール1421、1422、142Nから文字層データを受け取る代わりに、統一フォント処理モジュール1440から各文字層データを受け取り、出力ファイル300を形成する。
文字層処理モジュール1421、1422、142Nは、N層分離モジュール1410、出力ファイル形成モジュール1430、統一フォント処理モジュール1440と接続されている。これらは、第1−1の実施の形態の文字層処理モジュール121、122、12Nに対応する。ただし、フォント登録モジュール(第1−1−1の実施の形態〜第1−1−4の実施の形態のフォント登録モジュール430、640、850、1250)、文字コード決定モジュール(第1−1−1の実施の形態〜第1−1−4の実施の形態の文字コード決定モジュール420、630、830、1240)がないものである。フォント登録モジュール、文字コード決定モジュールは、統一フォント処理モジュール1440に含まれている。
図14に示した第1−2の実施の形態による処理例については、図2に示したフローチャートを流用して説明する。第1−2の実施の形態による処理例は、図2に示したフローチャートのステップS200からステップS206までの処理、ステップS210からステップS214までの処理と同等である。
ステップS208では、統一フォント処理モジュール1440による処理が付加される。つまり、第1−1−1の実施の形態〜第1−1−4の実施の形態による処理(文字切り出し処理、代表文字決定処理、拡大処理等)を行い、各文字層処理モジュール内のフォント登録処理、文字コード決定処理をまとめた統一フォント処理モジュール1440による処理を行う。
<第1−3の実施の形態>
次に第1−3の実施の形態について説明する。
第1−1の実施の形態、第1−2の実施の形態では、N個の2値画像データは、それぞれ文字だけからなる画像であるとして処理を行っている。しかし、入力画像又はN層分離モジュール110、1410の処理によっては、文字ではない2値画像も含まれる場合がある。そこで、第1−3の実施の形態では、N個の2値画像データをさらに文字画像と文字画像以外の画像データに分け、その文字画像、文字画像以外の画像データに適した処理を行うことで、文字層処理モジュール内での文字画像に対する処理の負荷を減らし、処理後の情報量を少なくする。
第1−3の実施の形態は、第1−1の実施の形態又は第1−2の実施の形態における文字層処理モジュール(121、122、12N、1421、1422、142N)を、図15に示すモジュール構成にしたものである。つまり、図15に示すモジュール構成を、第1−1の実施の形態又は第1−2の実施の形態の文字層処理モジュールとして組み入れた形となる。
第1−3の実施の形態における文字層処理モジュールは、図15に示すように、文字切り出しモジュール1501、文字層出力モジュール1502、2値画像層出力モジュール1503、出力ファイル形成モジュール1504を有している。
文字切り出しモジュール1501は、文字層出力モジュール1502、2値画像層出力モジュール1503と接続されており、入力画像データの中から、ベクトル情報に変換する画像である文字画像(画素の塊)を切り出し(抽出し)、切り出した文字画像、その文字画像の文字サイズと位置を文字層出力モジュール1502へ渡す。そして、文字画像以外の画像を2値画像層出力モジュール1503へ渡す。
また、文字画像を抽出するのに、文字認識ソフトウエアなどを利用してもよい。例えば、ひらがなの「い」の画像は、2つの連結画素領域の集合である。このような文字を認識するためには、複数の連結画素成分をまとめる必要がある。文字画像を抽出するために、文字認識ソフトウエアなどを利用して、その文字認識ソフトウエアが抽出した文字矩形を用いて文字画像を抽出するようにしてもよい。そして、文字として認識できた矩形以外の部分を、文字画像以外の画像として2値画像層出力モジュール1503へ渡すようにしてもよい。
文字層出力モジュール1502は、文字切り出しモジュール1501、出力ファイル形成モジュール1504と接続されており、文字切り出しモジュール1501から切り出した文字画像、その文字画像の文字サイズと位置を受け取り、文字画像をベクトル情報に変換して、出力ファイルを形成する文字層のデータを生成する。そして、出力ファイル形成モジュール1504へそのデータを渡す。
2値画像層出力モジュール1503は、文字切り出しモジュール1501、出力ファイル形成モジュール1504と接続されており、文字切り出しモジュール1501から文字画像以外の画像を受け取り、出力ファイルを形成する2値画像層のデータを生成する。そして、出力ファイル形成モジュール1504へそのデータを渡す。
2値画像層出力モジュール1503では、例えば、2値画像を符号化して、2値画像層のデータを出力する。2値画像層のデータとしては、CCITT G3、CCITT G4、JBIG、JBIG2などの2値画像用圧縮方式を用いて作成すればよい。又は、LZなどの他の方式を用いて圧縮してもよい。あるいは、単なる無圧縮のビット列としてもよい。
出力ファイル形成モジュール1504は、文字層出力モジュール1502、2値画像層出力モジュール1503と接続されており、文字層出力モジュール1502から文字層のデータを、2値画像層出力モジュール1503から2値画像層のデータを、それぞれ受け取って出力ファイルを形成する。
出力ファイルのデータ構造を図18に示す。出力ファイル1800は、文字層データ1801と2値画像層データ1802を有している。つまり、出力ファイル1800は、文字切り出しモジュール1501が受け付けた画像データの中から、同等の画素の塊をまとめた代表の画素の塊を変換したベクトル情報である文字層データ1801と、前記画像データの中から、前記ベクトル情報としては変換されなかった2値画像層データ1802により構成されている。
出力ファイル1800の形式として、例えばPDF(Portable Document Format)(登録商標)を用いてもよい。なお、PDFの形式(フォーマット)を用いることを説明しているのであって、PDF内のデータとして、文字層データ1801、2値画像層データ1802のデータ構造の例が既にあるわけではないことを留意事項として記しておく。
出力ファイル1800を受け取ったシステムは、出力ファイル1800内の文字層データ1801に対してレンダリング処理を行い、2値画像層データ1802を合成して、文字切り出しモジュール1501が受け付けた入力画像と同等の画像を生成する。なお、入力画像と同等の画像とは、その入力画像と同一の画像の他に多少の改変がなされたものであってもよい。
図16は、図15に示した第1−3の実施の形態における文字切り出しモジュール1501内の構成例についての概念的なモジュール構成図である。
文字切り出しモジュール1501は、画素塊抽出モジュール1601、画素塊サイズ検証モジュール1602、画素塊消去モジュール1603を有している。
画素塊抽出モジュール1601は、画素塊サイズ検証モジュール1602と接続されており、入力画像から画素塊を抽出する。画素塊、その画素塊の抽出は、前述の説明の通りである。
画素塊サイズ検証モジュール1602は、画素塊抽出モジュール1601、画素塊消去モジュール1603と接続されており、画素塊のサイズを検証する。つまり、画素塊をベクトル化すべき画像である文字画像とそれ以外の画像に分けて、文字画像、その文字画像の文字サイズと位置を画素塊消去モジュール1603、文字層出力モジュール1502へ渡す。例えば、画素塊のサイズの検証として、以下の手法((1)〜(3))がある。
(1)画素塊の黒画素数が閾値以上の場合は、図形などの大マークとして文字ではないと判断する。例えば、閾値として、10000などの値を示すことができる。
(2)画素塊の黒画素数が閾値以下の場合は、ノイズなどの小マークとして文字ではないと判断する。例えば、閾値として、5などの値を示すことができる。
(3)それ以外の画素塊は、文字画像とする。文字画像、その文字サイズ(切り出し文字の画像サイズ)と入力画像内における位置を抽出し、それを画素塊消去モジュール1603、文字層出力モジュール1502へ渡す。
また、前述の例では、画素塊の黒画素の数で文字か否かを判断したが、他の方法を用いてもよい。
例えば、画素塊を包含する矩形(外接矩形)を抽出し、その矩形の横幅あるいは縦幅のいずれかが閾値より大きければ、文字以外と判断するようにしてもよい。例えば、閾値として、1000などの値を示すことができる。
例えば、その矩形の横幅あるいは縦幅のいずれも閾値より小さければ、文字以外と判断するようにしてもよい。例えば、閾値として、3などの値を示すことができる。
さらに、前述の例での大マークを文字以外と判断しなくてもよい。
前述の例での小マークを文字以外と判断しなくてもよい。
画素塊消去モジュール1603は、画素塊サイズ検証モジュール1602と接続されており、文字画像と判断された画素塊を、入力画像から消去する。つまり、画素塊サイズ検証モジュール1602から文字画像、その文字サイズと位置を受け取り、入力画像から、その位置にある文字画像を消去する。文字画像を消去した後の画像を、文字以外の画像として2値画像層出力モジュール1503へ渡す。
図17は、図15に示した第1−3の実施の形態における文字層出力モジュール1502内の構成例についての概念的なモジュール構成図である。
文字層出力モジュール1502は、フォント登録モジュール1701、文字コード決定モジュール1702、文字層形成モジュール1703を有している。
文字コード決定モジュール1702は、フォント登録モジュール1701、文字層形成モジュール1703と接続されており、文字切り出しモジュール1501の画素塊サイズ検証モジュール1602から切り出し文字の画像を受け取り、それに対して文字コードを割り当てる。そして、その文字コードをフォント登録モジュール1701、文字層形成モジュール1703へ渡す。
この割り当てとしては、エスケープコードなどを割り当てないようにして、適当に割り当ててもよい。また、文字認識を行って、その文字コードを割り当ててもよいし、外字コードを割り当ててもよい。適当に割り当てる場合には、必ずしも、文字コード決定モジュール1702に切り出し文字の画像を入力する必要はない。
フォント登録モジュール1701は、文字コード決定モジュール1702、文字層形成モジュール1703と接続されており、文字切り出しモジュール1501の画素塊サイズ検証モジュール1602から切り出された文字画像と、文字コード決定モジュール1702からその文字画像に対応する文字コードを受け取り、フォントファイルを生成して、文字層形成モジュール1703へ渡す。
つまり、フォント登録モジュール1701は、文字コード決定モジュール1702で割り当てた文字コードに対応する文字形状をフォントファイル形式で登録する。フォントとしては、文字形状をアウトライン化して、アウトラインフォントとして登録してもよいし、ビットマップ形状のまま、ビットマップフォントとして登録してもよい。
文字層形成モジュール1703は、フォント登録モジュール1701、文字コード決定モジュール1702と接続されており、フォント登録モジュール1701からフォントファイル、文字コード決定モジュール1702から文字コード、文字切り出しモジュール1501の画素塊サイズ検証モジュール1602から文字サイズと位置を受け取り、文字層データ1801を生成して、出力ファイル形成モジュール1504へ渡す。
つまり、文字層形成モジュール1703は、フォント登録モジュール1701で生成したフォントファイル形式のデータと、文字コード決定モジュール1702で決定した文字コードと、各文字コードに対応する文字サイズと位置を一つのファイルにまとめる。各文字コード全てに文字サイズと位置が必要なわけではない。相対的にサイズと位置が決定できる場合には、必要な部分のみを指定すればよい。例えば、連続して文字サイズが変化しない場合は、最初の1回のみ指定すればよい。あるいは、Y座標が変化しない場合には、X座標のみを指定すればよい。あるいは、フォントのサイズが固定されている場合には、サイズを指定する必要はない。
そして、これらのデータを統合して文字層データ1801として出力する。
なお、文字画像をアウトラインフォントとして登録する例を示したが、まず、2値画像である文字画像全体をアウトライン化して、このアウトライン情報を文字層としてもよい。
以上の動作で、文字層データと2値画像層データに分離すること、さらに文字層データと2値画像層データとで入力画像を表現する出力ファイルを形成することに関して説明した。
次に、文字層データと2値画像層データの例を図19に示す。
入力画像データ1900を文字切り出しモジュール1501が受け付ける。入力画像データ1900を、文字画像と文字画像以外の画像に分離する。そして、文字層出力モジュール1502が文字層データ1901を、2値画像層出力モジュール1503が2値画像層データ1902を生成する。
つまり、入力画像データ1900の文字部分(文字画像)だけ抜き出したものが文字層データ1901である。2値画像層は、小さな画素塊や大きな画素塊を抜き出したものであり、図19に示す2値画像層データ1902となる。なお、図19では、文字層データ1901は人間が見ても文字と認識できる画像になっているが、必ずしもそのような画像でなくてもよい。理解不能な形状の画素塊であっても、文字画像として抜き出すようにしてもよい。
次に、第1−3の実施の形態の変形例を説明する。
図20は、第1−3の実施の形態の文字切り出しモジュール1501に該当する文字切り出しモジュール2001内の構成例についての概念的なモジュール構成図を示している。
なお、第1−3の実施の形態と同種の部位には同一符号を付し重複した説明を省略する。
第1−3の実施の形態の文字切り出しモジュール1501(図15参照)では、文字画像と判断された部分を入力画像から消去して、文字画像以外の画像を抜き出したが、他の方法も可能である。つまり、文字画像以外と判断された部分を画像内に復活(描画)させることで文字以外の画像を生成してもよい。
第1−3の実施の形態の変形例は、第1−3の実施の形態における文字切り出しモジュール1501を図20に示すような文字切り出しモジュール2001にしたものである。
文字切り出しモジュール2001は、画素塊抽出モジュール1601、画素塊サイズ検証モジュール2002、画素塊復活モジュール2003を有している。
画素塊サイズ検証モジュール2002は、画素塊抽出モジュール1601、画素塊復活モジュール2003と接続されており、画素塊のサイズを検証する。つまり、画素塊をベクトル化すべき画像である文字画像とそれ以外の画像に分けて、文字画像、その文字画像の文字サイズと位置を文字層出力モジュール1502へ渡し、文字画像以外の画像、その画像のサイズと位置を画素塊復活モジュール2003へ渡す。なお、画素塊のサイズの検証手法は、第1−3の実施の形態における画素塊サイズ検証モジュール1602と同等である。
画素塊復活モジュール2003は、画素塊サイズ検証モジュール2002と接続されており、画素塊サイズ検証モジュール2002から受け取った文字画像以外の画像、その画像のサイズと位置を用いて、文字以外の画像を生成し、2値画像層出力モジュール1503へ渡す。
ここで、図21を用いて、第1−3の実施の形態(変形例を含む)における出力ファイルのデータ構造の例を説明する。
出力ファイル2100は、N個の文字層データ及び2値画像層と、それに対応するN個の色情報と、多値画像であるバックグラウンド層データがまとめられている。具体的には、バックグラウンド層データ2199、文字色1 2101A、文字層データ1、2値画像層1 2101B、文字色2 2102A、文字層データ2、2値画像層2 2102B、文字色N 210NA、文字層データN、2値画像層N 210NBを有している。
文字色1 2101A、文字色2 2102A、文字色N 210NAが、文字層データ及び2値画像層を有していること以外は、図3に示した第1−1の実施の形態又は第1−2の実施の形態による出力ファイル300と同等である。
<第2の実施の形態>
第2の実施の形態では、まず入力画像をフォアグラウンド画像、バックグラウンド画像、及びセレクト情報(セレクト層ともいう)の3層に分離する。ここでの分離は、特許文献2に示す技術を用いてもよい。
なお、特許文献2に示す技術では、セレクト情報は、0と1の情報からなる2値情報である。このセレクト情報を用いて、画素単位で、フォアグラウンド画像か、バックグラウンド画像のいずれかを選択することになる。
第2の実施の形態は、特許文献2に示すセレクト情報の用い方とは異なる用い方をする。
すなわち、第2の実施の形態では、まずセレクト情報(2値画像情報)を、アウトライン化する。アウトライン化の方法は、通常のアウトライン化を行えばよい。すなわち、入力2値画像の黒画素(あるいは白画素)を、連結成分に分離し、各連結成分の周囲を直線あるいは曲線で表現してアウトライン化すればよい。
そして、セレクト情報を、フォアグラウンド画像のクリップ情報として用いる。つまり、画像を生成する場合は、第2の実施の形態によって処理された出力ファイルであるフォアグラウンド画像、バックグラウンド画像、及びセレクト情報を用いて、以下の順で描画を行う。
(1)バックグラウンド画像を描画する。
(2)フォアグラウンド画像を、セレクト情報であるアウトラインでクリップした画像を生成する。
(3)クリップした画像をバックグラウンド画像の上に上書き描画する。
このように描画することで、アウトライン化されたセレクト情報を用いて、特許文献2に示す技術と同等に画像を表現することが可能となる。しかも、セレクト情報がアウトライン化されているため、画素単位よりも高い精度で、フォアグラウンド画像の選択を行うことができる。
ここで、セレクト情報をアウトライン化された文字の形状とし、フォアグラウンド画像をその文字を含む領域内をその文字の色で塗り潰したものとすれば、文字毎に色の異なる画像を表現することとなる。
図22は、第2の実施の形態の構成例についての概念的なモジュール構成図である。
3層分離モジュール2210、多値画像(フォアグラウンド)処理モジュール2221、アウトライン化モジュール2222、多値画像(バックグラウンド)処理モジュール2223、出力ファイル形成モジュール2230を有している。
3層分離モジュール2210は、多値画像(フォアグラウンド)処理モジュール2221、アウトライン化モジュール2222、多値画像(バックグラウンド)処理モジュール2223と接続されており、入力した多値画像を、フォアグラウンドの多値画像、セレクト情報(2値画像)、及びバックグラウンドの多値画像に分離する。例えば、特許文献2に示す技術を用いてもよい。フォアグラウンドの多値画像には、文字画像が含まれている。セレクト情報は、フォアグラウンドの多値画像を切り抜くための選択情報である2値画像である。
多値画像(フォアグラウンド)処理モジュール2221は、3層分離モジュール2210、出力ファイル形成モジュール2230と接続されており、3層分離モジュール2210からフォアグラウンドの多値画像を受け取り、JPEG等の多値画像符号化を行い、その結果を出力ファイル形成モジュール2230へ渡す。
多値画像(バックグラウンド)処理モジュール2223は、3層分離モジュール2210、出力ファイル形成モジュール2230と接続されており、3層分離モジュール2210からバックグラウンドの多値画像を受け取り、JPEG等の多値画像符号化を行い、その結果を出力ファイル形成モジュール2230へ渡す。
ただし、多値画像(フォアグラウンド)処理モジュール2221、多値画像(バックグラウンド)処理モジュール2223による多値画像符号化は行わなくてもよい。
アウトライン化モジュール2222は、3層分離モジュール2210、出力ファイル形成モジュール2230と接続されており、3層分離モジュール2210からセレクト情報を受け取る。セレクト情報は2値画像であり、アウトライン化モジュール2222でアウトライン化する。
アウトライン化の手法は、例えば、第1の実施の形態内の文字層処理モジュールによる文字層データの生成と同等の手法を用いてもよい。つまり、フォントとして登録する手法であり、アウトラインフォントとしてフォントファイルを作成し、さらに、文字コードを用いて、どのフォントを用いるかを指定する。アウトラインデータには、フォントファイルと、文字コードと、文字サイズ(フォントサイズ)と、文字位置が記載されることになる。又は、アウトラインデータ(アウトラインフォントを含む)としては、各種描画コマンドを用いるようにしてもよい。つまり、直線を記述する命令、ベジエ曲線を記述する命令、矩形を記述する命令等を利用し、文字画像の閉領域を記述する。又は、アウトライン化手法には様々なものがあるので、その他のアウトライン化手法を用いてもよい。つまり、2値画像の輪郭を直線や曲線で近似して、閉領域化するような手法であればよい。なお、アウトラインフォントも閉領域を記述していることになる。
なお、アウトラインデータでフォアグラウンドの多値画像を切り抜く手法として、具体的には、例えば、閉領域内をその領域に対応するフォアグラウンドの多値画像で埋めるようにすること、又は一般的にはクリップ処理と呼ばれる処理がある。
また、アウトライン化モジュール2222は、第1の実施の形態における文字層モジュールを含んでいてもよい。
出力ファイル形成モジュール2230は、多値画像(フォアグラウンド)処理モジュール2221、アウトライン化モジュール2222、多値画像(バックグラウンド)処理モジュール2223と接続されており、多値画像(フォアグラウンド)処理モジュール2221からフォアグラウンドの多値画像(符号化されていてもよいし、されていなくてもよい)、アウトライン化モジュール2222からセレクト情報、多値画像(バックグラウンド)処理モジュール2223からバックグラウンドの多値画像(符号化されていてもよいし、されていなくてもよい)を受け取り、出力ファイルを形成する。
図23を用いて、出力ファイル2300のデータ構造の例を説明する。
出力ファイル2300は、バックグラウンド画像データ2301、フォアグラウンド画像データ2302、アウトラインデータ2303、描画記述2304を有している。バックグラウンド画像データ2301は多値画像(バックグラウンド)処理モジュール2223からのバックグラウンドの多値画像であり、フォアグラウンド画像データ2302は多値画像(フォアグラウンド)処理モジュール2221からのフォアグラウンドの多値画像であり、アウトラインデータ2303はアウトライン化モジュール2222からのセレクト情報である。そして、描画記述2304には、以下に示す各情報((1)〜(3))を記述する。
(1)バックグラウンド画像の描画命令
(2)セレクト情報であるアウトラインデータを用いて、フォアグラウンド画像をクリップする命令
(3)クリップ後のフォアグラウンド画像をバックグラウンド画像の上に上書きする命令
<第3の実施の形態>
第3の実施の形態(第3−1の実施の形態〜第3−3の実施の形態を含む)の概要について説明する。
第3の実施の形態は、文字毎にその文字の色を取得して、文字毎に色情報を付与するものである。
まず、文字線画情報(2値画像)を入力画像(多値画像)から取得する。文字線画情報とは、第2の実施の形態におけるセレクト情報に対応するものであり、以下、セレクト情報ともいう。
次に文字線画情報を文字毎に分割する。そして、分割した文字毎に、その文字の色を取得する。
色の取得方法に次の2通りある。
(第1の方法)
前述した第1の実施の形態のN層分離モジュール110のように、入力画像を色毎にN層に分離する。そして、各文字の領域内に存在する、各々の層の画素を検出する。その検出した画素が黒(つまり、その画素は文字を構成している)である層の数が1つであれば、その層の色情報を採用する。複数の層が存在する場合、例えば、その層の色情報の平均値を取得してその色とする。第3−1の実施の形態で詳細に説明する。
(第2の方法)
各文字の領域に該当する入力画像内の画素を抽出する。そして、文字の領域内の入力画像の画素値の平均値を取得する。この平均値を、その文字の色情報とする。第3−2の実施の形態で詳細に説明する。
第1の方法又は第2の方法のように取得した文字の色情報を出力ファイル中に記載する。
文字はアウトライン化して記述する。そのアウトライン化の手法は、例えば、第1の実施の形態内の文字層処理モジュールによる文字層データの生成と同等の手法を用いてもよい。
ただし、第1の方法で、文字の領域内に存在する複数の層同士の色が極端に異なる場合、又は、第2の方法で、文字の領域内の画素値の分散が極端に大きな場合は、前記の方法をそのまま利用できない。単純に平均値を取得した場合、色が混ざってしまう危険性があるからである。この問題を回避するためには、(1)その文字画像を、アウトライン化せずにバックグラウンドの多値画像に含めること、(2)その文字画像を、第2の実施の形態と同等に、クリップし、フォアグラウンドの多値画像の色を参照するようにすること、という解決策を採ることができる。
なお、文字の領域とは、文字画像を包含する文字矩形であってもよいし、文字画像である画素塊そのものであってもよい。
<第3−1の実施の形態>
図24は、第3−1の実施の形態の構成例についての概念的なモジュール構成図である。
第3−1の実施の形態は、N層分離モジュール2410、セレクト層形成モジュール2420、文字層処理モジュール2430、文字色決定モジュール2440、多値バックグラウンド層処理モジュール2450、出力ファイル形成モジュール2460を有している。
N層分離モジュール2410は、文字色決定モジュール2440、多値バックグラウンド層処理モジュール2450と接続されており、第1−1の実施の形態のN層分離モジュール110と同等である。つまり、入力した多値画像から色毎にフォアグラウンドの画像の2値画像及びその色情報を抽出し、文字色決定モジュール2440へ渡す。また、バックグラウンドの多値画像を抽出し、多値バックグラウンド層処理モジュール2450へ渡す。
セレクト層形成モジュール2420は、文字層処理モジュール2430と接続されており、入力した多値画像内のフォアグラウンドの画像(文字線画情報)を抽出し、2値画像に変換して文字層処理モジュール2430へ渡す。つまり、セレクト情報を形成して文字層処理モジュール2430へ渡す。セレクト情報の形成方法は、特許文献2に記載されている方法を用いてもよい。又は、N層分離モジュール2410によって抽出されたN個の2値画像(色毎の2値画像)の論理和によって生成してもよい。
文字層処理モジュール2430は、セレクト層形成モジュール2420、文字色決定モジュール2440と接続されており、セレクト層形成モジュール2420からセレクト情報を受け取り、ベクトル化してベクトル情報を生成し、文字層データとして文字色決定モジュール2440へ渡す。第2の実施の形態のアウトライン化モジュール2222と同等の処理を行う。つまり、文字画像(閉領域)毎のアウトライン情報を生成し、フォントとして登録する。
文字色決定モジュール2440は、N層分離モジュール2410、文字層処理モジュール2430、出力ファイル形成モジュール2460と接続されており、文字層処理モジュール2430によって生成されたベクトル情報に対応するN層分離モジュール2410によって抽出された2値画像の色に基づいて、そのベクトル情報の色情報を決定する。つまり、文字画像毎のアウトライン情報に対して色情報を付与する。そして、色情報が付与されたアウトライン情報を出力ファイル形成モジュール2460へ渡す。また、文字色決定モジュール2440は、第1の実施の形態における文字層モジュールを含んでいてもよい。
多値バックグラウンド層処理モジュール2450は、N層分離モジュール2410、出力ファイル形成モジュール2460と接続されており、第1−1の実施の形態の多値バックグラウンド層処理モジュール129と同等である。
出力ファイル形成モジュール2460は、文字色決定モジュール2440、多値バックグラウンド層処理モジュール2450と接続されており、多値バックグラウンド層処理モジュール2450によって符号化された背景の多値画像の符号化データ、文字色決定モジュール2440によって色情報が付与されたアウトライン情報を有するファイルを形成する。
図25〜28を用いて、第3−1の実施の形態における処理を説明する。
図25は、N層分離画像とセレクト層の例を示す説明図である。
N層分離モジュール2410は、入力カラー画像2510をバックグラウンド画像とフォアグラウンド画像に分け、フォアグラウンド画像を色毎にN(図25の場合は3)層に分離する。なお、図25(A)に示す入力カラー画像2510内の「A」の文字は黒色、「B」の文字は青色、「C」の文字は赤色である。つまり、入力カラー画像2510は、N層分離モジュール2410によって、第1層2値画像2521、第2層2値画像2522、第3層2値画像2523、バックグラウンド画像2524に分離される。
そして、セレクト層形成モジュール2420は、入力カラー画像2510からセレクト層2530を抽出する。つまり、入力カラー画像2510のバックグラウンド画像以外の画像(文字「A」、「B」、「C」が含まれている)を抽出する。なお、セレクト層2530も2値画像である。
図26は、セレクト層の例を示す説明図である。
文字層処理モジュール2430によって、セレクト層2530内の文字2531、文字2532、文字2533をアウトライン化する。そして、各文字に文字コードを割り当て、フォントとして登録する。
次に、文字色決定モジュール2440が、各文字の色を決定する。図26の文字2532の「B」の色を決定する場合を例として説明する。
文字2532の「B」の文字を形成している黒画素と同じ位置にある画素を、図25に示した3個の2値画像(第1層2値画像2521、第2層2値画像2522、第3層2値画像2523)内から抽出する。その抽出した画素が黒である場合(つまり、その文字はその層の2値画像内にあるということ)、その文字の色をその層の2値画像の色に決定する。この場合、文字2532の「B」の文字を形成している黒画素と同じ位置に黒画素があるのは、第2層2値画像2522である。第2層2値画像2522の色は青であるので、文字2532の「B」の文字の色を青と判断する。ただし、ここでは、一つの画素位置に対して最大1つの層の2値画像のみ対応すると仮定している。
しかし、前述した文字の色の決定方法では、文字の色を1つに決定できない場合がある。つまり、文字内の画素が複数の層の2値画像に対応している場合があるからである。例えば、文字が混色であり、N層分離モジュール2410が分離したときに2つの層になってしまう場合がある。
そこで、以下のように、文字色を決定するようにしてもよい。
(1)文字を形成している黒画素と同じ位置にある画素が全て1つの層の2値画像にある場合(つまり、文字内の色が一つである場合)、(1−1)、(1−2)の処理を行う。
(1−1)その層の2値画像の色を採用する。
(1−2)対応する層の2値画像内の画素からこの画素を消去する。
(2)文字を形成している黒画素と同じ位置にある画素が複数の層の2値画像にある場合(つまり、文字内の色が複数である場合)、(2−1)か(2−2)かを判断する。
(2−1)全ての色が類似している場合、(2−1−1)、(2−1−2)の処理を行う。
(2−1−1)その色の平均値を文字の色として採用する。又は、最も面積の大きな色を採用する。
(2−1−2)対応する層の2値画像内の画素からこの画素を消去する。
(2−2)色が類似していない場合(つまり、色差の大きな色が存在している場合)、(2−2−1)〜(2−2−3)の処理を行う。
(2−2−1)最も面積の大きな色を文字の色として採用する。
(2−2−2)対応する層の2値画像内の画素からこの画素を消去する。
(2−2−3)色差の大きな色の画素は、文字を形成する画素としては採用しない。なお、対応する層の2値画像内の画素からこの画素を消去しない。
このような処理を行うことで、文字の色として採用された画素は、その層の2値画像から消去される。そして、文字の色として採用されていない画素は、その層の2値画像内に残存することとなる。
なお、色が類似しているか否かは、例えば、次のように決定する。
(1)各画素の色の平均色を計算する。
(2)各画素の色と、平均色との色差を計算する。
(3)全ての画素について、前記色差が閾値以下であれば、全ての色が類似していると判断する。
図27は、出力ファイル形成モジュール2460が出力する出力ファイル2700のデータ構造の例を示す説明図である。
出力ファイル2700は、バックグラウンド層データ2799、第1層から第N層までの2値画像のデータ(第1層2値画像データ2701、第2層2値画像データ2702、第N層2値画像データ270N)、文字層データ2710を有している。また、各層の2値画像データは、出力ファイル形成モジュール2460によって圧縮し、その圧縮データを出力するようにしてもよい。
文字層データ2710は、各文字に色を指定する情報を含んでいる。文字層データ2710は、第1−1の実施の形態内の文字層処理モジュール121、122、12Nで形成される情報に、さらに、各文字に文字色を指定するデータを加えたものである。
例えば、文字層データ2710は、図28に示すような文字層データテーブル2800を含むものである。つまり、文字層データテーブル2800は、文字コード欄2801、文字サイズ欄2802、文字位置X欄2803、文字位置Y欄2804、文字色欄2805を有している。さらに、この情報に加えて、文字コードと文字形状(アウトラインフォント)との対応が記載されているフォントファイルを有している。
前述の第3−1の実施の形態では、比較する画素の色差の大きな色が存在している場合、最も面積の大きな色を採用しているが、別の方法であってもよい。
例えば、文字を形成する画素を、色差の大きな色が存在している場合に文字として採用しないようにしてもよい。その場合には、その文字の領域を全てバックグラウンド画像に戻す。又は、その画素全てを、その層の2値画像から消去しないようにしてもよい。
また、前述の第3−1の実施の形態では、文字層処理モジュール2430による文字層処理を行った後に、文字色決定モジュール2440によって文字色を決定するようになっているが、必ずしも、この順序である必要はない。セレクト情報である2値画像に対して、文字の切り出しを行った段階で、文字色を決定すればよい。
また、前述の第3−1の実施の形態では、バックグラウンド画像は、N層分離モジュール2410で生成されているが、各層の2値画像によって消去されない画素があり(つまり、文字色が決定されない場合)、その画素をバックグラウンド画像に戻す処理を行う場合は、バックグラウンド画像の生成は、文字色決定後に行えばよい。
<第3−2の実施の形態>
図29は、第3−2の実施の形態の構成例についての概念的なモジュール構成図である。
第3−1の実施の形態では、N層の2値画像との対応を基に、各文字の色を決定していったが、第3−2の実施の形態では、入力多値画像との対応を基に、各文字の色を決定していく手法を示す。
第3−2の実施の形態は、セレクト層形成モジュール2910、文字矩形分割モジュール2920、文字色決定モジュール2930、文字層処理モジュール2940、多値バックグラウンド層処理モジュール2950、出力ファイル形成モジュール2960を有している。
セレクト層形成モジュール2910は、文字矩形分割モジュール2920、多値バックグラウンド層処理モジュール2950と接続されており、入力画像から、セレクト情報(2値画像)と、多値のバックグラウンド画像を形成する。この形成方法は、例えば、特許文献2に記載された形成方法を用いればよい。特許文献2に記載された形成方法では、フォアグラウンド画像も形成するが、本実施の形態ではフォアグラウンド画像は形成する必要はない。形成したセレクト情報を文字矩形分割モジュール2920へ渡し、バックグラウンド画像を多値バックグラウンド層処理モジュール2950へ渡す。
文字矩形分割モジュール2920は、セレクト層形成モジュール2910、文字色決定モジュール2930と接続されており、セレクト層形成モジュール2910によって形成されたセレクト情報(2値画像)の黒画素を文字矩形に分割して、ベクトル情報であるアウトラインフォントを生成して、文字色決定モジュール2930へ渡す。閉領域のアウトラインフォント毎に文字矩形に分割する。例えば、分割の方法は、第2の実施の形態のアウトライン化モジュール2222と同等にしてもよい。
文字色決定モジュール2930は、文字矩形分割モジュール2920、文字層処理モジュール2940と接続されており、文字矩形分割モジュール2920から受け取ったアウトラインフォントに対応する入力画像の色に基づいて、そのアウトラインフォントの色情報を決定する。その結果を文字層処理モジュール2940へ渡す。
文字層処理モジュール2940は、文字色決定モジュール2930、出力ファイル形成モジュール2960と接続されており、色情報が付加されたアウトラインフォントを文字色決定モジュール2930から受け取り、文字層データを生成する。文字層データは、第1の実施の形態又は第2の実施の形態と同等のものである。また、文字層処理モジュール2940は、第1の実施の形態における文字層モジュールを含んでいてもよい。
多値バックグラウンド層処理モジュール2950は、セレクト層形成モジュール2910、出力ファイル形成モジュール2960と接続されており、セレクト層形成モジュール2910から受け取ったバックグラウンド画像である多値画像を符号化する。その符号化データを出力ファイル形成モジュール2960へ渡す。
出力ファイル形成モジュール2960は、文字層処理モジュール2940、多値バックグラウンド層処理モジュール2950と接続されており、多値バックグラウンド層処理モジュール2950によって符号化されたバックグラウンド画像の符号化データ、文字層処理モジュール2940によって生成されたアウトラインフォント及びそのアウトラインフォントに対応する色情報を有する出力ファイルを形成する。
図30、31を用いて、第3−2の実施の形態における処理を説明する。
図30は、入力カラー画像3010、セレクト層3020、バックグラウンド画像3030の例を示す説明図である。
入力カラー画像3010は、セレクト層形成モジュール2910によって、セレクト層3020、バックグラウンド画像3030に分離される。そして、セレクト層3020内の各々の文字が、文字矩形分割モジュール2920によって分割される。セレクト層3020は、2値画像であるため、セレクト層3020内の文字「A」、「B」、「C」は、色情報をもたない。そこで、文字色決定モジュール2930が、各文字毎に文字色を決定していく。
例えば、文字「A」の色を決定する場合、まず、セレクト層3020において、「A」の文字を形成する黒画素の位置の画素値を、入力カラー画像3010から抽出する。「A」を形成する黒画素は、複数あるため、複数のカラー画素が抽出される。そして、文字色決定モジュール2930では、これら複数のカラー画素の平均色を算出して、その平均色を文字色とする。
文字色の決定後、文字層処理モジュール2940によって文字層処理が行われる。
そして、出力ファイル形成モジュール2960によって、文字層データと、バックグラウンド画像を用いて、出力ファイル3100が形成される。
図31は、出力ファイル3100のデータ構造の例を示す説明図である。
出力ファイル3100は、バックグラウンド層データ3101、文字層データ3102を有している。バックグラウンド層データ3101、文字層データ3102は、第3−1の実施の形態と同等である。
<第3−2の実施の形態の変形例1>
第3−2の実施の形態の変形例1は、第3−2の実施の形態の文字色決定モジュール2930を、第3−1の実施の形態と同様に、文字内の画素値が類似しているか否かを判断するようにしたものである。つまり、文字内の画素値の色差、色差の分散等を用いて、例えば、分散が閾値よりも大きければ、文字内の画素値が類似していないと判断してもよい。
文字内の画素値が類似していないと判断した場合、文字の黒画素領域の画像をバックグラウンド画像に戻す。そのとき文字の黒画素領域はセレクト情報から消去しておく。
第3−2の実施の形態では、バックグラウンド画像の形成は、セレクト層形成モジュール2910によって行われており、文字色決定モジュール2930による文字色の決定前に行われているため、このような処理はできない。そこで、第3−2の実施の形態の変形例1では、文字の黒画素領域の画像をバックグラウンド画像に戻すために、文字色決定後のセレクト情報を用いて、バックグラウンド画像を形成する。
図32は、第3−2の実施の形態の変形例1の構成例についての概念的なモジュール構成図である。
第3−2の実施の形態の変形例1は、セレクト層形成モジュール3210、文字矩形分割モジュール3220、文字色決定モジュール3230、文字層処理モジュール3240、バックグラウンド画像形成モジュール3250、バックグラウンド層処理モジュール3260、出力ファイル形成モジュール3270を有している。セレクト層形成モジュール3210はセレクト層形成モジュール2910に、文字矩形分割モジュール3220は文字矩形分割モジュール2920に、文字色決定モジュール3230は文字色決定モジュール2930に、文字層処理モジュール3240は文字層処理モジュール2940に、バックグラウンド層処理モジュール3260は多値バックグラウンド層処理モジュール2950に、出力ファイル形成モジュール3270は出力ファイル形成モジュール2960に該当する。
ただし、セレクト層形成モジュール3210は、2値画像であるセレクト情報のみを形成すればよい。
また、文字色決定モジュール3230は、前述のように文字色決定モジュール2930を文字内の画素値が類似しているか否かを判断するようにしたものであり、類似していると判断した画素(つまり、文字を形成している画素と判断されたもの)をバックグラウンド画像形成モジュール3250へ渡す。
バックグラウンド画像形成モジュール3250は、文字色決定モジュール3230、バックグラウンド層処理モジュール3260と接続されており、文字色決定モジュール3230から渡された画素を入力画像から消去する。つまり、多値画像であるバックグラウンド画像を形成し、バックグラウンド層処理モジュール3260へ渡す。
<第3−3の実施の形態>
第3−2の実施の形態(変形例を含む)では、文字の黒画素位置の平均値を、その文字の色情報としたが、セレクト層の形成によっては、文字のエッジが合致していない場合もあるため、色が変色してしまうおそれがある。
そこで、第3−3の実施の形態では、文字の中心付近で文字色を取得する。つまり、第3−3の実施の形態における文字色決定モジュール2930(3230)を、文字の中心付近の位置で、対応する入力画像の画素の画素値を取得して、その画素値を色情報とする。このためには、文字である画素塊を縮退して、その中の平均値を取得してもよい。縮退の方法は例えば、距離変換して1から順に減らしていくなどの方法がある。距離変換の手法は「南敏他著 「画像工学」 初版 コロナ社 96ページ〜103ページ」に記載されている。
<変形例>
前述の実施の形態間でモジュールを組み合わせるようにしてもよい。
また、前述の実施の形態では、アウトラインフォントの文字毎に色情報を付加する技術を示したが、アウトラインフォント以外でも同等の処理が可能である。つまり、文字のベクトル化の結果は、アウトラインフォント以外であってもよい。各種描画コマンドを用いて記述するようにしてもよい。例えば、直線を記述する命令、ベジエ曲線を記述する命令、矩形を記述する命令等を利用し、閉領域を記述するようにしてもよい。この閉領域を塗り潰す(フィルする)場合に指定する色情報を、例えば、前述の第1−3−1〜第1−3−3の実施の形態で獲得すればよい。
前述の実施の形態では、文字を形成する画素毎に色を取得していたが、必ずしも文字を形成する画素を特定する必要はない。
例えば、文字を包含する矩形を抽出し、この矩形内の全ての画素に関して、同等の処理を行ってもよい。この手法では、文字を形成する画素を特定しなくてもよいため、処理が簡単になる。
描画命令として、文字の色情報を指定するとき、一つ前の文字と同じ色情報を指定する場合には、必ずしも色情報の指定は必須ではない場合がある。そこで、一つ前の文字と同じ色であれば、色を記述しないとする処理を行うようにしてもよい。そのために、前述の実施の形態に、色を保持するメモリを付加する。色が変化したときに、このメモリに色を保持し、そして、色情報の指定命令を出力すればよい。
前述の実施の形態では、色差の大きな色が存在している場合には、バックグラウンド画像にその文字を戻すことを行うものがある。つまり、いったんは文字を形成する画素を、文字として採用しない場合がある。
この場合には、文字に関して、文字コードを入力しないことになるため、文字認識の結果を付加することができなくなる。
そこで、この場合には、文字に関して、各実施の形態の文字層処理モジュール(又は、それに対応するモジュール)で、透明色の文字コードを含んだ文字層処理を行えばよい。又は、空白のフォント登録を文字コードとして行い、その文字コードを含んだ文字層処理を行えばよい。
前述の実施の形態において、一つの文字内に、色差の大きな画素が存在している場合の処理方法を複数記載したが、他の処理方法もある。
例えば、第3−1の実施の形態に、第2の実施の形態で行ったように、セレクト情報を、フォアグラウンド画像のクリップ情報として用いるようにしてもよい。
図33は、第3−1の実施の形態の変形例の構成例についての概念的なモジュール構成図である。
第3−1の実施の形態の変形例は、N層分離モジュール3310、セレクト層形成モジュール3320、文字矩形分割モジュール3330、文字色決定モジュール3340、文字層処理モジュール3350、フォアグラウンド画像形成モジュール3360、多値バックグラウンド層処理モジュール3370、出力ファイル形成モジュール3380を有している。N層分離モジュール3310はN層分離モジュール2410に、セレクト層形成モジュール3320はセレクト層形成モジュール2420に、文字色決定モジュール3340は文字色決定モジュール2440に、多値バックグラウンド層処理モジュール3370は多値バックグラウンド層処理モジュール2450に、出力ファイル形成モジュール3380は出力ファイル形成モジュール2460に該当する。
文字矩形分割モジュール3330は、セレクト層形成モジュール3320、文字色決定モジュール3340と接続されている。第3−2の実施の形態の文字矩形分割モジュール2920と同等のものである。
文字色決定モジュール3340は、N層分離モジュール3310、文字矩形分割モジュール3330、文字層処理モジュール3350、フォアグラウンド画像形成モジュール3360、出力ファイル形成モジュール3380と接続されている。文字矩形分割モジュール3330によって分割された文字矩形毎に色情報を付加する。そして、フォアグラウンド画像形成モジュール3360へクリップ情報として、クリップする位置を示す2値画像を渡す。
また、文字色決定モジュール3340は、文字矩形内の画素間の色差が大きい場合、その画素位置をクリップすると判断する。
文字層処理モジュール3350は、文字色決定モジュール3340、出力ファイル形成モジュール3380と接続されており、第1の実施の形態における文字層処理モジュールと同等である。
フォアグラウンド画像形成モジュール3360は、文字色決定モジュール3340、出力ファイル形成モジュール3380と接続されている。クリップする位置を示す2値画像を文字色決定モジュール3340から取得する。この2値画像と、入力画像を用いて、フォアグラウンド画像を形成する。フォアグラウンド画像の形成方法は、特許文献2に記載した技術と同等である。
フォアグラウンド画像形成モジュール3360は、文字色決定モジュール3340から渡されたクリップ情報を用いて、そのクリップする画素位置を残すように、入力画像からフォアグラウンド画像を形成してもよい。この形成の方法は、特許文献2におけるセレクタ情報をクリップ画素位置に変更して、フォアグラウンド画像を形成する処理と同等である。
また、フォアグラウンド画像形成モジュール3360は、フォアグラウンド画像を圧縮してもよい。
また、例えば、第3−2の実施の形態に、第2の実施の形態で行ったように、セレクト情報を、フォアグラウンド画像のクリップ情報として用いるようにしてもよい。
図34は、第3−2の実施の形態の変形例2の構成例についての概念的なモジュール構成図である。
第3−2の実施の形態の変形例2は、セレクト層形成モジュール3410、文字矩形分割モジュール3420、文字色決定モジュール3430、文字層処理モジュール3440、フォアグラウンド画像形成モジュール3450、多値バックグラウンド層処理モジュール3460、出力ファイル形成モジュール3470を有している。セレクト層形成モジュール3410はセレクト層形成モジュール2910に、文字矩形分割モジュール3420は文字矩形分割モジュール2920に、文字色決定モジュール3430は文字色決定モジュール2930に、文字層処理モジュール3440は文字層処理モジュール2940に、多値バックグラウンド層処理モジュール3460は多値バックグラウンド層処理モジュール2950に、出力ファイル形成モジュール3470は出力ファイル形成モジュール2960に該当する。
文字色決定モジュール3430は、文字矩形分割モジュール3420、フォアグラウンド画像形成モジュール3450、文字層処理モジュール3440と接続されている。文字色決定モジュール3430は、文字矩形分割モジュール3420によって分割された文字矩形毎に色情報を付加する。そして、フォアグラウンド画像形成モジュール3450へクリップ情報として、クリップする位置を示す2値画像を渡す。
また、文字色決定モジュール3430は、文字矩形内の画素間の色差が大きい場合、その画素位置をクリップすると判断する。
フォアグラウンド画像形成モジュール3450は、文字色決定モジュール3430、出力ファイル形成モジュール3470と接続されている。クリップする位置を示す2値画像を文字色決定モジュール3430から取得する。この2値画像と、入力画像を用いて、フォアグラウンド画像を形成する。フォアグラウンド画像の形成方法は、特許文献2に記載した技術と同等である。
第3−1の実施の形態の変形例の出力ファイル形成モジュール3380、第3−2の実施の形態の変形例2の出力ファイル形成モジュール3470によって出力ファイル(出力ファイル3500又は出力ファイル3600等)を出力する。
図35は、出力ファイル3500のデータ構造の例を示す説明図であり、出力ファイル3500は、バックグラウンド層データ3501、文字層データ3502、フォアグラウンド層データ3503を有している。
図36は、出力ファイル3600のデータ構造の例を示す説明図であり、出力ファイル3600は、バックグラウンド層データ3699、第1層2値画像データ3601、第2層2値画像データ3602、第N層2値画像データ360N、文字層データ3610、フォアグラウンド層データ3620を有している。
さらに、文字層データテーブル3700として、文字色に加えて、その文字をフォアグラウンド画像でクリップした文字色にするか否かの情報も含めるようにしてもよい。具体的には、図37に示すようなデータ構造の例であってもよい。文字層データテーブル3700は、文字コード欄3701、文字サイズ欄3702、文字位置X欄3703、文字位置Y欄3704、文字色欄3705、クリップするか否か欄3706を有している。
さらに、出力ファイルとして、クリップの場合の文字層データは、第2の実施の形態による出力ファイル2300と同等のものであってもよい。つまり、出力ファイル2300は、バックグラウンド画像データ2301、フォアグラウンド画像データ2302、アウトラインデータ2303、描画記述2304を有している。
そして、描画記述2304には、以下に示す各情報((1)〜(3))を記述する。
(1)バックグラウンド画像の描画命令
(2)セレクト情報であるアウトラインデータを用いて、フォアグラウンド画像をクリップする命令
(3)クリップ後のフォアグラウンド画像をバックグラウンド画像の上に上書きする命令
このうち、バックグラウンド画像の描画命令は、クリップをしない場合と同じであるため、クリップの場合も特別な命令は必要ない。文字(又は描画命令で記述された閉領域)をクリップする場合には、色情報ではなく、クリップ命令を記載する。さらに、クリップを行う先のフォアグラウンド画像を記述する。
図38を参照して、前述の実施の形態のハードウェア構成例について説明する。図38に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成される画像処理システムであり、スキャナ等のデータ読み取り部3817と、プリンタなどのデータ出力部3818を備えたハードウェア構成例を示している。
CPU(Central Processing Unit)3801は、前述の実施の形態において説明した各種のモジュール、すなわち、N層分離モジュール110、文字層処理モジュール121、出力ファイル形成モジュール130、フォント登録モジュール430、出力ファイル形成モジュール440、代表文字決定モジュール620、拡大モジュール840、統一フォント処理モジュール1440、3層分離モジュール2210、セレクト層形成モジュール2420、多値バックグラウンド層処理モジュール2450等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
ROM(Read Only Memory)3802は、CPU3801が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)3803は、CPU3801の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス3804により相互に接続されている。
ホストバス3804は、ブリッジ3805を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス3806に接続されている。
キーボード3808、マウス等のポインティングデバイス3809は、操作者により操作される入力デバイスである。ディスプレイ3810は、液晶表示装置又はCRT(Cathode Ray Tube)などからなり、各種情報をテキストやイメージ情報として表示する。
HDD(Hard Disk Drive)3811は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU3801によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、入力された画像データ、出力ファイル、各モジュールの処理結果などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
ドライブ3812は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体3813に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース3807、外部バス3806、ブリッジ3805、及びホストバス3804を介して接続されているRAM3803に供給する。リムーバブル記録媒体3813も、ハードディスクと同等のデータ記録領域として利用可能である。
接続ポート3814は、外部接続機器3815を接続するポートであり、USB、IEEE1394等の接続部をもつ。接続ポート3814は、インタフェース3807、及び外部バス3806、ブリッジ3805、ホストバス3804等を介してCPU3801等に接続されている。通信部3816は、ネットワークに接続され、外部とのデータ通信処理を実行する。データ読み取り部3817は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部3818は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
なお、図38に示すハードウェア構成は、1つの構成例を示すものであり、前述の実施の形態は、図38に示す構成に限らず、前述の実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図38に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM)、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
第1−1の実施の形態の構成例についての概念的なモジュール構成図である。 第1−1の実施の形態による処理例を示すフローチャートである。 出力ファイルのデータ構造の例を示す説明図である。 第1−1−1の実施の形態の構成例についての概念的なモジュール構成図である。 第1−1−1の実施の形態による処理例を示すフローチャートである。 第1−1−2の実施の形態の構成例についての概念的なモジュール構成図である。 第1−1−2の実施の形態による処理例を示すフローチャートである。 第1−1−3の実施の形態の構成例についての概念的なモジュール構成図である。 第1−1−3の実施の形態による処理例を示す説明図である。 拡大モジュールによる高解像度文字画像データの生成処理例を示す説明図である。 第1−1−3の実施の形態による処理例を示すフローチャートである。 第1−1−4の実施の形態の構成例についての概念的なモジュール構成図である。 第1−1−4の実施の形態による処理例を示すフローチャートである。 第1−2の実施の形態の構成例についての概念的なモジュール構成図である。 第1−3の実施の形態内の文字層処理モジュールの構成例についての概念的なモジュール構成図である。 文字切り出しモジュール内の構成例についての概念的なモジュール構成図である。 文字層出力モジュール内の構成例についての概念的なモジュール構成図である。 出力ファイルのデータ構造の例を示す説明図である。 文字層データと2値画像層データの例を示す説明図である。 第1−3の実施の形態の変形例における文字切り出しモジュール内の構成例についての概念的なモジュール構成図である。 第1−3の実施の形態における出力ファイルのデータ構造の例を示す説明図である。 第2の実施の形態の構成例についての概念的なモジュール構成図である。 出力ファイルのデータ構造の例を示す説明図である。 第3−1の実施の形態の構成例についての概念的なモジュール構成図である。 N層分離画像とセレクト層の例を示す説明図である。 セレクト層の例を示す説明図である。 出力ファイルのデータ構造の例を示す説明図である。 文字層データテーブルのデータ構造の例を示す説明図である。 第3−2の実施の形態の構成例についての概念的なモジュール構成図である。 入力カラー画像、セレクト層、バックグラウンド画像の例を示す説明図である。 出力ファイルのデータ構造の例を示す説明図である。 第3−2の実施の形態の変形例1の構成例についての概念的なモジュール構成図である。 第3−1の実施の形態の変形例の構成例についての概念的なモジュール構成図である。 第3−2の実施の形態の変形例2の構成例についての概念的なモジュール構成図である。 出力ファイルのデータ構造の例を示す説明図である。 出力ファイルのデータ構造の例を示す説明図である。 文字層データテーブルのデータ構造の例を示す説明図である。 第1〜第3の実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
符号の説明
110…N層分離モジュール
121、122、12N…文字層処理モジュール
129…多値バックグラウンド層処理モジュール
130…出力ファイル形成モジュール
410…文字切り出しモジュール
420…文字コード決定モジュール
430…フォント登録モジュール
440…出力ファイル形成モジュール
610…文字切り出しモジュール
620…代表文字決定モジュール
630…文字コード決定モジュール
640…フォント登録モジュール
650…出力ファイル形成モジュール
810…文字切り出しモジュール
820…代表文字決定モジュール
830…文字コード決定モジュール
840…拡大モジュール
850…フォント登録モジュール
860…出力ファイル形成モジュール
1210…文字切り出しモジュール
1220…代表文字決定モジュール
1230…拡大モジュール
1240…文字コード決定モジュール
1250…フォント登録モジュール
1260…出力ファイル形成モジュール
1410…N層分離モジュール
1421、1422、142N…文字層処理モジュール
1429…多値バックグラウンド層処理モジュール
1430…出力ファイル形成モジュール
1440…統一フォント処理モジュール
1501…文字切り出しモジュール
1502…文字層出力モジュール
1503…2値画像層出力モジュール
1504…出力ファイル形成モジュール
1601…画素塊抽出モジュール
1602…画素塊サイズ検証モジュール
1603…画素塊消去モジュール
1701…フォント登録モジュール
1702…文字コード決定モジュール
1703…文字層形成モジュール
2001…文字切り出しモジュール
2002…画素塊サイズ検証モジュール
2003…画素塊復活モジュール
2210…3層分離モジュール
2221…多値画像(フォアグラウンド)処理モジュール
2222…アウトライン化モジュール
2223…多値画像(バックグラウンド)処理モジュール
2230…出力ファイル形成モジュール
2410…N層分離モジュール
2420…セレクト層形成モジュール
2430…文字層処理モジュール
2440…文字色決定モジュール
2450…多値バックグラウンド層処理モジュール
2460…出力ファイル形成モジュール
2910…セレクト層形成モジュール
2920…文字矩形分割モジュール
2930…文字色決定モジュール
2940…文字層処理モジュール
2950…多値バックグラウンド層処理モジュール
2960…出力ファイル形成モジュール
3210…セレクト層形成モジュール
3220…文字矩形分割モジュール
3230…文字色決定モジュール
3240…文字層処理モジュール
3250…バックグラウンド画像形成モジュール
3260…バックグラウンド層処理モジュール
3270…出力ファイル形成モジュール
3310…N層分離モジュール
3320…セレクト層形成モジュール
3330…文字矩形分割モジュール
3340…文字色決定モジュール
3350…文字層処理モジュール
3360…フォアグラウンド画像形成モジュール
3370…多値バックグラウンド層処理モジュール
3380…出力ファイル形成モジュール
3410…セレクト層形成モジュール
3420…文字矩形分割モジュール
3430…文字色決定モジュール
3440…文字層処理モジュール
3450…フォアグラウンド画像形成モジュール
3460…多値バックグラウンド層処理モジュール
3470…出力ファイル形成モジュール

Claims (8)

  1. 多値画像から前景の多値画像、背景の多値画像及び該前景の多値画像を切り抜くための選択情報である2値画像を抽出する画像抽出手段と、
    前記画像抽出手段によって抽出された2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、
    前記画像抽出手段によって抽出された前景の多値画像、前記画像抽出手段によって抽出された背景の多値画像、前記ベクトル情報生成手段によって生成されたベクトル情報、該背景の多値画像の描画命令記述、該ベクトル情報で該前景の多値画像を切り抜く切り抜き描画記述及び該切り抜き描画記述によって切り抜かれた画像を該背景の多値画像に描画する切り抜き画像描画記述を有するファイルを形成するファイル形成手段
    を具備し、
    前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、
    前記ベクトル情報で切り抜かれる前記前景の多値画像は、アウトライン化された文字を含む領域内を該文字の色で塗り潰したものとする
    ことを特徴とする画像処理装置。
  2. 前記画像処理装置は、
    前記画像抽出手段によって抽出された前景の多値画像を符号化する第1の符号化手段と、
    前記画像抽出手段によって抽出された背景の多値画像を符号化する第2の符号化手段
    を具備し、
    前記ファイル形成手段は、前記第1の符号化手段によって符号化された前景の多値画像、前記第2の符号化手段によって符号化された背景の多値画像、前記ベクトル情報生成手段によって生成されたベクトル情報、該背景の多値画像の描画命令記述、該ベクトル情報で該前景の多値画像を切り抜く切り抜き描画記述及び該切り抜き描画記述によって切り抜かれた画像を該背景の多値画像に描画する切り抜き画像描画記述を有するファイルを形成する
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、
    前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、
    前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記画像抽出手段によって抽出された2値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、
    前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、
    前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段
    を具備し、
    前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、
    前記色決定手段は、文字内の前記2値画像の色が一つである場合、文字内の前記2値画像の色が複数であってその色が類似している場合、文字内の前記2値画像の色が複数であってその色が類似していない場合に分けて処理を行う
    ことを特徴とする画像処理装置。
  4. 多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、
    前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、
    前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記多値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、
    前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、
    前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段
    を具備し、
    前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、
    前記色決定手段は、前記多値画像内の文字内の平均色をベクトル情報の色情報とする、前記多値画像内の文字内の画素値が類似している場合と類似していない場合に分けてベクトル情報の色情報を決定する、又は前記多値画像内の文字の中心付近の色でベクトル情報の色情報を決定する
    ことを特徴とする画像処理装置。
  5. 前記色決定手段は、前記ベクトル情報に対応する2値画像が複数ある場合、該2値画像の色の平均値又は色の占める面積に基づいて、該ベクトル情報の色を決定する
    ことを特徴とする請求項3又は4に記載の画像処理装置。
  6. コンピュータを、
    多値画像から前景の多値画像、背景の多値画像及び該前景の多値画像を切り抜くための選択情報である2値画像を抽出する画像抽出手段と、
    前記画像抽出手段によって抽出された2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、
    前記画像抽出手段によって抽出された前景の多値画像、前記画像抽出手段によって抽出された背景の多値画像、前記ベクトル情報生成手段によって生成されたベクトル情報、該背景の多値画像の描画命令記述、該ベクトル情報で該前景の多値画像を切り抜く切り抜き描画記述及び該切り抜き描画記述によって切り抜かれた画像を該背景の多値画像に描画する切り抜き画像描画記述を有するファイルを形成するファイル形成手段
    として機能させ
    前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、
    前記ベクトル情報で切り抜かれる前記前景の多値画像は、アウトライン化された文字を含む領域内を該文字の色で塗り潰したものとする
    ことを特徴とする画像処理プログラム。
  7. コンピュータを、
    多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、
    前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、
    前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記画像抽出手段によって抽出された2値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、
    前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、
    前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段
    として機能させ
    前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、
    前記色決定手段は、文字内の前記2値画像の色が一つである場合、文字内の前記2値画像の色が複数であってその色が類似している場合、文字内の前記2値画像の色が複数であってその色が類似していない場合に分けて処理を行う
    ことを特徴とする画像処理プログラム。
  8. コンピュータを、
    多値画像から前景の画像を切り抜くための選択情報である色ごとの2値画像を抽出する画像抽出手段と、
    前記多値画像内の前記前景の2値画像の輪郭を閉領域化するベクトル化を行って、ベクトル情報を生成するベクトル情報生成手段と、
    前記ベクトル情報生成手段によって生成されたベクトル情報に対応する前記多値画像の色に基づいて、該ベクトル情報の色情報を決定する色決定手段と、
    前記多値画像内の背景の多値画像を符号化する背景画像符号化手段と、
    前記背景画像符号化手段によって符号化された背景の多値画像の符号化データ、前記ベクトル情報生成手段によって生成されたベクトル情報及び該ベクトル情報に対応する前記色決定手段によって決定された色情報を有するファイルを形成するファイル形成手段
    として機能させ
    前記ベクトル情報生成手段が生成するベクトル情報は、アウトライン化された文字の形状を表しており、
    前記色決定手段は、前記多値画像内の文字内の平均色をベクトル情報の色情報とする、前記多値画像内の文字内の画素値が類似している場合と類似していない場合に分けてベクトル情報の色情報を決定する、又は前記多値画像内の文字の中心付近の色でベクトル情報の色情報を決定する
    ことを特徴とする画像処理プログラム。
JP2007265652A 2007-10-11 2007-10-11 画像処理装置及び画像処理プログラム Expired - Fee Related JP4766030B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007265652A JP4766030B2 (ja) 2007-10-11 2007-10-11 画像処理装置及び画像処理プログラム
US12/137,343 US8483499B2 (en) 2007-10-11 2008-06-11 Image processing apparatus, image processing method, computer-readable medium and computer data signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007265652A JP4766030B2 (ja) 2007-10-11 2007-10-11 画像処理装置及び画像処理プログラム

Publications (2)

Publication Number Publication Date
JP2009094955A JP2009094955A (ja) 2009-04-30
JP4766030B2 true JP4766030B2 (ja) 2011-09-07

Family

ID=40534272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007265652A Expired - Fee Related JP4766030B2 (ja) 2007-10-11 2007-10-11 画像処理装置及び画像処理プログラム

Country Status (2)

Country Link
US (1) US8483499B2 (ja)
JP (1) JP4766030B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006023945A (ja) * 2004-07-07 2006-01-26 Canon Inc 画像処理システム及び画像処理方法
ES2313860B1 (es) * 2008-08-08 2010-03-16 Nilo Garcia Manchado Camara digital y procedimiento asociado.
JP5067501B2 (ja) * 2009-02-23 2012-11-07 富士通株式会社 多色ベクトル画像処理装置および方法
CN101877209A (zh) * 2009-04-28 2010-11-03 英华达(上海)电子有限公司 字符显示方法、显示装置和计算机系统
JP5407582B2 (ja) * 2009-06-22 2014-02-05 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
US9323726B1 (en) * 2012-06-27 2016-04-26 Amazon Technologies, Inc. Optimizing a glyph-based file
JP5730274B2 (ja) * 2012-11-27 2015-06-03 京セラドキュメントソリューションズ株式会社 画像処理装置
JP6119427B2 (ja) * 2013-05-28 2017-04-26 コニカミノルタ株式会社 画像処理装置、画像読取装置、画像処理装置の制御方法、及び画像処理装置の制御プログラム
WO2016208037A1 (ja) * 2015-06-25 2016-12-29 富士通株式会社 プログラム生成装置、プログラム生成方法および生成プログラム
TWI616843B (zh) * 2016-09-12 2018-03-01 粉迷科技股份有限公司 動態影像去背方法、系統與電腦可讀取儲存裝置
US10242480B2 (en) * 2017-03-03 2019-03-26 Microsoft Technology Licensing, Llc Animated glyph based on multi-axis variable font
JP7095345B2 (ja) * 2018-03-22 2022-07-05 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システム及びプログラム
CN113742288A (zh) * 2020-05-29 2021-12-03 伊姆西Ip控股有限责任公司 用于数据索引的方法、电子设备和计算机程序产品
CN113238829B (zh) * 2021-06-07 2022-10-18 北京字节跳动网络技术有限公司 一种背景色生成的方法、装置、电子设备及存储介质

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05211605A (ja) * 1992-01-31 1993-08-20 Canon Inc ファクシミリ通信方法及びファクシミリ装置
JP3147246B2 (ja) * 1992-01-31 2001-03-19 キヤノン株式会社 画像処理装置及び方法
JP3077869B2 (ja) * 1993-12-28 2000-08-21 大日本スクリーン製造株式会社 画像データの圧縮方法および伸長方法
US6324305B1 (en) 1998-12-22 2001-11-27 Xerox Corporation Method and apparatus for segmenting a composite image into mixed raster content planes
JP2000175052A (ja) * 1998-12-07 2000-06-23 Xerox Corp ピクセルマップ表現の処理方法及び装置
JP3604993B2 (ja) * 2000-03-16 2004-12-22 シャープ株式会社 画像符号化装置、画像符号化方法、画像復号装置、および画像復号方法
JP2002165105A (ja) * 2000-11-27 2002-06-07 Canon Inc 画像処理装置及びその方法並びに記憶媒体
JP2003087558A (ja) * 2001-09-14 2003-03-20 Fuji Xerox Co Ltd 画像処理装置および方法
US7324120B2 (en) * 2002-07-01 2008-01-29 Xerox Corporation Segmentation method and system for scanned documents
US7386166B2 (en) 2004-02-12 2008-06-10 Xerox Corporation Systems and methods for connecting regions image data having similar characteristics
JP4788106B2 (ja) * 2004-04-12 2011-10-05 富士ゼロックス株式会社 画像辞書作成装置、符号化装置、画像辞書作成方法及びそのプログラム
US7450268B2 (en) * 2004-07-02 2008-11-11 Hewlett-Packard Development Company, L.P. Image reproduction
JP2006253892A (ja) 2005-03-09 2006-09-21 Canon Inc 画像処理方法及び画像処理装置
JP4764231B2 (ja) * 2006-03-31 2011-08-31 キヤノン株式会社 画像処理装置、制御方法、コンピュータプログラム

Also Published As

Publication number Publication date
JP2009094955A (ja) 2009-04-30
US8483499B2 (en) 2013-07-09
US20090097765A1 (en) 2009-04-16

Similar Documents

Publication Publication Date Title
JP4766030B2 (ja) 画像処理装置及び画像処理プログラム
JP4553055B2 (ja) 画像処理装置及び画像処理プログラム
US7623712B2 (en) Image processing method and apparatus
JP4600491B2 (ja) 画像処理装置及び画像処理プログラム
JP5047051B2 (ja) 画像処理装置及び画像符号化方法
US7831107B2 (en) Image processing apparatus, image processing method, and program
US20070237394A1 (en) Image processor for character recognition
JP4364809B2 (ja) 画像処理装置、画像処理方法、プログラム、及び記録媒体
JP2003338935A (ja) 画像処理装置および方法
JP4930288B2 (ja) 画像処理装置及び画像処理プログラム
JP4862509B2 (ja) 画像処理システムおよび画像処理プログラム
JP2007156841A (ja) 画像処理方法及び画像処理装置
JP5067182B2 (ja) 画像処理装置及び画像処理プログラム
JP2005204206A (ja) 画像処理装置、画像処理用プログラム及び記憶媒体
JP4383187B2 (ja) 画像処理装置、画像処理用プログラム及び記憶媒体
JP4935732B2 (ja) 画像処理装置及び画像処理プログラム
JP5407582B2 (ja) 画像処理装置及び画像処理プログラム
JP4872780B2 (ja) 画像処理システム及び画像処理プログラム
RU2737001C1 (ru) Устройство и способ обработки изображений и носитель данных
JPH08237404A (ja) 光学文字認識モードの選択方法
JP4237642B2 (ja) 画像処理装置、画像処理用プログラム及び記憶媒体
JP4770863B2 (ja) 画像処理装置及び画像処理プログラム
JP4973536B2 (ja) 画像処理装置及び画像処理プログラム
JP3074210B2 (ja) 紙文書画像処理装置
JP4848938B2 (ja) 情報処理システムおよび情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110331

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110530

R150 Certificate of patent or registration of utility model

Ref document number: 4766030

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140624

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees