JP2007013795A - 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体 - Google Patents

画像処理装置および画像処理方法、画像処理プログラム、記憶媒体 Download PDF

Info

Publication number
JP2007013795A
JP2007013795A JP2005194051A JP2005194051A JP2007013795A JP 2007013795 A JP2007013795 A JP 2007013795A JP 2005194051 A JP2005194051 A JP 2005194051A JP 2005194051 A JP2005194051 A JP 2005194051A JP 2007013795 A JP2007013795 A JP 2007013795A
Authority
JP
Japan
Prior art keywords
thick line
image
image processing
color
pixel
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.)
Granted
Application number
JP2005194051A
Other languages
English (en)
Other versions
JP4623290B2 (ja
Inventor
Kanya Ishizaka
敢也 石坂
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
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 filed Critical Fuji Xerox Co Ltd
Priority to JP2005194051A priority Critical patent/JP4623290B2/ja
Priority to US11/319,162 priority patent/US8558838B2/en
Publication of JP2007013795A publication Critical patent/JP2007013795A/ja
Application granted granted Critical
Publication of JP4623290B2 publication Critical patent/JP4623290B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/403Edge-driven scaling; Edge-based scaling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/393Enlarging or reducing
    • H04N1/3935Enlarging or reducing with modification of image resolution, i.e. determining the values of picture elements at new relative positions
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/20Function-generator circuits, e.g. circle generators line or curve smoothing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)

Abstract

【課題】 簡潔な構成で限定色画像に対して高画質に拡大でき、また適切にアンチエイリアス処理を行うことができる画像処理装置および画像処理方法を提供する。
【解決手段】 ブロック抽出部11で抽出した2×2ブロックについて、注目色選択部12でブロック中から2色の注目色C1、C2を選択する。この2色の注目色をもとに、ブロック分類部13はブロックを細線、C1太線、C2太線、その他のいずれかに分類し、さらに細線についてC1太線、C2太線と見なせるものと、その他に分類する。画質改善部14では、角度概算部21でエッジが水平方向または垂直方向、45度方向なのかを分類し、角度精算部22でエッジの角度を精算する。画素値出力部23は、精算された角度に従って画質改善の処理を行い、アンチエイリアス拡大画像を出力する。
【選択図】 図1

Description

本発明は、入力された特定色のデジタル画像をプリンタやディスプレイ装置などへ印刷出力または表示出力する際の画質を改善する技術に関するものである。
近年の電子文書の広汎な流通により、一般的にデジタル画像を高品質に表示または印刷することが求められている。高品質に表示または印刷するためには、画像の画質改善技術が必要となるが、とりわけ、異なる解像度を持った出力機器に画像を高画質出力するための拡大技術が重要となる。例えば、ディスプレイ解像度が75dpiの画像を、例えば解像度が600dpiのプリンタに出力する場合には、8倍の画像拡大が必要となる。もちろん画像を大判に拡大するような場合にも拡大処理が使われる。
ところで、デジタル画像は、画像全体に渡って使用されている色数によって分類することができる。例えば、デジタルカメラで撮影された画像は多くの色数を含んでおり、連続階調画像に分類できる。連続階調画像には明確な定義はないが、簡易的には、画像中で使用されている色数が257色以上の画像と考えればよい。また、例えばプリンタやファックスで出力される画像は白黒の2色しか使われていないため、2値画像に分類できる。
更に、連続階調画像と2値画像の中間に位置するものとして、限定色画像がある。限定色画像にも明確な定義はないが、簡易的には、画像全体で使用されている色数が255色以下の画像と考えればよい。その意味では、2値画像は限定色画像のうちで2色しか使われていない画像という見方ができ、限定色画像の特別な場合と言える。
限定色画像は、連続階調画像の色数を256色に減色して作成される画像、例えば自然画像を減色処理して得られる256色画像と、もともとの色数が256色以下しかない画像、例えば、地図、地形図、GIS(地理情報システム)情報、CAD図面画像、グラフィック画像などに分類できる。なお、例外としては、例えばRGBの連続階調画像をグレー変換した画像や、RGBを分版した画像は、いずれも256色以下の画像となるが、これらの画像は限定色画像に含めずに、連続階調画像と見なす方が自然である。
このようなことから、限定色画像は、例えば8色や16色、256色などの少数の色のみで表現され、これらの表現される色は例えば自明でないカラーマップ等により対応づけることができ、更に画像にアンチエイリアス処理が施されていない画像、とすることができる。
ここでアンチエイリアス処理は、画像のエッジ部に見られるジャギーを軽減する技術であり、限定色画像の場合、画像を多色化してエッジ部を滑らかに見せる画像処理技術である。多色化してしまうため、アンチエイリアス処理が施された画像は限定色画像よりも連続階調画像の性質が強くなる。
このアンチエイリアス処理によってエッジ部が見かけ上滑らかになり、画質が改善されるが、画像を拡大して解像度を向上させても画質を向上させることができる。図33は、一般的な限定色画像の拡大処理に関わる画質改善処理の一例の説明図である。上述のように、画質改善処理として、アンチエイリアス処理や解像度を向上させるための拡大処理があるが、さらに図33に示したように、それらを組み合わせたアンチエイリアス拡大処理がある。このアンチエイリアス拡大処理は、アンチエイリアス処理、拡大処理、それぞれ単体の処理に比べると上位概念の処理であると言える。つまり、アンチエイリアス拡大した画像を再限定色化すれば原画像に対する拡大画像が得られ、原画像サイズに平均値縮小すれば原画像に対するアンチエイリアス画像が得られる。
図34は、画質改善処理と面積占有率の概念の関係の一例の説明図である。図34(A)に示す原画像に対して、図34(B)に示すように本来あるべきエッジ線が推定できれば、そのエッジ線が画素を横切る面積占有率によって、図34(C)〜(F)に示すように画質改善画像を得ることができる。ここで、図34(C)はアンチエイリアス画像、図34(D)は拡大画像、図34(E)はアンチエイリアス拡大画像、図34(F)はドットサイズ変調画像である。なお、図示の都合上、色の違いはハッチングを異ならせて示している。また白または黒の部分についても、実際には白、黒でなくてよい。
例えば図34(B)中の丸印を付した画素について、黒く図示した部分の面積占有率が40%であったとする。また黒く図示した画素の色をC1,白く図示した画素の色をC2とすると、丸印を付した画素の値はC1×0.4+C2×0.6で求めることができる。また、拡大する場合にも、拡大した後の各画素について同様に計算すればよい。
このようにして原画像のそれぞれの画素について処理を行うことによって、例えば図34(G)に示すように画素単位での処理を行えば図34(C)に示すアンチエイリアス画像が得られる。また、例えば図34(H)に示すように原画像の1画素から2×2画素を生成すれば、図34(E)に示すようにアンチエイリアス拡大画像が得られる。このアンチエイリアス拡大画像を再限定色化すれば図34(D)に示す拡大画像が得られる。また、図34(E)に示したアンチエイリアス拡大画像を例えば平均値縮小すれば、図34(C)に示したアンチエイリアス画像が得られる。なお、図34(B)に示した原画像の各画素における面積占有率をそのまま画素の大きさに置き換えれば図34(F)に示すようなドットサイズ変調画像が得られる。
上述した、画像を高画質に拡大するという課題は、デジタル画像共通の課題である。しかしながら、上述のように一般に使われているデジタル画像には幾つかの種類があり、画像の持つ性質が異なっているため、高画質拡大する際には、それぞれの性質を捉えた拡大方法が必要となる。例えば、連続階調画像の拡大方式としては、例えば特許文献1に記載されている方法がある。この方法は、入力された画像に対して、連続階調画像の持つ性質である適切なアンチエイリアス処理がなされていることを前提として、基本的には、処理対象のドメインブロックと周辺の画素を含むレンジブロックをドメインブロックのサイズに縮小してドメインブロックとするという局所コラージュ反復処理によって、ジャギーのない高画質な拡大画像を得ることができる。また、2値文字線画画像の拡大方式としては、例えば特許文献2に記載されている方法がある。この方法は、2値画像内の各局所領域に対して、太線、細線の接続方向に必要分だけアンチエイリアス拡大することによって高画質な拡大画像を得ることができている。このように、連続階調画像と2値画像とでは画像の持つ性質が異なるため、その性質に合った拡大方法を適用してそれぞれ高画質に拡大することができる。
次に、本発明が対象としている限定色画像に対する従来の拡大方法に付いて述べる。限定色画像は、多値画像であるから、少なくとも連続階調画像用の拡大方法をそのまま適用することができ、例えば、上述の特許文献1に記載されている局所コラージュ反復の方式を適用することができる。しかしながら、このような連続階調画像用の拡大方法をそのまま適用すると、拡大画像にはジャギーが発生し、高画質に拡大することができない。このことは、連続階調画像と限定色画像とで画像の性質が異なることが原因である。
そこで、限定色画像に特化した従来の拡大方式として、例えば、特許文献3に記載されている方法がある。この方法では、カラー画像から単色領域の色と形状を抽出し、抽出された単色領域の形状に基づいて、その単色領域の境界を表すベクトル座標を抽出し、抽出されたベクトル座標に基づいて輪郭の平滑化、拡大を行う。この方法は、限定色画像の持つ性質に着目しているので、特に限定色画像の拡大に向いている。しかし、輪郭線ベクトルの抽出精度が悪い場合、高画質拡大できないという欠点がある。
また、更に別の方法として特許文献4に記載されている方法がある。この方法の場合、各色成分のデータを平滑化して線形補間し、高解像度用の画素データを一旦生成する。更に、注目画素とその周辺画素の中から代表色P,Qを選択しておき、入力された補間後の該当する各色成分のデータと、代表色P,Qの同色成分に基づいて最終的な高解像度用の画素の色成分を生成する。この方法は、限定色画像を線形補間法で拡大した際に生じる中間色を、予め決められている原画像の限定色を利用して限定色画像の拡大を行う方法である。しかし、拡大処理に線形補間法を使用しているため、拡大画像においてエッジ線のジャギーが残って画質が低下する場合があるという問題がある。
以上をまとめると、簡便かつ確実な方法で、誤りなく限定色画像のエッジ部における面積占有率の推定(連続曲線エッジの推定)を行い、原画像の情報を忠実に保存し、かつジャギーのない高画質な拡大画像を作成する方法が望まれている。
特開2003−283811号公報 特開2005−39802号公報 特開平7−334648号公報 特開平10−336697号公報
本発明は、上述した事情に鑑みてなされたもので、簡潔な構成で限定色画像について細部の情報を保ったまま高画質に拡大でき、また適切にアンチエイリアス処理することができる画像処理装置および画像処理方法、画像処理プログラム、その画像処理プログラムを格納した記憶媒体を提供することを目的とするものである。
本発明は、限定色の原画像に対して拡大処理、あるいは、アンチエイリアス処理またはアンチエイリアスおよび拡大処理(アンチエイリアス拡大処理)などの画質改善処理を行う画像処理装置および画像処理方法において、原画像内から所定のM×N画素サイズのブロックなどの局所領域を抽出し、その抽出した局所領域から注目色を2色選択し、選択した2色の注目色C1、C2を用いて、局所領域の種類を分類し、それぞれの分類に対応した拡大処理あるいはアンチエイリアス処理を含む画質改善処理を局所領域に対して行うことを特徴とするものである。局所領域の分類としては、細線、太線を含む分類を行うことができ、太線についてはさらに第1の太線、第2の太線を含む分類を行うことができる。第1の太線および第2の太線は、例えばそれぞれ、C1太線およびC2太線とすることができる。
なお、本発明において、細線、太線は、以下のように定義するものとする。すなわち、細線は、線幅1画素未満の部分を含む連続した線分とする。ここで線幅1画素未満の線分とは、線分内に局所的に2×2の市松パターンを含むもので定義できる。また、太線は線幅1画素以上の連続した線分とし、線分を構成する色がC1の場合をC1太線、C2の場合をC2太線とする。細線についても同様にC1細線、C2細線を定義できる。なお、太線に関しては、線幅が∞、つまり片側のエッジ線のみしか分からないような要素も含めることとする。これらの細線、太線の定義から分かるように、連続した線分に細線と太線の両方が存在する場合があるが、このような場合も線分を小サイズに分割すると、細線か太線に分類することができる。後述するように、本発明はこれら分類した各要素を最終的に単一の処理方法で処理することができる。
また、本発明の特徴から、画像内に存在する様々な細線、太線(C1太線、C2太線)の全てを処理の対象とするわけではなく、特定の条件を満たしたもののみについて処理を行えばよい。例えば予め原画像を拡大手段で拡大し、その拡大された画像を記憶手段に記憶させておき、その拡大された画像を原画像として画質改善することにより高画質の拡大画像、アンチエイリアス画像、あるいはアンチエイリアス拡大画像を得るように構成することができる。
具体例として、2×2画素サイズのブロックを局所領域として抽出し、注目色C1と注目色C2が互いに隣接する市松パターンを細線、所定の3画素が注目色C1の画素であり1画素が注目色C2の画素であるパターンをC1太線である第1の太線、所定の3画素が注目色C2の画素であり1画素が注目色C1の画素であるパターンをC2太線である第2の太線として分類し、第1の太線について第1の太線用の処理を行い、第2の太線については第2の太線用の処理を行うことができる。その際に局所領域内だけでなく、さらに局所領域の周囲の画素に対しても適用することができる。このとき、第1の太線または第2の太線の一方については色関係を反転することによって他方についての処理を共用することができる。
また、細線については、更に、当該ブロックの周囲の画素値から、第1の太線または第2の太線あるいはその他のいずれかに分類することによって、実質的に細線の処理を太線の処理によって代行することができる。第1の太線と第2の太線の画質改善処理を共用する場合、細線、第1の太線、第2の太線のいずれの処理も、共通の処理に集約することが可能である。
細線に分類されたブロックの再分類の方法としては、局所領域を含む領域、例えば局所領域がM×N画素サイズのブロックであれば、(M+2)×(N+2)サイズ以下のブロックの領域について、その領域内の画素値におけるC1画素の総量が所定数以下の場合に第1の太線に分類し、C2画素の総量が所定数以下の場合に第2の太線に分類することができる。
また、初めに細線であると分類された後に第1の太線または第2の太線に分類されたブロックに関しては、第1の太線用の処理または第2の太線用の処理を行った後に、該ブロックから1画素分所定方向にずれた当該ブロックと対になるブロックを対象として、再び画質改善処理を繰り返すように構成することができる。
太線用の処理としては、太線の方向が垂直方向または水平方向のいずれに属するかを判定し、その判定結果を受けて当該太線の角度を決定し、その結果に応じて画素値を出力するように構成することができる。垂直方向または水平方向のいずれに属するかの判定は、抽出された局所領域の周囲の画素値から行うことができる。例えば抽出された局所領域がM×N画素サイズのブロックであるとき、そのブロックを含む所定の(M+1)×(N+1)サイズ以下のブロック内の画素値から、当該太線の方向が垂直方向または水平方向のいずれに属するかを判定することができる。
また、太線の角度の決定は、判定された水平方向、垂直方向の各場合に応じて、当該方向における所定のパターンの連続性を検出することにより行うことができる。さらに、太線の方向が垂直方向または水平方向のいずれに属するかを判定した結果について、所定の条件を満たした場合に45度方向であると判定し、当該45度方向における所定のパターンの連続性を検出して太線の角度を決定することができる。
さらに本発明は、上述のような本発明の画像処理装置の機能または画像処理方法をコンピュータに実行させることを特徴とする画像処理プログラムと、そのような画像処理プログラムを格納したことを特徴とするコンピュータが読取可能な記憶媒体を提供するものである。
本発明によれば、限定色画像の各局所領域から2色の注目色を抽出し、この2色に着目して、更に局所領域を線画像の種類、例えば細線、太線、あるいはその他に分類し、太線についてはさらに例えば第1の太線、第2の太線に分類し、それぞれの分類に対応した拡大処理やアンチエイリアス処理などの画質改善処理を行うので、処理を非常に単純化することができ、簡潔な構成でありながら、適切に拡大処理あるいはアンチエイリアス処理またはアンチエイリアス拡大処理を行うことができる。例えば2×2画素サイズのブロックを局所領域として分類し、当該局所領域あるいはさらにその周囲の画素に対する処理を行うことができ、従来のような大きなサイズのパターンマッチングや多数のパターンマッチングを行う必要がないため、高速に処理を行うことができる。さらに、細線、第1の太線、第2の太線について処理を共用することが可能であり、さらに構成の簡単化および処理の高速化が可能である。
また、局所領域が上述のような小さいブロックサイズの場合でも、エッジ方向を精度よく決定し、処理に反映することができるため、例えば面積占有率を用いたアンチエイリアス処理またはアンチエイリアス拡大処理を行う場合でも、細部の情報を保ったまま適切にアンチエイリアス処理を行うことができ、ジャギーのない高画質な画像を得ることができる。
さらに、抽出した局所領域に含まれる線画像の方向に従って処理を行うので、特に45度方向など、垂直、水平方向以外の方向についても適切な画質改善処理を行うことができる。
本発明によれば、このように多くの効果を奏するものであり、以下に説明するように、このほかにも様々な効果を奏するものである。
図1は、本発明の実施の一形態を含むシステムの一例を示すブロック図である。図中、1は画像入力部、2はメモリ部、3は画像処理部、4は画像出力部、5は制御部、11はブロック抽出部、12は注目色選択部、13はブロック分類部、14は画質改善部、21は角度概算部、22は角度精算部、23は画素値出力部である。なお、図1に示した画質改善処理部3の各ブロックや制御部5などはコンピュータ上の処理プログラムモジュールとして存在してもよいし、一部または全部が専用のハードウェアで構成されていてもよい。
画像入力部1は、図1に示したシステムの外部からデジタル化された限定色画像データを入力し、メモリ部2に転送する。メモリ部2は、前記画像入力部1から入力された画像データや、画質改善後の画像データ、さらに画質改善処理に用いられる各種の途中の演算結果や処理パラメータなどを保持する。画像処理部3は、メモリ部2に保持された処理対象の画像に対して画質改善処理を施す。画像出力部4は、画像処理部3により画質が改善された画像データなどを、図1に示したシステムの外部に出力する。制御部5は、各部の処理を制御する。
画像処理部3は、ブロック抽出部11、注目色選択部12、ブロック分類部13、画質改善部14などを含んで構成されている。ブロック抽出部11は、原画像内から局所領域として、ここではM×N画素サイズのブロック(以下、M×Nブロックと呼ぶ)を抽出する。
注目色選択部12は、ブロック抽出部11で抽出したM×Nブロックの所定位置から2色の注目色C1,C2を選択する。
ブロック分類部13は、ブロック抽出部11で抽出したM×Nブロックを、そのブロックに含まれる線画像の種類に応じて分類する。本発明では線幅が∞の場合にも「線」として含める。従って、ブロックを分類することと線画像を分類することは同義である。分類の一例としては、細線、太線、その他に分類することができ、太線についてはさらに第1の太線、第2の太線に分類することができる。もちろん、その他の分類についてさらに細分してもかまわない。第1の太線および第2の太線としては、ここではそれぞれC1太線、C2太線であるものとする。このC1、C2は、注目色選択部12で選択された注目色である。また、細線に分類されたブロックに関しては、M×Nブロックを含む(M+2)×(N+2)画素サイズ以下のブロック内の画素値から、第1の太線(C1太線)、第2の太線(C2太線)、その他のいずれかに再分類する。
画質改善部14は、ブロック分類部13で細線、第1の太線(C1太線)、第2の太線(C2太線)に分類されたブロックについて、それぞれの分類に対応した画質改善処理を行う。なお、上述のように細線に分類されたブロックは、第1の太線(C1太線)、第2の太線(C2太線)、その他に再分類することによって、第1の太線(C1太線)と第2の太線(C2太線)に対応した画質改善処理を利用することができる。本発明における画質改善部14において行う画質改善処理は、エッジ方向を推定し、そのエッジ方向から面積占有率に従ってアンチエイリアス画像またはアンチエイリアス拡大画像あるいは拡大画像を生成するものである。もちろん、画質改善処理としてこれに限られるものではないが、以下の説明ではこの方法を用いた画質改善処理を行うものとする。
さらに画質改善部14は、ブロック分類部13で細線に分類された後に第1の太線(C1太線)に分類されたブロックに関して、所定部位に第1の太線(C1太線)としての画質改善処理を行い、細線に分類された後に第2の太線(C2太線)に分類されたブロックに関して、所定部位に第2の太線(C2太線)としての画質改善処理を行う。
この画質改善部14は、角度概算部21、角度精算部22、画素値出力部23などを含んで構成されている。角度概算部21は、ブロック抽出部11で抽出したM×Nブロックを含む原画像の(M+1)×(N+1)画素サイズ以下の所定の大きさのブロックの画素から、M×Nブロックが水平方向、垂直方向のいずれに属するかを概算角度として判定する。
角度精算部22は、角度概算部21で決定された概算角度が水平方向である場合には、ブロックの左右方向にそれぞれ所定パターンの続く長さから角度を精算する。また、概算角度が垂直方向である場合には、ブロックの上下方向にそれぞれ、所定パターンの続く長さから角度を精算する。更に、角度精算部22の判定処理において判定された角度が、所定条件を満たし、45度に近い場合には、再びブロックの所定の45度方向に所定パターンの続く長さから角度を精算する。
画素値出力部23は、角度精算部22で得られた角度に従って、M×Nブロックと対応する画質改善画像内の所定位置に所定の数だけ画素値を出力する。この処理には、例えば角度精算部22で得られた角度をエッジ方向とした面積占有率を用いたアンチエイリアス処理またはアンチエイリアス拡大処理、あるいはそれらをベースとした拡大処理を行うことができる。なお、画質改善部14の処理は、画素の参照開始位置、書き込み開始位置などの所定位置情報を除き、第1の太線(C1太線)と第2の太線(C2太線)の処理は対称的に行われる。また、上述の画質改善部14の構成では、角度概算部21及び角度精算部22は、ブロックに含まれる線画像の方向性を認識し、画素値出力部23は、認識された方向に従って画質改善処理を行うものと見ることもできる。
なお、画像処理部3は、限定色画像を対象としているため、処理に入る前に、入力された画像が限定色画像であるかどうかを判定する処理部を設けても良いし、入力された画像が限定色画像でない場合には処理を終了するようにしても良い。
以下、本発明の主要部である画像処理部3についてさらに説明してゆく。なお、以下の説明において、入力される原画像は限定色画像であるとする。また、M=2,N=2とし、また第1の太線はC1太線、第2の太線はC2太線であるものとして説明する。具体例についての説明においてはアンチエイリアス2倍拡大処理を行う場合について示すが、アンチエイリアス処理あるいは2倍拡大処理であってよいことは言うまでもない。
図2は、本発明の実施の一形態における画像処理部3の動作の一例を示すフローチャートである。動作を開始する前の準備として、原画像の縦横それぞれ2倍サイズで8ビット値の画像を記憶するためのメモリ領域をメモリ部2中に確保し、原画像を最近傍法等の公知の方法で拡大した画素値で初期化する。これは、画像処理部3から出力される画質改善画像(アンチエイリアス拡大画像)を書き込んでゆくためのメモリ領域であり、画質改善部14における画質改善処理の対象となる画像である。2倍拡大の処理は、例えば画像処理部3内の図示しない拡大処理部、あるいは制御部5で行うことができ、これらが本発明の拡大手段を構成する。
なお、この例では、入力される原画像の画素値が色値そのものであっても良いし、カラーパレット番号であっても良い。後者の場合には、通常、画像のヘッダ部にカラーマップが付されているので、このカラーマップに従って、原画像に格納されているパレット番号から実際の色を求めてこの色値を画素値として使用しても良いし、カラーパレット番号自体を画素値として使用しても良い。但し、後述するように、画質改善部34における画質改善画素値を出力する際には、それぞれ適切な方法で画素値の計算を行う必要がある。
まず、S101において、ブロック抽出部11により原画像の中からM×N画素サイズのブロック画像を抽出する。この例ではM=2、N=2としているので、2×2画素サイズのブロック画像(2×2ブロック)を抽出する。図3は、ブロック抽出部11で抽出される2×2ブロック画像の一例の説明図である。ブロック抽出部11では、原画像の端から1画素ずつシフトさせた2×2画素サイズのブロック画像を順次抽出してゆく。そして、抽出したブロック画像を処理対象とし、以下の処理によって画質を改善し、出力される画素値をメモリ部2内の対応する位置に書き込んでゆく。以降の処理は1つのブロック画像についての処理であり、この処理について説明する。
図2に戻って、S102において、ブロック抽出部31により抽出したM×N画素サイズのブロック画像から注目色C1、C2を選択する。この例ではM=2、N=2であり、2×2ブロックに対して、常に上側2×1ブロックの左側画素をC1、右側画素をC2として選択することにする。
S103において、S101でブロック抽出部11により抽出した1つの2×2ブロックについて、そのパターンが細線、C1太線、C2太線、あるいはその他のいずれかに該当するかを判定する。図4は、2×2ブロックの分類方法の一例の説明図である。図4(A)に示すように左下及び右上に同じ色(C2)が存在し、かつ右下の色C3≠C2である場合と、図4(B)に示すように左上及び右下に同じ色(C1)が存在し、かつ左下の色C4≠C1である場合に、細線と判定する。また図4(C)に示すように左上、左下、右下の画素が同じ色(C1)である場合にはC1太線と判定し、図4(D)に示すように左下、右上、右下の画素が同じ色(C2)である場合にはC2太線判定する。ここで、細線には図4(A)、(B)に示した2種類があり、C3及びC4の画素値はそれぞれC3≠C2、C4≠C1を満たせば何でも良いものとする。
なお、本発明の画質改善処理は、C1、C2の具体的な色に左右されない。従って、以降の説明では、図示の都合上、2×2ブロックの左上画素の色C1については黒く塗りつぶして示し、右上画素の色C2については白く抜いて示すこととする。なお、図4に示す4つのパターンは、二つの細線を同一としてみると、パターンの形状である、市松、L字、逆L字という呼び方を使うことができるので、併せて以後の説明で使用する。左上画素がC1であれば、市松は細線、L字はC1太線、逆L字はC2太線に対応する。左上画素をC1とすることによって、図4に示す各パターンの色が入れ替わった場合でも、同じ関係となることが理解できよう。
なお、図4に示す4パターンとも、2×2ブロックの上側にある2つの画素値がC1、C2で異なっている。従って、細線(市松)、C1太線(L字)、C2太線(逆L字)の判定の際には、まず2×2の上側にある2つの画素値C1、C2が異なるか否かを先に調べておき、その後にいずれのパターンであるかを判定しても良い。図5は、2×2ブロックの上部2×1画素による分類方法の一例の説明図である。例えば図5(A)に示すように2×2ブロックの上部の2つの画素とも等しい場合には、細線(市松)、C1太線(L字)、C2太線(逆L字)のいずれのパターンにも該当しないと判断できる。例えば4画素とも同じ色であったり、上側の2画素と下側の2画素の色が異なる、あるいは、下側のそれぞれの画素が上側の色と異なる等の場合がある。
また、図5(B)に示したように、上側の2つの画素値が異なる場合には、図5(C)〜(F)に示した細線(市松)、C1太線(L字)、C2太線(逆L字)のいずれかのパターンである可能性がある。従って、図5(B)に示すように上部の2つの画素値が異なる場合に、細線(市松)、C1太線(L字)、C2太線(逆L字)のパターンを検出するように構成すればよい。
図5(A)の場合、及び図5(B)の場合であっても細線(市松)、C1太線(L字)、C2太線(逆L字)のいずれのパターンでもない場合には、この例では当該2×2ブロックに対しては画質改善処理を行わず、S111へ進んで全ての2×2ブロックを対象としたか否かを判定し、まだ処理対象としていない2×2ブロックが残っている場合にはS101に戻って次の2×2ブロックの抽出を行う。このように、この例では2×2の上側の2×1ブロックから選択した注目色C1、C2が異なる場合にのみ処理を行う。なお、図5(B)の場合であっても細線(市松)、C1太線(L字)、C2太線(逆L字)のいずれのパターンでもない場合としては、例えば、左側の2画素がC1で右側の2画素がC2のパターンや、さらに下側の2画素にC1,C2以外の色が存在するパターンなどが含まれる。
図2に戻り、S103で2×2ブロックが細線(市松)に分類されたと判定された場合には、S104に進んで2×2ブロック内で注目色C1の画素数(以下、C1画素数)と注目色C2の画素数(以下、C2画素数)の大小によって、それぞれ場合分けを行う。C1画素数の方が多い(つまりC1画素数=2、C2画素数=1)ときには、注目色C1の線が存在しているものと判定し、S107においてC1太線(L字)に分類する。また、C2画素数の方が多い(つまりC2画素数=2、C1画素数=1)ときには、注目色C2の線が存在しているものと判定し、S108においてC2太線(逆L字)に分類する。C1太線、C2太線に分類された場合には、S109に処理を進める。S109の処理は後述する。
S104においてC1画素数とC2画素数が等しい(つまりC2画素数=2、C1画素数=2)のときには、更にS105、S106に進んで判定処理を行う。S105では、2×2ブロックを中央に含む4×4画素のブロックのC1画素数とC2画素数を計数する。そしてS106において、C1画素数とC2画素数をそれぞれの所定値と比較する。ここではそれぞれの所定値の具体例として、いずれも6として示している。すなわち、C1画素数≦6か否か、および、C2画素数≦6か否かを判定する。C1画素数≦6ならば注目色C1の線が存在しているものと判定し、S107においてC1太線(L字)に分類する。また、S106においてC2画素数≦6ならば注目色C2の線が存在しているものと判定し、S108においてC2太線(逆L字)に分類する。C1太線、C2太線に分類された場合には、S109に処理を進める。もちろん所定数は6に限られるものではない。
S106でC1太線またはC2太線のいずれにも分類されなかった場合には、画質を改善するための処理を行わずに、当該ブロックの処理を終了してS111へ進み、次のブロックの処理に移る。
S103でC1太線、C2太線に分類された場合、及びS107でC1太線、S108でC2太線に分類された場合には、S109でそれぞれC1太線用またはC2太線用の方法を用いて、原画像でのドットの方向(水平or垂直)を概算し、更に接続長から角度を精算する。更にS110において、S109で求めたドットの方向及び角度に基づいて、2倍拡大された原画像の相当位置に、精算角度から求められるエッジの面積占有率に従って画素を出力する。
全ての2×2ブロックを抽出し、処理対象としたか否かをS111で判定し、未処理の2×2ブロックが残っている場合には、当該未処理の2×2ブロックを処理対象とすべく、S101へ戻る。全ての2×2ブロックについて処理を終えたら、画像処理部3における処理を終了する。
以下、図2におけるS109、S110の処理について詳細に説明してゆく。図6、図7は、画像処理部3における画質改善部14の処理の一例を示すフローチャートである。この処理は、図2のS109及びS110に対応している。まずS121において、2×2ブロックがC1太線に分類されたのか、あるいはC2太線に分類されたのかを判定する。例えば図2のS103及びS107で2×2ブロックがC1太線であると判定された場合には、S122へ進む。また、例えば図2のS103及びS108で2×2ブロックがC2太線であると判定された場合には、図7のS141へ進む。
2×2ブロックがC1太線に分類された場合には、S122において、C1太線のエッジが水平方向へ延びるものか、あるいは垂直方向へ延びるものかを、角度概算部21で概算して判定する。水平方向ならばS123に進み左右の接続長を計数し、垂直方向ならばS129に進み上下の接続長を計数する。
図8は、画像処理部3におけるC1太線に分類された2×2ブロックの接続方向(概算角度)および接続長(精算角度)の抽出処理の一例を示すフローチャート、図9は、C1太線に分類された2×2ブロックに対する角度概算処理の一例を示す図、図10は、同じく接続方向及び接続長の抽出と画素補正処理の具体例の説明図である。図7におけるS122、S123、S129の処理を図8に示している。
まず、図7のS122においてC1太線のエッジが水平方向へ延びるものか、あるいは垂直方向へ延びるものかを判定する際には、図9(A)にハッチングを施して示した画素と2×2ブロックを含む3×3画素サイズのブロックの画素値を参照する。そして、図8のS161およびS170において、ドットの接続方向(水平方向または垂直方向)を判定する。これは当該エッジの角度を概算する処理である。例えば図9(D)に示すように、2×2ブロックの上にある2つの画素(図9(D)ではr1 、r2 で示した)と2×2ブロックの右の上側にある画素(図9(D)ではq1 で示した)が共に注目色C2であれば、このエッジは水平方向に延びていると推測することができる。この場合には、S161からS162へ進む。また、2×2ブロックの右側にある2つの画素(図9(E)ではq1 、q2 で示した)と2×2ブロックの上部の右側にある画素(図9(E)ではr2 で示した)が共に注目色C2であれば、このエッジは垂直方向に延びていると推測することができる。この場合には、S170からS171へ進む。両方とも満たさない場合には、当該2×2ブロックについての処理を終了する。
なお、S161およびS170における判定の処理は、図9(B)に示したように、初めに2×2ブロックの上部の2画素のうちの右側の画素(図9(B)ではr2 で示した)と、右部の2画素のうち上側の画素(図9(B)ではq1 で示した)が共に注目色C2の画素であるか否かを先に調べる。そして、共に注目色C2であった場合に、図9(D)に示すように画素r1 が注目色C2であれば水平方向であると判定し、図9(E)に示すように画素q2 が注目色C2であれば垂直方向であると判定してもよい。また、図8に示すフローチャートでは初めにS161で水平方向か否かを判断し、次にS170で垂直方向か否かを判断しているが、これはその逆でも良い。
次に、例えば、接続方向が水平方向であった場合には、左右それぞれについて、ドットの接続長を算出する。例えば図10(B)に示すように、2×2ブロックの左上にp1 ,p2 ,…を設定する。また、2×2ブロックの右側に上述のq1 ,q2 を含むq3 ,q4 ,…を設定する。図8のS162で変数i=2として初期化し、S163でpi-1 =C2、pi =C1であるか否かを判定し、条件に合致していればS164でiに2を加算してS163へ戻り、左側に隣接する2画素の判定を繰り返す。このようにして、2×2ブロックの左上側に水平方向に連続するpi-1 =C2、pi =C1のペアをiにより計数してゆき、S165でiを1/2にして左接続長とする。
さらに、S166で変数i=2に初期化して、S167でqi-1 =C2、qi =C1であるか否かを判定し、条件に合致していればS168でiに2を加算してS167へ戻り、右側に隣接する2画素の判定を繰り返す。このようにして、2×2ブロックの右側に水平方向に連続するqi-1 =C2、qi =C1のペアをiにより計数してゆき、S169でiを1/2にして右接続長とする。
これによって、左右それぞれの方向の接続長が求められる。その後、図6のS124に進む。なお、図10(B)にはp6 ,q6 までしか示していないが、連続する限り計数してもかまわないし、ある程度で計数を打ち切ってもよい。
同様に、接続方向が垂直方向であった場合には、上下それぞれについて、ドットの接続長を算出する。例えば図10(C)に示すように、2×2ブロックの上部に上述のr1 ,r2 を含むr3 ,r4 ,…を設定する。また、2×2ブロックの右下にs1 ,s2 ,…を設定する。図8のS171で変数i=2として初期化し、S172でri-1 =C1、ri =C2であるか否かを判定し、条件に合致していればS173でiに2を加算してS172へ戻り、上側に隣接する2画素の判定を繰り返す。このようにして、2×2ブロックの上側に垂直方向に連続するri-1 =C1、ri =C2のペアをiにより計数してゆき、S174でiを1/2にして上接続長とする。
さらに、S175で変数i=2として初期化し、S176でsi-1 =C1、si =C2であるか否かを判定し、条件に合致していればS177でiに2を加算してS176へ戻り、右下側に隣接する2画素の判定を繰り返す。このようにして、2×2ブロックの右下側に垂直方向に連続するsi-1 =C1、si =C2のペアをiにより計数してゆき、S178でiを1/2にして下接続長とする。
これによって、上下それぞれの方向の接続長が求められる。その後、図6のS130に進む。なお、図10(C)にはr6 ,s6 までしか示していないが、垂直方向の場合にも、連続する限り計数してもかまわないし、ある程度で計数を打ち切ってもよい。
図6に戻り、S122で接続方向が水平方向であると判定され、S123で接続長を算出した後、S124において、接続方向が45度条件を満たすか否かを判定する。もし、接続方向が45度条件を満たしていれば、S125に進んで角度精算部22によって接続方向の角度を精算する。エッジ方向が45度に近い場合、単純に接続長だけでは45度方向の角度を精度良く得ることができないため、十分な画質改善効果が得られない場合がある。そのため、45度に近い場合にはその角度を精度良く得るための角度精算処理を行う。
図11は、2×2ブロックがC1太線であり接続方向が水平方向の場合の45度方向の角度精算の一例の説明図である。例えば、S124における45度条件の判定としては、接続長が短い場合を抽出すればよく、例えば図11(A)に示す左接続長=2、右接続長=1か、図11(B)に示す左接続長=1、右接続長=2の場合に、接続方向が45度方向であると判定することができる。それ以外の場合には接続方向が45度方向でないと判定し、S126に進む。
S124において接続方向が45度条件を満たす場合には、S125へ進んで、左接続長=2、右接続長=1ならば、図11(C)に粗いハッチングを施して示した右下方向の左右に隣接する2画素のペアを参照してゆき、接続長を算出する。この接続長の算出は、水平方向や垂直方向の接続長の算出方法と同じであるため詳細を省略するが、この例では、左右に並ぶ2画素のペアのうち、左側画素がC1で右側画素がC2であるようなペアが続く長さが接続長となる。同様に、左接続長=1、右接続長=2ならば、図11(D)に粗いハッチングを施して示した左上方向の左右に隣接する2画素のペアを参照してゆき、接続長を算出する。この場合にも、左右に並ぶ2画素のペアのうち、左側画素がC1で右側画素がC2であるようなペアが続く長さが接続長となる。なお、水平方向の場合にはそれぞれ左右、垂直方向の場合にはそれぞれ上下、いずれも2方向の接続長を算出していたが、45度条件を満たした場合には、所定の1方向(この場合は右下、左上のどちらか片側のみ)の接続長を算出するようにする。以上のようにして45度方向の接続長を算出したらS126へ進む。
一方、図6のS122で接続方向が垂直方向であると判定され、S129で接続長を算出した後、S130において、同様に接続方向が45度条件を満たすか否かを判定する。もし、接続方向が45度条件を満たしていれば、S131に進んで角度精算部22によって接続方向の角度を精算する。
図12は、2×2ブロックがC1太線であり接続方向が垂直方向の場合の45度方向の角度精算の一例の説明図である。例えば、S130における45度条件の判定としては、接続長が短い場合を抽出すればよく、例えば図12(A)に示す上接続長=2、下接続長=1か、図12(B)に示す上接続長=1、下接続長=2の場合に、接続方向が45度方向であると判定することができる。それ以外の場合には接続方向が45度方向でないと判定し、S132に進む。
S130において接続方向が45度条件を満たす場合には、S131へ進んで、上接続長=2、下接続長=1ならば、図12(C)に粗いハッチングを施して示した右下方向の上下に隣接する2画素のペアを参照してゆき、この場合には、上下に参照色C2と参照色C1のペアが続く長さから再び接続長を算出する。なお、2画素のペアの参照は、ドットの補正を開始する位置に相当する原画像の2×2ブロック内のペアから数えて2画素目から開始する。同様に、上接続長=1、下接続長=2ならば、図12(D)に粗いハッチングを施して示した左上方向の上下に隣接する2画素のペアを参照してゆき、この場合にも、上下に参照色C2と参照色C1のペアが続く長さから再び接続長を算出する。以上のようにして45度方向の接続長を算出したらS132へ進む。
次に、S126、S132において行う処理について説明する。ここでは、左右方向または上下方向または45度方向の接続長が抽出されているので、それぞれ対応する精算角度に応じて補正画素を出力してゆく。この例ではアンチエイリアス拡大処理による画質改善処理を行うものとしているので、予め2倍に拡大された原画像内に、処理後の値を出力してゆく。接続方向が水平方向の場合には、例えば図10(D)〜(G)に示すように、接続方向である水平方向に対して、2倍原画像中に、接続長に応じた画素値を配分する。例えば、左方向の接続長がkであれば、k個分の長さの画素値を出力する。右方向についても同様に画素の配置を行えばよい。
なお、図10(D)〜(G)に示す例では、左右の接続長が同じであった場合のドット配置の例を図示している。例えば図10(D)は接続長が1の場合を、図10(E)は接続長が2の場合を、図10(F)は接続長が3の場合を、図10(G)は接続長が4の場合を、それぞれ示している。左右の接続長が異なる場合、例えば左方向の接続長が2で右方向の接続長が4の場合には、左方向には図10(E)の左側に配置した2ドット、右方向には図10(G)の右側に配置した4個のドット、計6個のドットを対応位置に配置すればよい。
また、接続方向が垂直方向の場合には、例えば図10(H)〜(K)に示すように、接続方向である垂直方向に対して、2倍原画像中に、接続長に応じた画素値を配分する。例えば、接続長がkであれば、k個分の長さの画素値を出力すればよい。図10(H)〜(K)に示す例では、上下の接続長が同じであった場合のドット配置の例を図示しており、図10(H)は接続長が1の場合を、図10(I)は接続長が2の場合を、図10(J)は接続長が3の場合を、図10(K)は接続長が4の場合を、それぞれ示している。上下の接続長が異なる場合には、それぞれの上方向、下方向の接続長に応じたドットを対応位置に配置すればよい。
また、接続方向が45度方向であった場合についても、水平方向、垂直方向の場合と同様にしてドットの配置を行うことができる。図13は、2×2ブロックがC1太線であり接続方向が水平方向で45度方向と判定された場合の処理の一例の説明図である。S124で45度条件を満たしていて、S125で45度方向の接続長を算出した場合には、S126において、図13に示すように、水平方向に対応した右下方向または左上方向に画素値の配分を行う。
図11(C)(図13(B))で説明したようにS125において右下方向に接続長を計数した場合には、図13(D)〜(G)に示すように画素値の配分を行う。また、図11(D)(図13(C))で説明したようにS125において左上方向に接続長を計数した場合には、図13(H)〜(K)に示すように画素値の配分を行う。
図14は、2×2ブロックがC1太線であり接続方向が垂直方向で45度方向と判定された場合の処理の一例の説明図である。S130で45度条件を満たしていて、S131で45度方向の接続長を算出した場合には、S132において、図14に示すように、垂直方向に対応した右下方向または左上方向に画素値の配分を行う。
図12(C)(図14(B))で説明したようにS131において右下方向に接続長を計数した場合には、図14(D)〜(G)に示すように画素値の配分を行う。また、図12(D)(図14(C))で説明したようにS131において左上方向に接続長を計数した場合には、図14(H)〜(K)に示すように画素値の配分を行う。
それぞれの画素値の配分は、例えば接続長がkであれば、k個分の長さの2ドットペアの画素値を出力することによって行うことができる。なお、配分する画素値の具体的な画素値については、水平方向、垂直方向のいずれの場合についても、45度方向の場合を含めて後述する。上述の例では、便宜的に接続方向が水平方向の場合にS126で処理し、垂直方向の場合にS132で処理するようにしているが、もちろん共通化してもよい。
以上によって、C1太線(C1太線)の場合に関して、S126およびS132における画質改善のための処理が行われた。次に、S127およびS133に進んで、処理した2×2ブロックが図2のS106においてC1太線と判定されたのか、あるいはS104においてC1太線と判定されていたのかを判定する。S104においてC1太線と判定されていた場合(つまり、はじめからC1太線に分類されていた場合)には、処理を終了する。
S106においてC1太線と判定されてC1太線として処理された場合(つまり、はじめは細線に分類され、後にC1太線に分類された場合)であって、1回目の処理であった場合には、図6においてS128およびS134に進んで、注目する2×2ブロックの位置を所定方向に1画素分ずらして、再び処理を行う。
図15は、細線と判定された後にC1太線に分類された場合の2回目のC1太線の処理を行うブロック位置の説明図である。例えば、細線と判定された後にC1太線に分類され、さらに接続方向が水平方向である場合には、図15(A)に示すように、1画素分下にずれた位置の2×2画素をS128で処理対象のブロックとして、再びS123に戻って水平方向のC1太線処理を繰り返す。
S126における処理は、上側がC2、下側がC1のエッジが存在している部分に対して画素の配置を行うものであり、C1太線を想定しているため下部はC1であることを前提として処理を行っている。そのため、例えば図10(D)〜(G)や図13に示したように、2×2ブロックの上側にしか画素の配置を行っていない。しかし、細線の場合には、2×2ブロックについて上側がC2で下側がC1のエッジとともに、上側がC1で下側がC2のエッジも存在することになる。そのため、上側のエッジの処理だけでは下側のエッジに対する画質改善処理が行われなくなってしまう。このような処理の抜けを防止するため、図15(A)に示すように処理対象の2×2ブロックに対して1画素分下にずらした2×2ブロック(内側に矩形を付して示した2×2ブロック)を処理対象とする。この1画素分下にずらした2×2ブロックは、C1太線のパターンについてC1とC2を入れ替えたものであるから、上述のC1太線の処理についてC1とC2を入れ替えた処理を行えばよい。これによって、細線の下側のエッジに関しても画素値の補正を行うことができる。
同様に、例えば細線と判定された後にC1太線に分類され、さらに接続方向が垂直方向である場合には、図15(B)に示すように、1画素分左にずれた位置の2×2画素をS134で処理対象のブロックとして、再びS129に戻って水平方向のC1太線処理を繰り返す。
S132における処理は、右側がC2、左側がC1のエッジが存在している部分に対して画素の配置を行うものであり、C1太線を想定しているため左側部分には太線の内部であるC1の画素が存在していることを前提として処理を行っている。そのため、例えば図10(H)〜(K)や図14に示したように、2×2ブロックの右側にしか画素の配置を行っていない。しかし、細線の場合には、2×2ブロックについて右側がC2で左側がC1のエッジとともに、右側がC1で左側がC2のエッジも存在することになる。そのため、右側のエッジの処理だけでは左側のエッジに対する画質改善処理が行われなくなってしまう。このような処理の抜けを防止するため、図15(B)に示すように処理対象の2×2ブロックに対して1画素分左にずらした2×2ブロック(内側に矩形を付して示した2×2ブロック)を処理対象とする。この1画素分左にずらした2×2ブロックは、C1太線のパターンについてC1とC2を入れ替えたものであるから、上述のC1太線の処理についてC1とC2を入れ替えた処理を行えばよい。これによって、細線の左側のエッジに関しても画素値の補正を行うことができる。
なお、1画素分下または左にずらした2×2ブロックについての処理を終えたら、さらにブロックをずらすことはせず、S127およびS133から処理を終了する。以上によって、最初に市松(細線)と分類された後にC1太線に分類された場合を含めて、C1太線(C1太線)と分類された2×2ブロックに関する全ての処理が終了する。
C2太線に分類された2×2ブロックの処理に関しても、C1太線の場合と同様である。図7のS141において、C2太線のエッジが水平方向へ延びるものか、あるいは垂直方向へ延びるものかを、角度概算部21で概算して判定する。C2太線の場合も上述のC1太線の場合と同様に、例えば、2×2画素の上2画素と左側の上の画素の計3画素がC1であれば水平方向であると判定し、2×2画素の左2画素と上側の左の画素の計3画素がC1であれば垂直方向であると判定すればよい。水平方向ならばS142に進み左右の接続長を計数し、垂直方向ならばS148に進み上下の接続長を計数する。
図16は、C2太線に分類された2×2ブロックに対する角度概算処理の一例を示す図、図17は、画像処理部3におけるC2太線に分類されたブロックの接続方向および接続長の抽出と画質改善処理の具体例の説明図である。上述の水平方向、垂直方向の判定は、C1太線の場合と同様に、図16(B)に示したように、初めに2×2ブロックの上側の左部の画素と、左側の上部の画素が共にC1画素であるか否かを先に調べ、ともにC1であった場合に、図16(D)、(E)に示すように上側の右の画素がC1か否か、あるいは左側の下の画素がC1か否かを判定することによって、水平方向か垂直方向かを判定することができる。そして、水平方向であればS143において図17(B)に粗いハッチングを施して示した2画素ずつについて、垂直方向であればS148において図17(C)に粗いハッチングを施して示した2画素ずつについて、それぞれC2とC1のペアを計数し、それぞれの接続長を求める。
更に、求めたそれぞれの接続長から45度方向の判定を行う。水平方向の場合はS143において45度条件、例えば左接続長=1、右接続長=2または左接続長=2、右接続長=1であるか否かを判定し、45度条件を満たしている場合には45度方向であるとみなす。それ以外の場合には接続方向が45度方向でないと判定し、S145の画質改善処理に進む。
図18は、2×2ブロックがC2太線であり接続方向が水平方向の場合の45度方向の角度精算の一例の説明図である。S143において接続方向が45度条件を満たす場合には、S144へ進んで、図18(A)に示すように左接続長=2、右接続長=1ならば、図18(C)に粗いハッチングを施して示した右上方向の左右に隣接する2画素のペアを参照してゆき、接続長を算出する。この例では、左右に並ぶ2画素のペアのうち、左側画素がC1で右側画素がC2であるようなペアが続く長さが接続長となる。なお、2画素のペアの参照は、ドットの補正を開始する位置に相当する原画像の2×2ブロック内のペアから数えて2画素目から開始する。
同様に、図18(B)に示すように左接続長=1、右接続長=2ならば、図18(D)に粗いハッチングを施して示した左下方向の左右に隣接する2画素のペアを参照してゆき、接続長を算出する。この場合にも、左右に並ぶ2画素のペアのうち、左側画素がC1で右側画素がC2であるようなペアが続く長さが接続長となる。C1太線の場合と同様に、45度条件を満たした場合には、所定の1方向(この場合は右上、左下のどちらか片側のみ)の接続長を算出している。以上のようにして45度方向の接続長を算出したらS145へ進む。
一方、S141で接続方向が垂直方向であると判定され、S148で接続長を算出した後、S149において、同様に接続方向が45度条件を満たすか否かを判定する。もし、接続方向が45度条件を満たしていれば、S150に進んで角度精算部22によって接続方向の角度を精算する。
図19は、2×2ブロックがC2太線であり接続方向が垂直方向の場合の45度方向の角度精算の一例の説明図である。例えば、S149における45度条件の判定としては、接続長が短い場合を抽出すればよく、例えば図19(A)に示す上接続長=2、下接続長=1か、図19(B)に示す上接続長=1、下接続長=2の場合に、接続方向が45度方向であると判定することができる。それ以外の場合には接続方向が45度方向でないと判定し、S151の画質改善処理に進む。
S149において接続方向が45度条件を満たす場合には、S150へ進んで、上接続長=2、下接続長=1ならば、図19(C)に粗いハッチングを施して示した左下方向の上下に隣接する2画素のペアを参照してゆき、この場合には、上下にC1とC2のペアが続く長さから再び接続長を算出する。同様に、上接続長=1、下接続長=2ならば、図19(D)に粗いハッチングを施して示した右上方向の上下に隣接する2画素のペアを参照してゆき、この場合にも、上下にC1とC2のペアが続く長さから再び接続長を算出する。以上のようにして45度方向の接続長を算出したらS151へ進む。
次に、S145、S151において行う処理について説明する。ここでは、左右方向または上下方向または45度方向の接続長が抽出されているので、それぞれ対応する精算角度に応じて補正画素を出力してゆく。ここではアンチエイリアス拡大処理により画質の改善を図るものとしているので、予め2倍に拡大された原画像内に、処理後の値を出力してゆく。接続方向が水平方向の場合には、例えば図17(D)〜(G)に示すように、接続方向である水平方向に対して、2倍原画像中に、接続長に応じた画素値を配分する。また、接続方向が垂直方向の場合には、例えば図17(H)〜(K)に示すように、接続方向である垂直方向に対して、2倍原画像中に、接続長に応じた画素値を配分する。
また、接続方向が45度方向であった場合についても同様にしてドットの配置を行うことができる。図20は、2×2ブロックがC2太線であり接続方向が水平方向で45度方向と判定された場合の処理の一例の説明図、図21は、2×2ブロックがC2太線であり接続方向が垂直方向で45度方向と判定された場合の処理の一例の説明図である。S143で45度条件を満たしていて、S144で図20(B)に示すように右上方向に45度方向の接続長を算出した場合には、S145において、図20(D)〜(G)に示すように右上方向に画素値の配分を行う。また、S143で45度条件を満たしていて、S144で図20(C)に示すように左下方向に45度方向の接続長を算出した場合には、S145において、図20(H)〜(K)に示すように左下方向に画素値の配分を行う。
さらに接続方向が垂直方向であり、S149で45度条件を満たしていて、S150で図21(B)に示すように左下方向に45度方向の接続長を算出した場合には、S151において、図21(D)〜(G)に示すように左下方向に画素値の配分を行う。またS149で45度条件を満たしていて、S150で図21(C)に示すように右上方向に45度方向の接続長を算出した場合には、S151において、図21(H)〜(K)に示すように右上方向に画素値の配分を行う。
なお、配分する画素値の具体的な画素値については、水平方向、垂直方向のいずれの場合についても、45度方向の場合を含めて後述する。また、このC2太線の場合にも、上述の例のように便宜的に接続方向が水平方向の場合にS145で処理し、垂直方向の場合にS151で処理するほか、共通化してもよい。
その後S146またはS152において、C2太線のうち、元々は市松(細線)と分類されていた2×2ブロックであり、1回目の処理であったか否かを判定する。初めは市松(細線)に分類された後、C2太線(C2太線)に分類された2×2ブロックについては、S147,S153において注目する2×2ブロックの位置を所定方向に1画素分ずらし、S142,S148へ戻って再び処理を行う。
図22は、細線と判定された後にC2太線に分類された場合の2回目のC2太線の処理を行うブロック位置の説明図である。例えば、細線と判定された後にC2太線に分類され、さらに接続方向が水平方向である場合には、図22(A)に示すように、注目している2×2ブロックに対して1画素分下にずれた位置の2×2画素をS147で処理対象のブロックとして、再びS142に戻って水平方向のC2太線の処理を繰り返す。また、例えば細線と判定された後にC2太線に分類され、さらに接続方向が垂直方向である場合には、図22(B)に示すように、この場合には1画素分右にずれた位置の2×2画素をS153で処理対象のブロックとし、再びS148に戻って水平方向のC2太線の処理を繰り返す。なお、再度のC2太線の処理は、C2とC1を入れ替えて上述のC2太線の処理を行えばよい。
以上によって、C2太線の場合の処理も終了する。なお、上述したように、図4に示したパターンについてC2とC1を入れ替えたパターンについても、全ての画素関係をC2とC1を入れ替えて上述の細線、C1太線、C2太線の分類によって処理を行えばよい。全てのブロックについて上述の処理を行うことによって、処理結果がメモり部2に格納されるので、処理後の画像(この例ではアンチエイリアス2倍拡大画像)を画像出力部4に出力すればよい。
S126,S132,S145,S151において行う画素配置の具体的な処理方法について説明する。画質改善の処理によって配置する画素値の出力は、図10、図13、図14、図17、図20、図21に示したように、水平方向、垂直方向、45度方向となっている。図23は、水平方向のC1太線に対する精算角度と画素配置の一例の説明図、図24は、水平方向のC1太線に対するエッジ線の面積占有率の説明図である。例えば図23に示すC1太線の2×2パターンについて、水平方向の右へのエッジに関する処理を考えれば、この処理の上下(左右)反転、90度単位回転、C1とC2の画素値の入れ替えの組み合わせで、全ての水平方向、垂直方向の処理を行うことができる。また、後述する図25に示すように、45度右下方向のエッジに関する処理を考えれば、やはりこの処理の上下(左右)反転、90度単位回転、C1とC2の画素値の入れ替えの組み合わせで、全ての45度方向の処理を行うことができる。従って、補正画素値としては、水平方向(片側)、45度方向(片側)を用意すれば、全ての方向の補正において共通化できる。例えばテーブル化しておいて、各方向の処理の際に適切な形で使用することもできる。水平方向、45度方向の補正画素値の計算は、アンチエイリアスにおける、エッジが画素に占める面積占有率の概念に従っている。以下、補正画素の計算方法をそれぞれ説明する。
まず、図23、図24を参照しながら、接続方向が水平方向で、接続長がnであった場合に、新たにn個の画素を対応位置に配置する際の画素値の計算方法を説明する。図23(A)に示した例はC1太線に分類される2×2ブロックの場合を示しており、この場合、2×2ブロックの右方向に上にC2、下にC1の2画素が続けば、水平右方向にエッジが存在する可能性がある。このような場合、上述の方法で接続長を算出して、図23(B)に示すように接続長分だけC1太線の部分にドットを配置する。なお、図23(B)に示す例は接続長が4の場合を示している。
このとき、接続長が2であれば図23(C)に示すエッジが、接続長が3であれば図23(D)に示すエッジが、接続長が4であれば図23(E)に示すエッジが、接続長が5であれば図23(F)に示すエッジが、それぞれ存在すると考える。これらの場合に、接続長からエッジの角度がそれぞれ図23(C)〜(F)に示すように精算されているので、画素を配置した際にこの角度のエッジ線が画素を占める面積占有率を計算すればよい。
配分するn個の画素値は、図24に示すように、1画素の一辺の長さをnとおいて、1画素をn×n単位にみなし、エッジ線の下側の面積を左側から順にA1 ,…,An と置けば、台形の面積を計算して、k=1,…,nに対して、
k =((n−(k−1))+(n−k))・n/2
=(2n−2k+1)・n/2
となる。それぞれの画素値は、画素全体の面積値(=n2 )に対する比として、
P(Ak )=(C2−(2n−2k+1)・n/2)/n2 ×(C2−C1)
=C2−(2n−2k+1)/(2n)×(C2−C1)
として求めることができる。なお、この式はC1太線の場合の値であり、図23においてC2とC1を入れ替えたパターンの場合には、上記の式によって算出される値のC2とC1を入れ替えた値であり、すなわち
P(Ak )=(C1−(2n−2k+1)・n/2)/n2 ×(C1−C2)
=C1−(2n−2k+1)/(2n)×(C1−C2)
となる。
この処理は、注目色C1と注目色C2の間を均等にn等分し、n色の中間色を配する処理である。後述するように、C1、C2がカラーマップのカラーパレット番号を指す場合には、上式にはC1、C2ではなく、C1、C2が指し示すカラーマップの実際の色を代入するものとする。なお、このような場合には、適切な色空間(例えばRGBなど)において、n等分した色を出力するようにする。また、やはり後述するように、アンチエイリアスすることなしに、限定色の原画像から限定色の拡大画像を直接作成する場合に、C1太線なら、
P(Ak )=C1 …(2n−2k+1)/(2n)>0.5のとき
=C2 …(2n−2k+1)/(2n)≦0.5のとき、
C2太線なら、
P(Ak )=C2 …(2n−2k+1)/(2n)>0.5のとき
=C1 …(2n−2k+1)/(2n)≦0.5のとき、
とすればよい。
なお、上述のようにして接続長から2倍拡大画像に対して画質改善のための画素を配置するため、例えば原画像における接続長分の画素の半分までしか画素の配置が行われない。例えば接続長が4であれば、2倍拡大画像では8画素分の接続長に相当するが、配置される画素は4画素である。これは、例えば接続長が4であり、原画像上で4画素進んだ位置で再び段差が存在する場合、その段差に対する画質改善処理で2倍拡大画像における残りの4画素の配置が行われる。これによって、例えば斜めに直線状に連続するエッジについては、平坦部を挟む両側の段差部分から半分ずつ画質改善処理によって画素が配置され、全体として画質の改善を図ることができる。
図25は、45度方向のC1太線に対する画質改善処理による画素配置の一例の説明図、図26は、45度方向のC1太線に対するエッジ線の面積占有率の説明図である。図25、図26を参照しながら、接続方向が45度方向で、接続長がnであった場合に、新たに2n個の画素を対応位置に配置する際の画素値の計算方法を説明する。図25(A)に示した例はC2とC1を置き換えたC1太線パターンの場合を示しており、この場合、左接続長=2、右接続長=1で、2×2ブロックの右下方向に、左右にC2とC1のペア画素が続けば、右下方向にエッジが存在する可能性がある。このような場合も、上述の方法で接続長を算出して、図25(B)に示すように接続長分だけドットを配置する。図25(B)に示す例では、45度方向の接続長が4の場合について示している。
このとき、接続長が2であれば図25(C)に示すエッジが、接続長が3であれば図25(D)に示すエッジが、接続長が4であれば図25(E)に示すエッジが、接続長が5であれば図25(F)に示すエッジが、それぞれ存在すると考えられる。これらの場合も、接続長からエッジの角度がそれぞれ精算されているので、画素を配置した際にこの角度のエッジ線が画素を占める面積占有率を計算すればよい。
配分する2n個の画素値は、図26に示すように、1画素の一辺の長さをn+1とおいて、(n+1)×(n+1)単位とみなし、エッジ線の上側の面積を、2画素ペアの左画素について、左側から順にA1 ,…,An と置き、2画素ペアの右画素について、左側から順にB1 ,…,Bn と置く。それぞれ三角形の面積を計算すると、k=1,…,nに対して、
k =(n−k+1)2 ・(n+1)/2n
k =(n+1)2 −k2 (n+1)/2n
となる。従って、それぞれの濃度値は、画素全体の面積値(=(n+1)2 )に対する比として、
P(Ak )=C2−((n−k+1)2 ・(n+1)/2n)/((n+1)2 )×(C2−C1)
=C2−((n−k+1)2 /2n(n+1))×(C2−C1)
P(Bk )=C2−((n+1)2 −k2 (n+1)/2n)/((n+1)2 )×(C2−C1)
=C2−(1−k2 /2n(n+1))×(C2−C1)
として求めることができる。
なお、上記の式はC2太線の場合の値であり、図25においてC2とC1を置き換えたパターンの場合には、上記の式によって算出される値のC2とC1を置き換えた値であり、すなわち
P(Ak )=C1−((n−k+1)2 /2n(n+1))×(C1−C2)
P(Bk )=C1−(1−k2 /2n(n+1))×(C1−C2)
となる。
この処理も、注目色C1と注目色C2の間を均等にn等分し、n色の中間色を配する処理であり、やはり、C1、C2がカラーマップのカラーパレット番号を指す場合には、上式にはC1、C2ではなく、C1、C2が指し示すカラーマップの実際の色を代入するものとし、適切な色空間(例えばRGBなど)において、n等分した色を出力するようにする。また、アンチエイリアスすることなしに、限定色の原画像から限定色の拡大画像を直接作成する場合には、C1太線なら、
P(Ak )=C1 …((n−k+1)2 /2n(n+1))>0.5のとき
=C2 …((n−k+1)2 /2n(n+1))≦0.5のとき
P(Bk )=C1 …(1−k2 /2n(n+1))>0.5のとき
=C2 …(1−k2 /2n(n+1))≦0.5のとき、
C2太線なら、
P(Ak )=C2 …((n−k+1)2 /2n(n+1))>0.5のとき
=C1 …((n−k+1)2 /2n(n+1))≦0.5のとき
P(Bk )=C2 …(1−k2 /2n(n+1))>0.5のとき
=C1 …(1−k2 /2n(n+1))≦0.5のとき
とすればよい。
上述したように、水平方向(片側)と45度方向(片側)の補正画素値を接続長(精算角度)によってそれぞれテーブル化しておけば、本発明で使用する全ての補正角度はテーブルを引くことにより行うことができる。このとき、C2とC1を置き換えたパターンについてもテーブルを作成しておくとよい。
以下、上述の説明について、いくつかの補足説明を行う。本発明では、「限定色画像は、局所的には有意な2色のみの情報に絞ることが可能である」という仮定を置いて、画像の全ての部分の処理を行っていることが大きな特徴である。実際、各注目ブロックの処理の初めに、注目色C1、C2(C1≠C2)を設定し、その後の処理もC1、C2のみに注目して処理を進めている。そして、常に2色のみに限定して考えることで、各部分で2値画像を処理しているのと同じように処理することができる。
例えば色が画素毎に細かく変化している場合、C1太線、C2太線、細線のいずれにも分類されない場合が生じるが、そのような局所領域については処理を行わず、従って原画像(最近傍法で拡大された画像)がそのまま残ることになる。従って、上述のような仮定を置いて処理を行っても、この仮定に合わない部分について不具合が生じることはほとんどない。むしろ、限定色画像では線画などのように色が大きく異なるエッジ部が多く存在し、それらのエッジに対してアンチエイリアス処理が施され、あるいは拡大画像についてもエッジが滑らかに補間されるため、画像内の大部分で画質の向上を図ることができる。
上述のように本発明では2色のみに限定して考えているので、アンチエイリアス処理を伴わない拡大処理を行う場合、つまり、出力画素値Cの値を、注目画素値C1、C2のうちのどちらか(面積占有率の多い側)にするような場合には、具体的な色を全く考慮する必要がないという利点がある。限定色画像は、カラーマップ付き画像として提供される場合が多いが、この場合には、各画素値には実際の色ではなく、カラーパレット番号が割り当てられている。例えば、256色カラーマップ付き画像には、ヘッダ部分に0〜255のパレット番号が何色を指し示すかというパレットテーブルが付され、画像データ部分には0〜255のパレット番号が与えられ、具体的な色はパレットテーブルを参照するという構造になっている。このようなカラーマップ付き画像に対して、本発明のアンチエイリアスを伴わない拡大処理を行う場合には、入力画像のカラーマップをそのまま出力画像のカラーマップにコピーしておき、拡大処理自体は、カラーマップの内部を参照することなく、画像データを直接処理することで行える。実際、本発明のアンチエイリアスを伴わない拡大処理の場合、色数が増大することもなく、注目したC1、C2のどちらかの色が割り当てられるので、カラーマップの具体的な値は処理に影響を与えない。このように、限定色画像がカラーマップ付き画像として入力された場合、本発明のアンチエイリアスを伴わない拡大処理は、画質、速度の面で非常に有利である。
上述のように、本発明は、限定色画像の各局所領域の有意な情報は2色に限定できるという仮定を利用するものである。従来の技術のうち、2色の情報を抽出するという概念が使用されているものとして、上述した特許文献4が挙げられる。この方法では、拡大処理自体は線形補間法を使っている。そして、拡大後に、最終的に得られる拡大画像におけるエッジ部分の色を、原画像における限定色から得られる中間調の値で置き換えて、色の不具合を解消している。従って、この方式における注目色2色の決定は、画像を拡大する際に利用するというよりも、最終的に色を整える際に使用されているものであって、本発明の意味で有意色2色に限定して画像を拡大しているわけではない。一方、本発明では、限定色の原画像から原画像と同じ限定色の拡大画像を作成する際にも、各2×2ブロックで有意色を2色選択し、この2色に着目してエッジの方向及び長さを抽出して、補間画素としても直接この2色を配置している。つまり、限定色画像の各局所領域の有意な情報は2色に限定できるという仮定をそのまま利用していると言える。
限定色画像の有意情報は局所的には2色に限定できる、という本発明の着眼点を利用すると、本発明の処理を開始する前に、入力された画像が限定色画像か否かを判定する際にも、適切な判定処理を行うことができる。例えば、入力された原画像全体を走査して、全2×2ブロックのうち、2色以下のブロックが9割以上であれば、限定色画像であると判定しても良い。限定色画像の判定の際に、このような処理を行うと、多階調画像から作成された限定色自然画像を対象外とすることができる。多階調画像から作成された限定色自然画像の場合、限定色画像でありながら、性質はむしろ多階調画像に近く、拡大処理も多階調画像用の処理を使うのが好ましいからである。逆に、色数が限定されていないフルカラーの画像であっても、線描画のような限定された色しか使用していない画像では、上述のような判定により限定色画像であると判断し、本発明を適用することが可能である。
次に、細線(市松)に分類された2×2ブロックに関して、C1太線またはC2太線として処理を2回繰り返す理由を説明する。図27は、もともとC1太線と判定された場合と細線(市松)と判定された場合の違いの説明図である。図27(A)、(B)には、もともとC1太線と判定された場合を示している。もともとC1太線と判定された2×2ブロックは、太線の片側(この例では上側)に補正処理が行われる。では、太線のもう一方の側(この例では下側)はどうかというと、図27(A)に示すように、単なるステップエッジのような部分では上側のエッジの処理のみでよいことは明らかであろう。この場合としては、ある領域が塗りつぶされていたり、線幅が非常に広い線分などが該当する。
また、図27(B)に示すように、太線の上側のエッジに対して2×2ブロックaによってC1太線の補正処理が施された後、処理が進んで、太線の反対側(下側)のエッジについては、2×2ブロックbが処理対象となったときに、C2とC1を入れ替えたC1太線として再びC1太線の補正処理が行われる。これは、もっと太線の線幅が太くなったとしても同様である。従って、もともとC1太線、あるいはC2太線として処理された2×2ブロックに関しては、該2×2ブロックのみについて補正処理を行えば問題ない。
次に、図27(C)に示すように、細線(市松)部分をC1太線として処理した場合、2×2ブロックcが処理対象となったときに細線の片側(この例では上側)に補正処理が行われる。では、細線のもう一方の側(この例では下側)はどうかというと、図27(C)を見ると、処理が進んで、2×2ブロックdが処理対象となったときに、パターンとしてはC2とC1を入れ替えたC1太線となる。しかし、図27(C)に「*」で示した画素がC2であるため、C1太線の判定(図9(B)のr2)で処理対象から外され、補正処理が施されないことになってしまう。
そこで、市松の場合にはこの2×2ブロックdについても同時に処理を行わせるように構成している。この処理が、例えば図6,図7におけるS128からS123へ、S134からS129へ、S147からS142へ、S153からS148への処理である。2回目の処理では、図9(B)に示したr2の値のチェックは行わないので、C1太線としての処理が可能である。
もちろん、分類を行う際の判定の条件を弱めて、r2の値のチェックを行わないように構成すれば、図27(C)の2×2ブロックcとdをそれぞれ別々に処理することも可能である。そのため、細線の場合に限って2箇所に処理を行うというのは、必ずしも必須ではない。しかし、太線と違って細線の場合には処理した2×2ブロックから1画素ずれた2×2ブロックに、必ずもう片側のエッジが存在するので、細線と分かった時点で、両側を同時に処理する方が画質の点からも誤りがなく好ましい。
上述の説明において接続長を算出する際の例として、水平、垂直、45度ともそれぞれ6画素分までしか図示していないが、上述のように同様の手順で最大で画像の端まで画素を参照するようにしても良いし、あるいはある程度で打ち切るようにしてもよい。例えば上下左右に16画素程度を参照すると、低角のエッジまで拾うことができ、確実に高画質化することができる。もちろん、これらの周辺の画素を参照する際には、画像の上下左右端などでは走査域が外にはみ出ないように注意する必要がある。また、上下左右に参照する範囲は、固定でなく、パラメータにしておいて画質や速度とのバランスによって選択できるようにしておいてもよい。
さらに、上述の説明では45度方向の接続長の算出の際に、一旦水平もしくは垂直方向の接続長を算出した後に、再度45度方向の接続長を算出している。この処理は、接続長が2または1の場合にのみ行われるので、接続長を2回計算しても、前段の処理が軽いため大きな負荷にはならない。加えて、接続長は、水平ならば左右の両側、垂直ならば上下の両側、それぞれについて算出するが、45度の場合は45度方向のうちの片側のみ算出するだけなので、このことからも負荷はそれほど増加しない。もちろん、初めから水平、垂直、45度を同時に判定するように構成してもよい。この場合、角度概算処理の際の参照画素は増加する。
上述の処理では、既に処理された画素が再び画質改善処理対象となる場合がある。例えば細線(市松)の処理を行った場合、上述したように1ライン先にあるブロックも同時に処理される場合があるので、次のラインを処理した際に一部の画素の処理が重複する場合がある。このような場合は、先に処理された結果を優先するようにしてもよいし、その逆でも良いし、後から処理された結果との平均値を使うようにしても良い。
上述の説明では、アンチエイリアス拡大を行う場合を基本に説明してきた。しかしこれに限らず、拡大を行わないアンチエイリアス処理や拡大処理に対しても適用可能である。図33、図34を用いて説明したように、アンチエイリアス拡大処理の概念は、アンチエイリアス処理や拡大処理の上位概念として位置づけることができる。従って、上述の処理によって作成したアンチエイリアス拡大画像を限定色化すれば拡大画像が得られるし、平均値縮小すればアンチエイリアス画像が得られるが、上述のように限定色を直接配置する方法を用いることによって、より簡易に拡大画像を得ることもできる。なお、以上の説明では、予め最近傍法で拡大した画像のエッジ部分に対して、図34(D)の効果を与える処理を行っている。前述したように、本発明の画質改善処理の一つは拡大処理であるが、このような観点からは高解像度化と言い換えてもよい。
一般に、限定色画像を拡大してプリンタ出力するような場合には、アンチエイリアス処理を行うことなく、このように拡大画像を直接作成する方が好ましい。このようにすることで、入力画像の総色数あるいはビット数と、出力画像の総色数あるいはビット数が一致し、色数の増加に伴う余計なメモリを用意する必要がない。アンチエイリアス処理を行うと適度なぼけ効果が出るので、画面上で拡大画像を視認する場合には好都合であるが、プリンタで出力するような場合には、画質の点からも、単なる色数の増加を伴わない拡大が好ましい。これは、限定色画像では、地図や図面など、画像内に2値的な要素(ある色Cと紙白の部分)が多いためでもある。なお、アンチエイリアス拡大画像を限定色化して拡大画像を得るための方法としては、上述のように、アンチエイリアス拡大画像の各画素を、原画像で使用されている限定色のうち、最も距離の近い限定色に置き換える方法を使うことができる。また、補正画素値の平均値縮小画素値を予めテーブル化しておけば、この値と原画像との重み付け平均によって直接アンチエイリアス画像を作成することもできる。
さらに、上述の説明では画素値を新たに配置する際に、エッジが画素を通過する面積占有率に従って行っている。もちろん配置する画素の個数や濃度の種類は上述の例に限られるものではない。図28は、配置する画質改善のための画素値の別の例の説明図である。例えば図28に示した例では、接続長が5の場合の推定エッジ線を表している。図28(A)は上述した面積占有率によって補正画素値を求めたものであり、配置する画素値は、画素全体に対するハッチングで示した領域の面積比と等しい。
一方、図28(B)にハッチングで示した面積比は、推定されるエッジ線の面積占有率よりも小さく設定した例を示している。この例では、図28(A)の場合に比べてエッジ線が細くなる効果がある。出力機器の特性に応じて、このように面積占有率による補正画素値を基準として、補正画素値を予め一律に補正しておいてもよい。
以上の説明では、各部分の処理を分かりやすくするために、それぞれエッジの方向毎に分けて説明している。しかし、本発明の一つの特徴である、細線部分も太線の処理法で共通化できるという点に加えて、上下(左右)反転、90度単位回転、C1とC2の入れ替えの組み合わせによって、更により多くの部分を共通化できる。つまり、ブロックの参照開始の位置や書き込み開始の位置、細線(市松)の場合における2回目の処理位置、などの情報を管理しておけば、処理自体の構造は非常にシンプルなものとなる。特に上述の例の場合、細線、C1太線、C2太線の判定を2×2ブロックで行い、概算角度の判定を3×3ブロック内で行っているため、無駄な参照画素が少なく、高速でもある。また、このようにブロックを小さく取るということは、判定漏れを防ぐことにもつながり、確実に高画質化を実現することができる。
上述のようにして作成されたアンチエイリアス拡大画像は、2倍拡大画像にアンチエイリアスが掛かった状態の画像であり、単に2倍拡大とアンチエイリアス(アンチエイリアス拡大)を同時に行うというだけではなく、アンチエイリアスを掛けた際の情報喪失を2倍拡大によって抑えてもいる。つまり、画像の情報が適切に保たれ、かつ高画質化されているので、この後段で更に拡縮する際にもより好都合となっている。
さらに、限定色画像の任意倍の高画質拡大に本発明を適用することができる。本発明の方法を利用して高画質な任意倍拡大画像を作成する方法としては、いくつかの方法がある。図29は、任意倍拡大処理の一例を示すフローチャートである。図29に示す方法では、まずS181において、与えられた拡大倍率(qx、qy)に対して(qx:横方向倍率、qy:縦方向倍率)、(qx+qy)/2>2n を満たす最大の整数n>0を選択する。S182において、処理対象の画像となる限定色の入力画像を準備する。最初は原画像を処理対象の画像とする。S183において、上述の方法で処理対象の画像からアンチエイリアス2倍拡大画像を作成する。S184でn回反復したか否かを判定し、n回まではS185でアンチエイリアス拡大画像を限定色化し、S182へ戻って、限定色化したアンチエイリアス拡大画像(これは限定色の拡大画像である)を新たな処理対象の画像とする。
このようなアンチエイリアス2倍拡大画像+限定色化の処理を、毎回、処理対象の画像を更新して計n回繰り返す。その後、S186において、残りの倍率分を線形補間法などの所定の方法により拡大して、最後にS187で再び限定色化する。このような処理によって、原画像に対してqx×qy倍拡大された画像を生成することができる。
なお、S186で行う線形補間法はぼけを生じやすい拡大法であるが、本発明の方法で充分高い解像度に変換されたアンチエイリアス拡大画像は、更に2倍未満の線形補間法で拡大しても、線形補間法により発生するぼけの影響は少ない。このようにして作成された画像は、限定色の原画像に対してアンチエイリアス処理が施された拡大画像となっているので、最後に原画像と同じ色によって限定色化すれば、限定色の拡大画像が得られる。
図30は、任意倍拡大処理の別の例を示すフローチャートである。図30に示す方法では、まず図29で説明した処理と同様に、S191において、与えられた拡大倍率(qx、qy)に対して(qx:横方向倍率、qy:縦方向倍率)、(qx+qy)/2>2n を満たす最大の整数n>0を選択し、S192において、処理対象の画像となる限定色の入力画像を準備する。そしてS193において、上述の方法で処理対象の画像から、アンチエイリアス処理を施さないで限定色の2倍拡大画像を作成する。S194でn回反復したか否かを判定し、n回まではS192へ戻って、S193による限定色の2倍拡大画像の作成処理を行う。
このようなアンチエイリアスを伴わない限定色の2倍拡大処理を、毎回、処理対象の画像を更新して計n回繰り返す。その後、S195において、残りの倍率分を最近傍法などの所定の方法により拡大する。このような処理によって、原画像に対してqx×qy倍拡大された画像を生成することができる。
なお、なお、最近傍法はジャギーを生じやすい拡大法であるが、本発明の方法で充分高い解像度に変換された画像は、更に2倍未満の最近傍法で拡大しても、最近傍法の影響から発生するジャギーの影響は少ない。これは特に、プリンタ出力の場合には、限定色画像にはスクリーンによる2値化処理が行われるため、最後の最近傍法の拡大によるジャギーは、スクリーンの網点の構造が与えるジャギーに吸収されてしまう。言い換えると、最後の拡大処理をより高画質な方式に変更しても、スクリーン構造が与えるジャギーが発生する。従って、最後の最近傍法は、プリンタ出力の場合には影響はほとんどないと言える。なお、最近傍法を使う別の理由としては、最近傍法も本発明と同じく、色数を増加させない拡大処理のため、処理に好都合であるからでもある。
図31は、任意倍拡大処理のさらに別の例を示すフローチャートである。図30に示す方法では、S201において処理対象の画像となる限定色の入力画像を準備し、S202において、上述の本発明の方法でアンチエイリアスを伴わない限定色の2倍拡大処理を行う。その後、S203において、残りの倍率を全て最近傍法で拡大する。
この方法の場合、残りの倍率を最近傍法で拡大することによるジャギーの影響がより強くなる。しかし、それでもなお、本発明による2倍拡大処理を初めに行うことの効果が大きく、全ての倍率を最近傍法で拡大する方法と比べて、なお大きな高画質化の効果を発揮できる。この図31に示す方法を使った場合、図29,図30で説明した本発明の2倍拡大を繰り返す方式に比べて更に高速となる。このように、図31に示した方法は、上記の2つの方法よりも高速であり、また従来の方法に比べて充分高画質を達成できるため、有力な方法と言える。
もちろん任意倍拡大の方法は、2倍拡大を使う方法以外に、直接n倍(nは整数)を得る方法を利用することも可能である。これには、エッジ線を推定し、画素をより細かく分割しておいてエッジ線が画素を横切る面積占有率を図23〜図26、図28などで説明したようにして、水平(片側)、45度(片側)に対して求めればよい。一般には、2倍毎に画像を更新して行く方がその都度細かい角度の補正が行われてゆくので、よりジャギーの現れにくい画像を得ることができるが、このような2倍よりも大きな倍率へ直接拡大する方式を組み合わせると、画質を劣化させずにより高速化できる場合がある。
上述の例では、基本的なブロック単位をM=2、N=2として説明したが、もちろんこれ以外のブロック単位でも同様である。つまり、細線、C1太線、C2太線の抽出を行ってから、細線部をC1太線、C2太線のどちらかに分類し、更にはC2太線の処理は対称性を利用してC1太線の処理で共有化して、結局は全ての部分にC1太線用の処理を適用して画質を改善することができる。上述したように、細線は片側だけ見れば太線と同じ形をしているため、太線の片側を適切に補正する処理を構成しておけば、後は細線にも適用することができる。しかし、M=2、N=2というサイズは高速性と高画質性の二つの観点から見て優れているといえる。ブロックサイズが大きくなるに従って、判定が複雑になり処理時間が増えるし、更にブロックサイズが大きいことによって判定で拾えないような抜け漏れも増えてくるからである。本発明における画質改善方式の利点は、細線を太線とみなして、全ての部位に太線としての画質改善を行える処理の簡便性にあるが、M=2、N=2という小さなブロックサイズを用いることによって、更に高速性と高画質性を実現している。
図32は、本発明の画像処理装置の機能または画像処理方法をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体の一例の説明図である。図中、31はプログラム、32はコンピュータ、41は光磁気ディスク、42は光ディスク、43は磁気ディスク、44はメモリ、51は光磁気ディスク装置、52は光ディスク装置、53は磁気ディスク装置である。
上述の本発明の実施の一形態の説明で示した画像処理部3の機能は、コンピュータにより実行可能なプログラム31によっても実現することが可能である。その場合、そのプログラム31およびそのプログラムが用いるデータなどは、コンピュータが読み取り可能な記憶媒体に記憶することも可能である。記憶媒体とは、コンピュータのハードウェア資源に備えられている読取装置に対して、プログラムの記述内容に応じて、磁気、光、電気等のエネルギーの変化状態を引き起こして、それに対応する信号の形式で、読取装置にプログラムの記述内容を伝達できるものである。例えば、光磁気ディスク41,光ディスク42、磁気ディスク43,メモリ44(ICカード、メモリカードなどを含む)等である。もちろんこれらの記憶媒体は、可搬型に限られるものではない。
これらの記憶媒体にプログラム31を格納しておき、例えばコンピュータ32の光磁気ディスク装置51,光ディスク装置52,磁気ディスク装置53,あるいは図示しないメモリスロットにこれらの記憶媒体を装着することによって、コンピュータからプログラム31を読み出し、本発明の画像処理装置の機能または画像処理方法を実行することができる。あるいは、予め記憶媒体をコンピュータ32に装着しておき、例えばネットワークなどを介してプログラム31をコンピュータ32に転送し、記憶媒体にプログラム31を格納して実行させてもよい。あるいは、他のコンピュータにおいて記録媒体に格納されたプログラムを読み出し、コンピュータ32に転送して実行しても良い。
なお、コンピュータ32は、図1に示すメモリ部2、制御部5と一体となってよいし、更に画像入力部1あるいは画像出力部4などと一体となっていてもよい。もちろん、本発明の一部の機能についてハードウェアによって構成することもできるし、あるいは、すべてをハードウェアで構成してもよい。
本発明の第1の実施の形態を含むシステムの一例を示すブロック図である。 本発明の第1の実施の形態における画像処理部3の動作の一例を示すフローチャートである。 ブロック抽出部11で抽出される2×2ブロック画像の一例の説明図である。 2×2ブロックの分類方法の一例の説明図である。 2×2ブロックの上部2×1画素による分類方法の一例の説明図である。 画像処理部3における画質改善部14の処理の一例を示すフローチャートである。 画像処理部3における画質改善部14の処理の一例を示すフローチャート(続き)である。 画像処理部3におけるC1太線に分類された2×2ブロックの接続方向(概算角度)および接続長(精算角度)の抽出処理の一例を示すフローチャートである。 C1太線に分類された2×2ブロックに対する角度概算処理の一例を示す図である。 C1太線に分類された2×2ブロックに対する接続方向及び接続長の抽出と画素補正処理の具体例の説明図である。 2×2ブロックがC1太線であり接続方向が水平方向の場合の45度方向の角度精算の一例の説明図である。 2×2ブロックがC1太線であり接続方向が垂直方向の場合の45度方向の角度精算の一例の説明図である。 2×2ブロックがC1太線であり接続方向が水平方向で45度方向と判定された場合の画質改善処理の一例の説明図である。 2×2ブロックがC1太線であり接続方向が垂直方向で45度方向と判定された場合の画質改善処理の一例の説明図である。 細線と判定された後にC1太線に分類された場合の2回目のC1太線の処理を行うブロック位置の説明図である。 C2太線に分類された2×2ブロックに対する角度概算処理の一例を示す図である。 画像処理部3におけるC2太線に分類されたブロックの接続方向および接続長の抽出と画質改善処理の具体例の説明図である。 2×2ブロックがC2太線であり接続方向が水平方向の場合の45度方向の角度精算の一例の説明図である。 2×2ブロックがC2太線であり接続方向が垂直方向の場合の45度方向の角度精算の一例の説明図である。 2×2ブロックがC2太線であり接続方向が水平方向で45度方向と判定された場合の画質改善処理の一例の説明図である。 2×2ブロックがC2太線であり接続方向が垂直方向で45度方向と判定された場合の画質改善処理の一例の説明図である。 細線と判定された後にC2太線に分類された場合の2回目のC2太線の処理を行うブロック位置の説明図である。 水平方向のC1太線に対する精算角度と画質改善処理による画素配置の一例の説明図である。 水平方向のC1太線に対するエッジ線の面積占有率の説明図である。 45度方向のC1太線に対する画質改善処理による画素配置の一例の説明図である。 45度方向のC1太線に対するエッジ線の面積占有率の説明図である。 もともとC1太線と判定された場合と細線(市松)と判定された場合の違いの説明図である。 配置する画質改善のための画素値の別の例の説明図である。 任意倍拡大処理の一例を示すフローチャートである。 任意倍拡大処理の別の例を示すフローチャートである。 任意倍拡大処理のさらに別の例を示すフローチャートである。 本発明の画像処理装置の機能または画像処理方法をコンピュータプログラムで実現した場合におけるコンピュータプログラム及びそのコンピュータプログラムを格納した記憶媒体の一例の説明図である。 一般的な限定色画像の拡大処理に関わる画質改善処理の一例の説明図である。 画質改善処理と面積占有率の概念の関係の一例の説明図である。
符号の説明
1…画像入力部、2…メモリ部、3…画像処理部、4…画像出力部、5…制御部、11…ブロック抽出部、12…注目色選択部、13…ブロック分類部、14…画質改善部、21…角度概算部、22…角度精算部、23…画素値出力部、31…プログラム、32…コンピュータ、41…光磁気ディスク、42…光ディスク、43…磁気ディスク、44…メモリ、51…光磁気ディスク装置、52…光ディスク装置、53…磁気ディスク装置。

Claims (40)

  1. C色(C≧2)から構成される原画像の拡大処理を行う画像処理装置において、原画像の局所領域毎に2色の注目色C1、C2を選択する注目色選択手段と、前記注目色選択手段で選択された注目色の配置から前記局所領域を分類する分類手段と、該分類手段による分類結果に従って前記注目色C1、C2から拡大後の画素値を決定する処理手段を有することを特徴とする画像処理装置。
  2. C色(C≧2)から構成される原画像の画質改善処理を行う画像処理装置において、原画像の局所領域毎に2色の注目色C1、C2を選択する注目色選択手段と、前記注目色選択手段で選択された注目色の配置から前記局所領域を分類する分類手段と、該分類手段による分類結果に対応した画質改善処理を前記注目色C1、C2をもとに行う処理手段を有することを特徴とする画像処理装置。
  3. 前記処理手段は、原画像に対する画質改善処理として、高解像度化処理またはアンチエイリアス処理またはアンチエイリアス拡大処理を行うことを特徴とする請求項2に記載の画像処理装置。
  4. さらに、原画像を拡大する拡大手段と、該拡大手段により拡大された画像を記憶する記憶手段を有し、前記記憶手段に記憶されている前記拡大された画像を原画像として画質改善することを特徴とする請求項3に記載の画像処理装置。
  5. 前記注目色選択手段は、前記局所領域内の固定位置から常に注目色C1、C2を選択することを特徴とする請求項1ないし請求項4のいずれか1項に記載の画像処理装置。
  6. 前記分類手段は、前記局所領域を細線、第1の太線、第2の太線を含むいずれかに分類することを特徴とする請求項1ないし請求項5のいずれか1項に記載の画像処理装置。
  7. 前記第1の太線はC1色太線であり、前記第2の太線はC2色太線であることを特徴とする請求項6に記載の画像処理装置。
  8. 前記分類手段は、細線に分類された前記局所領域に対して、更に、当該局所領域の周囲の画素値から、前記第1の太線または前記第2の太線あるいはその他のいずれかに分類することを特徴とする請求項6または請求項7に記載の画像処理装置。
  9. 前記分類手段は、細線に分類された前記局所領域について、前記局所領域を含む所定の領域内の画素値におけるC1色画素の総量が所定数以下の場合に前記第1の太線に分類し、C2色画素の総量が所定数以下の場合に前記第2の太線に分類することを特徴とする請求項8に記載の画像処理装置。
  10. さらに、原画像内から所定のM×N画素サイズのブロックを前記局所領域として抽出するブロック抽出手段を有することを特徴とする請求項1ないし請求項9のいずれか1項に記載の画像処理装置。
  11. 前記ブロック抽出手段は、M=2、N=2として2×2画素サイズのブロックを前記局所領域として抽出し、前記注目色選択手段は、2×2画素サイズのブロックの上側の2画素の画素値を注目色C1、C2として選択し、前記分類手段は、注目色C1と注目色C2が互いに隣接する市松パターンを細線、所定の3画素が注目色C1であり1画素が注目色C2であるパターンを第1の太線、所定の3画素が注目色C2であり1画素が注目色C1であるパターンを第2の太線として分類することを特徴とする請求項10に記載の画像処理装置。
  12. 前記処理手段は、前記分類手段で前記第1の太線に分類された前記局所領域について該局所領域あるいはさらに該局所領域の周囲の画素に対して第1の太線用の処理を行い、前記第2の太線に分類された局所領域について該局所領域あるいはさらに該局所領域の周囲の画素に対して第2の太線用の処理を行うことを特徴とする請求項6ないし請求項9のいずれか1項または請求項11に記載の画像処理装置。
  13. 前記第1の太線はC1色太線であり、また前記第2の太線はC2色太線であり、前記処理手段は、注目色C1と注目色C2の関係を相互に入れ替えることにより前記第1の太線用の処理または前記第2の太線用の処理のいずれか一方により前記第1の太線および前記第2の太線に分類された前記局所領域についての処理を行うことを特徴とする請求項12に記載の画像処理装置。
  14. 前記処理手段は、前記分類手段で初めに細線であると分類された後に前記第1の太線または前記第2の太線に分類された前記局所領域に関しては、前記第1の太線用の処理または前記第2の太線用の処理を行った後に、該局所領域から1画素分所定方向にずれた局所領域を対象として、再び処理を繰り返すことを特徴とする請求項8または請求項9に記載の画像処理装置。
  15. 前記処理手段は、前記第1の太線用または前記第2の太線用の処理を行う際に当該太線の方向が垂直方向または水平方向のいずれに属するかを判定する角度概算手段と、前記角度概算手段の判定結果を受けて当該太線の角度を決定する角度精算手段と、前記角度精算手段の結果に応じて画素値を出力する画素値出力手段を有することを特徴とする請求項12または請求項13に記載の画像処理装置。
  16. 前記角度概算手段は、前記局所領域の周囲の画素値から、垂直方向または水平方向のいずれに属するかを判定することを特徴とする請求項15に記載の画像処理装置。
  17. 前記角度精算手段は、前記角度概算手段において判定された水平方向、垂直方向の各場合に応じて、当該方向における所定のパターンの連続性を検出することにより太線の角度を決定することを特徴とする請求項15または請求項16に記載の画像処理装置。
  18. 前記角度精算手段は、前記角度概算手段において判定された水平方向、垂直方向について所定の条件を満たした場合に45度方向であると判定し、当該45度方向における所定のパターンの連続性を検出して太線の角度を決定することを特徴とする請求項15ないし請求項17のいずれか1項に記載の画像処理装置。
  19. 前記角度概算手段は、前記局所領域がM×N画素サイズのブロックであるとき、該M×N画素サイズのブロックを含む所定の(M+1)×(N+1)画素サイズ以下のブロック内の画素値から、当該太線の方向が垂直方向または水平方向のいずれに属するかを判定することを特徴とする請求項15ないし請求項18のいずれか1項に記載の画像処理装置。
  20. C色(C≧2)から構成される原画像の拡大処理を行う画像処理方法において、原画像の局所領域毎に2色の注目色C1、C2を注目色選択手段で選択し、選択された注目色の配置から前記局所領域を分類手段で分類し、該分類結果に従って前記注目色C1、C2から拡大後の画素値を処理手段で決定することを特徴とする画像処理方法。
  21. C色(C≧2)から構成される原画像の画質改善処理を行う画像処理方法において、原画像の局所領域毎に2色の注目色C1、C2を注目色選択手段で選択し、選択された注目色の配置から前記局所領域を分類手段で分類し、該分類結果に対応した画質改善処理を前記注目色C1、C2をもとに処理手段で行うことを特徴とする画像処理方法。
  22. 原画像に対する前記画質改善処理として、高解像度化処理またはアンチエイリアス処理またはアンチエイリアス拡大処理を行うことを特徴とする請求項21に記載の画像処理方法。
  23. さらに、原画像を拡大手段で拡大し、該拡大された画像を記憶手段に記憶させておき、前記記憶手段に記憶されている前記拡大された画像を原画像として画質改善することを特徴とする請求項22に記載の画像処理方法。
  24. 前記注目色C1、C2は、前記局所領域内の固定位置から常に選択することを特徴とする請求項20ないし請求項23のいずれか1項に記載の画像処理方法。
  25. 前記局所領域の分類は、前記局所領域を細線、第1の太線、第2の太線を含むいずれかに分類することを特徴とする請求項20ないし請求項24のいずれか1項に記載の画像処理方法。
  26. 前記第1の太線はC1色太線であり、前記第2の太線はC2色太線であることを特徴とする請求項25に記載の画像処理方法。
  27. 前記局所領域の分類により細線に分類された前記局所領域に対して、更に、当該局所領域の周囲の画素値から、前記第1の太線または前記第2の太線あるいはその他のいずれかに分類することを特徴とする請求項25または請求項26に記載の画像処理方法。
  28. 前記局所領域の分類により細線に分類された前記局所領域について、前記局所領域を含む所定の領域内の画素値におけるC1色画素の総量が所定数以下の場合に前記第1の太線に分類し、C2色画素の総量が所定数以下の場合に前記第2の太線に分類することを特徴とする請求項27に記載の画像処理方法。
  29. 前記局所領域として、原画像内から所定のM×N画素サイズのブロックを抽出することを特徴とする請求項20ないし請求項28のいずれか1項に記載の画像処理方法。
  30. 前記局所領域として、M=2、N=2として2×2画素サイズのブロックを抽出し、該2×2画素サイズのブロックの上側の2画素の画素値を注目色C1、C2として選択し、注目色C1と注目色C2が互いに隣接する市松パターンを細線、所定の3画素が注目色C1であり1画素が注目色C2であるパターンを第1の太線、所定の3画素が注目色C2であり1画素が注目色C1であるパターンを第2の太線として分類することを特徴とする請求項29に記載の画像処理方法。
  31. 前記分類の結果、前記第1の太線に分類された前記局所領域について該局所領域あるいはさらに該局所領域の周囲の画素に対して第1の太線用の処理を行い、前記第2の太線に分類された局所領域について該局所領域あるいはさらに該局所領域の周囲の画素に対して第2の太線用の処理を行うことを特徴とする請求項25ないし請求項28のいずれか1項または請求項30に記載の画像処理方法。
  32. 前記第1の太線はC1色太線であり、また前記第2の太線はC2色太線であり、注目色C1と注目色C2の関係を相互に入れ替えることにより前記第1の太線用の処理または前記第2の太線用の処理のいずれか一方により前記第1の太線および前記第2の太線に分類された前記局所領域についての処理を行うことを特徴とする請求項31に記載の画像処理方法。
  33. 前記局所領域の分類によって、初めに細線であると分類された後に前記第1の太線または前記第2の太線に分類された前記局所領域に関しては、前記第1の太線用の処理または前記第2の太線用の処理を行った後に、該局所領域から1画素分所定方向にずれた局所領域を対象として、再び処理を繰り返すことを特徴とする請求項27または請求項28に記載の画像処理方法。
  34. 前記第1の太線用または前記第2の太線用の処理を行う際に当該太線の方向が垂直方向または水平方向のいずれに属するかを角度概算手段で判定し、該判定結果を受けて当該太線の角度を角度精算手段で決定し、決定された角度に応じて画素値を画素値出力手段で出力することを特徴とする請求項31または請求項32に記載の画像処理方法。
  35. 前記太線の方向が垂直方向または水平方向のいずれに属するかの判定は、前記局所領域の周囲の画素値をもとに行うことを特徴とする請求項34に記載の画像処理方法。
  36. 前記太線の角度の決定は、前記太線の方向が垂直方向または水平方向のいずれに属するかに応じて、当該方向における所定のパターンの連続性を検出することにより行うことを特徴とする請求項34または請求項35に記載の画像処理方法。
  37. さらに、判定された前記太線の方向である水平方向、垂直方向について、所定の条件を満たした場合に45度方向であると判定し、当該45度方向における所定のパターンの連続性を検出して太線の角度を決定することを特徴とする請求項34ないし請求項36のいずれか1項に記載の画像処理方法。
  38. 前記局所領域がM×N画素サイズのブロックであるとき、該M×N画素サイズのブロックを含む所定の(M+1)×(N+1)画素サイズ以下のブロック内の画素値から、当該太線の方向が垂直方向または水平方向のいずれに属するかを判定することを特徴とする請求項34ないし請求項37のいずれか1項に記載の画像処理方法。
  39. C色(C≧2)から構成される原画像に対する画像処理をコンピュータに実行させる画像処理プログラムであって、請求項1ないし請求項19のいずれか1項に記載の画像処理装置の機能または請求項20ないし請求項38のいずれか1項に記載の画像処理方法をコンピュータに実行させることを特徴とする画像処理プログラム。
  40. C色(C≧2)から構成される原画像に対する画像処理をコンピュータに実行させる画像処理プログラムを格納したコンピュータ読取可能な記憶媒体において、請求項1ないし請求項19のいずれか1項に記載の画像処理装置の機能または請求項20ないし請求項38のいずれか1項に記載の画像処理方法をコンピュータに実行させる画像処理プログラムを格納したことを特徴とするコンピュータが読取可能な記憶媒体。
JP2005194051A 2005-07-01 2005-07-01 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体 Expired - Fee Related JP4623290B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005194051A JP4623290B2 (ja) 2005-07-01 2005-07-01 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体
US11/319,162 US8558838B2 (en) 2005-07-01 2005-12-28 Image processing apparatus, image processing method and storage medium storing image processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005194051A JP4623290B2 (ja) 2005-07-01 2005-07-01 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体

Publications (2)

Publication Number Publication Date
JP2007013795A true JP2007013795A (ja) 2007-01-18
JP4623290B2 JP4623290B2 (ja) 2011-02-02

Family

ID=37588918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005194051A Expired - Fee Related JP4623290B2 (ja) 2005-07-01 2005-07-01 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体

Country Status (2)

Country Link
US (1) US8558838B2 (ja)
JP (1) JP4623290B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106651991A (zh) * 2016-09-12 2017-05-10 广州市久邦数码科技有限公司 一种智能贴图实现方法及其系统

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8553046B2 (en) * 2007-11-09 2013-10-08 Vivante Corporation Thin-line detection apparatus and method
EP2457196A4 (en) * 2009-07-21 2013-02-06 Qualcomm Inc METHOD AND SYSTEM FOR DETECTION AND ENHANCEMENT OF VIDEO IMAGES
JP5610923B2 (ja) * 2010-08-24 2014-10-22 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP6541320B2 (ja) * 2014-09-24 2019-07-10 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
US9679216B2 (en) * 2015-05-07 2017-06-13 The United States Of America As Represented By The Secretary Of The Air Force Morphological automatic triangle orientation detection
JP7250574B2 (ja) * 2019-03-11 2023-04-03 キヤノン株式会社 画像形成装置、その制御方法、およびプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10336697A (ja) * 1997-06-04 1998-12-18 Canon Inc 画像処理装置及び方法及び記憶媒体

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3049672B2 (ja) * 1991-12-26 2000-06-05 キヤノン株式会社 画像処理方法及び装置
JPH07334648A (ja) 1994-06-10 1995-12-22 Canon Inc 画像処理方法及びその装置
US6201528B1 (en) * 1994-11-16 2001-03-13 International Business Machines Corporation Anti-aliased inking for pen computers
FI973041A (fi) * 1997-07-18 1999-01-19 Nokia Mobile Phones Ltd Laite ja menetelmä kuvan näyttämiseksi
EP0984397B1 (de) * 1998-08-30 2005-03-02 Gmd - Forschungszentrum Informationstechnik Gmbh Verfahren und Vorrichtung zum Eliminieren unerwünschter Stufungen an Kanten bei Bilddarstellungen im Zeilenraster
US6791569B1 (en) * 1999-07-01 2004-09-14 Microsoft Corporation Antialiasing method using barycentric coordinates applied to lines
US6654017B1 (en) * 2000-04-06 2003-11-25 Sun Microsystems, Inc. Smoothing of line segments on a computer display
JP3552105B2 (ja) * 2000-05-26 2004-08-11 シャープ株式会社 図形表示装置、文字表示装置、表示方法、記録媒体およびプログラム
KR20020008040A (ko) * 2000-07-18 2002-01-29 마츠시타 덴끼 산교 가부시키가이샤 표시 장치, 표시 방법 및 표시 제어 프로그램을 기록한기록 매체
JP2002040985A (ja) * 2000-07-21 2002-02-08 Matsushita Electric Ind Co Ltd 縮小表示方法
JP5031954B2 (ja) * 2001-07-25 2012-09-26 パナソニック株式会社 表示装置、表示方法及び表示制御プログラムを記録した記録媒体
US6927780B2 (en) * 2002-01-14 2005-08-09 Seiko Epson Corporation Fast text/graphics resolution improvement with chain-code table look-up
JP3882651B2 (ja) 2002-03-20 2007-02-21 富士ゼロックス株式会社 画像処理装置およびプログラム
US6985159B2 (en) * 2002-05-08 2006-01-10 Intel Corporation Arrangements for antialiasing coverage computation
JP3855889B2 (ja) * 2002-08-30 2006-12-13 セイコーエプソン株式会社 フォント処理装置、端末装置、表示装置、フォント処理方法およびフォント処理プログラム
JP4340888B2 (ja) 2003-06-23 2009-10-07 富士ゼロックス株式会社 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体
US7164430B2 (en) * 2003-09-25 2007-01-16 Via Technologies, Inc. Anti-aliasing line pixel coverage calculation using programmable shader

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10336697A (ja) * 1997-06-04 1998-12-18 Canon Inc 画像処理装置及び方法及び記憶媒体

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106651991A (zh) * 2016-09-12 2017-05-10 广州市久邦数码科技有限公司 一种智能贴图实现方法及其系统
CN106651991B (zh) * 2016-09-12 2023-10-31 广州久邦世纪科技有限公司 一种智能贴图实现方法及其系统

Also Published As

Publication number Publication date
US20070002080A1 (en) 2007-01-04
US8558838B2 (en) 2013-10-15
JP4623290B2 (ja) 2011-02-02

Similar Documents

Publication Publication Date Title
JP4623290B2 (ja) 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体
US7149355B2 (en) Image processing apparatus, image processing method, image processing program, and computer-readable record medium storing image processing program
JP4568459B2 (ja) 画像処理装置及び記録媒体
JP2002135592A (ja) 画像処理装置及び記録媒体
JPH1173501A (ja) 参照画像作成方法およびパターン検査装置
JP3167120B2 (ja) 画像処理装置及び方法
JP2007166560A (ja) 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体
JP2009278363A (ja) 画像処理装置及び画像処理方法
US7885486B2 (en) Image processing system, method for processing image and computer readable medium
JP2004166007A (ja) 画像処理装置及び画像処理方法、画像処理プログラム、記憶媒体
JP4340888B2 (ja) 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体
JP4126541B2 (ja) 画像処理装置及び画像処理方法、画像処理プログラム、記憶媒体
JP2005275854A (ja) 画像処理装置、画像処理方法、画像処理プログラムおよびこのプログラムを記憶した記録媒体
JPH1084481A (ja) 画像の階調補間方法及び装置、並びに、その処理を実行するためのプログラムを記録した記録媒体
JP2012174159A (ja) 画像処理装置およびその方法
JP3972625B2 (ja) 画像処理装置および画像処理方法
JP4517288B2 (ja) 画像処理装置、画像処理方法及びそのプログラム
CN111626935B (zh) 像素图缩放方法、游戏内容生成方法及装置
JP4506954B2 (ja) 画像処理装置および画像処理方法、画像処理プログラム、記憶媒体
JP4517287B2 (ja) 画像処理装置、画像処理方法及びそのプログラム
JP2006252108A (ja) 画像処理装置、画像処理方法及びそのプログラム
JP2010191931A (ja) 画像処理装置、画像形成装置、コンピュータプログラム、記録媒体及び画像処理方法
JP6703732B2 (ja) 超解像装置、超解像方法、およびプログラム
JP2000149009A (ja) 画像処理装置
JPH09167228A (ja) 画像変換方法及び装置、並びに、それらを利用した画像整形方法及び装置、並びに、それらを利用したシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100510

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101019

R150 Certificate of patent or registration of utility model

Ref document number: 4623290

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees