JP2005301881A - 画像処理装置、プログラムおよび記録媒体 - Google Patents

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

Info

Publication number
JP2005301881A
JP2005301881A JP2004120229A JP2004120229A JP2005301881A JP 2005301881 A JP2005301881 A JP 2005301881A JP 2004120229 A JP2004120229 A JP 2004120229A JP 2004120229 A JP2004120229 A JP 2004120229A JP 2005301881 A JP2005301881 A JP 2005301881A
Authority
JP
Japan
Prior art keywords
image
pixel
reduced image
reduction
reduced
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
JP2004120229A
Other languages
English (en)
Other versions
JP4534564B2 (ja
Inventor
Takashi Nagao
隆 長尾
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 JP2004120229A priority Critical patent/JP4534564B2/ja
Publication of JP2005301881A publication Critical patent/JP2005301881A/ja
Application granted granted Critical
Publication of JP4534564B2 publication Critical patent/JP4534564B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

【課題】 原画像の内容を反映した縮小画像を迅速に得る。
【解決手段】 画像処理装置100は、原画像をa倍した画像を生成するにあたり、2つのステップにより画像の縮小を行う。第1縮小ステップでは画像の倍率をb倍とし、第2縮小ステップでは画像の倍率をc倍とする(ただし、b×c=a、1>a>0)。そして、第1縮小ステップでは原画像の画素を間引きする方法により画像を縮小し、第2縮小ステップでは、第1縮小ステップにより生成された画像の濃度分布を保存する方法により画像を縮小し、最終的に原画像をa倍した画像を生成する。
【選択図】 図2

Description

本発明は、画像を縮小する技術に関する。
2値画像を縮小する方法として、最近傍法や論理和法といった方法が知られている。最近傍法は、縮小した画像と原画像との間で、白画素と黒画素の画素の比が近似するという利点があるが、縮小時に細線が消失したり掠れるという欠点を有している。一方、論理和法は、細線の消失や掠れが生じないという利点を有しているが、黒画素が常に優先されるため白画素が消失しやすくなり、黒潰れが発生するという欠点を有している。
このように、最近傍法や論理和法では、画像を縮小する際、画像の内容によって細線消失や画像潰れといった問題が生じ得るため、例えば、特許文献1〜3に記載されているように、細線の消失や画像潰れが発生するのを防止する技術が考案されている。
特開平6−164897号公報 特開平6−231238号公報 特開平10−108007号公報
さて、図面を作成するためのCAD(Computer Aided Design)ソフトや、文書を作成するためのワープロソフトにおいては、図面や文書全体のレイアウトの確認を行うために、A0やA1などの大きなサイズの図面を縮小して全体を表示したり、文書や静止画などをサムネイル表示するなど、原画像を大きな縮小率で縮小させて表示する機能がある。
このように縮小率が大きな画像においては、画像潰れを防ぎつつ、図面や文書全体のレイアウトを確認できる画像が求められる。
特許文献1〜3に記載されている技術は、細線消失や画像潰れといった問題を防止することを目的としているが、このように縮小率が大きな場合を想定していないため、縮小率が大きな場合に原画像の内容を反映した縮小画像を得ることができない。
このように縮小率が大きな場合に、画像の内容を反映した縮小画像を得る方法として
投影法と呼ばれる画像の縮小方法があるが、投影法は、縮小後の画像の各画素に影響を与える原画素と、各原画素の縮小画像への寄与率を求め、この寄与率に基づいて原画像の各画素値を加重平均することにより縮小画像の画素の画素値を決定するため、縮小率が大きいと、画像の縮小を行う際に演算に時間がかかり、縮小画像を直ぐに表示できないという欠点がある。
本発明は、上述した背景の下になされたものであり、原画像の内容を反映した縮小画像を迅速に得ることを可能とする技術を提供することを目的とする。
上述した課題を解決するために本発明は、原画像をb倍に縮小した第1縮小画像を生成する第1縮小手段と、前記第1縮小手段により生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小手段とを有し(但し、b×c=a、1>a>0)、前記第1縮小手段は、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、前記第2縮小手段は、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第2縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第2縮小画像の画素の画素値とする画像処理装置を提供する。
また本発明は、コンピュータに、原画像をb倍に縮小した第1縮小画像を生成する第1縮小ステップと、前記第1縮小ステップにより生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小ステップとを実行させるプログラムであって(但し、b×c=a、1>a>0)、前記第1縮小ステップでは、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、前記第2縮小ステップでは、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第2縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第2縮小画像の画素の画素値とすることを特徴とするプログラムと、該プログラムを記録したコンピュータ読取り可能な記録媒体を提供する。
この画像処理装置(コンピュータ)は、原画像をa倍した画像を生成するにあたり、2つの縮小手段(ステップ)により画像の縮小を行い、第1縮小手段(ステップ)では画像の倍率をb倍とし、第2縮小手段(ステップ)では画像の倍率をc倍とする(ただし、b×c=a、1>a>0)。そして、第1縮小手段(ステップ)では原画像の画素が間引きされ、第2縮小手段(ステップ)では、第1縮手段(ステップ)により生成された画像の濃度分布が保存される。
また本発明は、原画像を縮小して第1縮小画像を生成する第1縮小手段と、前記第1縮小画像が生成されたことを契機として前記第1縮小画像中の黒画素数を計数し、計数された黒画素数が、前記第1縮小手段により縮小される前の画像から定まる閾値以上であるか否か判断する判断手段と、前記第1縮小手段により生成された第1縮小画像を縮小して第2縮小画像を生成する第2縮小手段とを有し、前記第1縮小手段は、前記第1縮小画像を構成する各画素を縮小前の画像を構成する画素に写像し、縮小前の画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、前記第2縮小手段は、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、前記判断手段の判断結果が肯定的である場合、前記第1縮小画像を前記第1縮小手段により再度縮小し、前記判断手段の判断結果が否定的である場合、前記第2縮小手段により前記第1縮小画像を縮小して第2縮小画像を生成することを特徴とする画像処理装置を提供する。
また本発明は、コンピュータに、原画像を縮小して第1縮小画像を生成する第1縮小ステップと、前記第1縮小画像が生成されたことを契機として前記第1縮小画像中の黒画素数を計数し、計数された黒画素数が、前記第1縮小手段により縮小される前の画像から定まる閾値以上であるか否か判断する判断ステップと、前記第1縮小ステップにより生成された第1縮小画像を縮小して第2縮小画像を生成する第2縮小ステップとを実行させるプログラムであって、前記第1縮小ステップでは、前記第1縮小画像を構成する各画素を縮小前の画像を構成する画素に写像し、縮小前の画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、前記第2縮小ステップでは、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、前記判断ステップでの判断結果が肯定的である場合、前記第1縮小画像を前記第1縮小ステップにより再度縮小し、前記判断ステップでの判断結果が否定的である場合、前記第2縮小ステップにより前記第1縮小画像を縮小して第2縮小画像を生成することを特徴とするプログラムと、該プログラムを記録したコンピュータ読取り可能な記録媒体を提供する。
この画像処理装置(コンピュータ)では、原画像を縮小した画像を生成するにあたり、2つの縮小手段(ステップ)により画像の縮小が行われる。第1縮小手段(ステップ)では、画素が間引きされて縮小される。画像処理装置(コンピュータ)は、この縮小された画像中の黒画素の数を計数し、黒画素の数が、縮小前の画像から定まる閾値以上であるか否か判断する。この判断結果が肯定的である場合、第1縮小手段(ステップ)により縮小された画像が、第1縮小手段(ステップ)により再度縮小され、判断結果が否定的である場合、第1縮小手段(ステップ)により縮小された画像が、縮小前の画像の画素値を保存する方法により縮小される。
また本発明は、原画像をb倍に縮小した第1縮小画像を生成する第1縮小手段と、前記第1縮小手段により生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小手段と、前記第2縮小手段により生成された第2縮小画像をd倍に縮小した第3縮小画像を生成する第3縮小手段とを有し(但し、b×c×d=a、1>a>0)、前記第1縮小手段は、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、前記第2縮小手段は、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、前記第3縮小手段は、前記第3縮小画像を構成する各画素を前記第2縮小画像を構成する画素に写像し、前記第2縮小画像において前記第3縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第3縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第3縮小画像の画素の画素値とする画像処理装置を提供する。
また本発明は、コンピュータに、原画像をb倍に縮小した第1縮小画像を生成する第1縮小ステップと、前記第1縮小ステップにより生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小ステップと、前記第2縮小ステップにより生成された第2縮小画像をd倍に縮小した第3縮小画像を生成する第3縮小ステップとを実行させるプログラムであって(但し、b×c×d=a、1>a>0)、前記第1縮小ステップでは、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、前記第2縮小ステップでは、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、前記第3縮小ステップでは、前記第3縮小画像を構成する各画素を前記第2縮小画像を構成する画素に写像し、前記第2縮小画像において前記第3縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第3縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第3縮小画像の画素の画素値とすることを特徴とするプログラムと、該プログラムを記録したコンピュータ読取り可能な記録媒体を提供する。
この画像処理装置(コンピュータ)は、原画像をa倍した画像を生成するにあたり、3つの縮小手段(ステップ)により画像の縮小を行い、第1縮小手段(ステップ)では画像の倍率をb倍とし、第2縮小手段(ステップ)では画像の倍率をc倍とし、第3縮小手段(ステップ)では画像の倍率をd倍とする(ただし、b×c×d=a、1>a>0)。そして、第1縮小手段(ステップ)では原画像の画素が間引きされ、第2縮小手段(ステップ)では、縮小前の画像の画素値を保存する方法により縮小される。第3縮小手段(ステップ)では、第2縮手段(ステップ)により生成された画像の濃度分布が保存される。
本発明によれば、原画像の内容を反映した縮小画像を迅速に得ることが可能となる。
[A.第1実施形態]
[A−1.構成]
図1は、本発明の実施形態に係わる画像処理装置100のハードウェア構成を示すブロック図である。図1に示したように、画像処理装置100の各部は、バス101に接続されており、このバス101を介して各部間で通信を行う。
U/I(ユーザインターフェース)部106は、キーボードやマウスなどの入力装置を具備しており、具備しているキーボードのキーやマウスのボタンが押下されると、押下されたキーを示す信号を、CPU(Central Processing Unit)102へ供給する。
I/F(インターフェース)部107は、図面を光学的に読取り2値画像を生成するスキャナ装置200と通信を行う際のインターフェースや、液晶ディスプレイ等の表示デバイスを具備したディスプレイ装置300と通信を行う際のインターフェースとして機能する。I/F部107は、CPU102の制御の下、CPU102から供給されたデータや信号をスキャナ装置200やディスプレイ装置300へ供給する一方、スキャナ装置200から供給されたデータや信号をCPU102へ供給する。
記憶部105は、例えばハードディスク装置など、データを永続的に記憶する装置(図示略)を有しており、画像処理装置100の各部を制御するためのデータや、画像を表す画像データなどの各種データを記憶する。また、記憶部105は、画像処理装置100の各部を制御する機能を実現するOS(Operating System)ソフトウェアや、画像データが表す画像の編集機能を実現する画像処理ソフトウェアなど、各種ソフトウェアを記憶している。
ROM(Read Only Memory)103は、IPL(Initial Program Loader)と呼ばれるプログラムを記憶している。CPU102は、図示を省略した電源から電力が供給されると、ROM103からIPLを読み出して実行する。CPU102は、IPLを実行すると、記憶部105からOSソフトウェアを読み出し、RAM(Random Access Memory)104を作業エリアとして起動する。CPU102が、OSソフトウェアを起動すると、U/I部106から供給される信号に応じて各部を制御する機能が画像処理装置100において実現する。
また、OSソフトウェアを起動したCPU102は、画像処理装置100の使用者が、U/I部106を操作し、画像処理ソフトウェアの起動を指示する旨の操作を行うと、U/I部106から供給される信号に基づいて、画像処理装置100の操作者が行った操作を判断し、記憶部105から画像処理ソフトウェアを読出して起動する。CPU102が画像処理ソフトウェアを起動すると、記憶部105に記憶された画像データを読出し、読出した画像データが表す画像を編集したり、ディスプレイ装置300に拡大・縮小表示させる機能が実現する。また、CPU102が画像処理ソフトウェアを起動すると、スキャナ装置200に載置された図面を読取り、読取った図面を示す画像データを記憶部105に記憶させる機能が実現する。このように画像処理装置100は、CPU102がソフトウェアに従って動作し、各種処理・制御を行うという点で、一般的なコンピュータ装置と同様の構成を有していると言える。
[A−2.動作]
次に、本実施形態の動作について説明する。なお、以下の説明においては、OSソフトウェアと画像処理ソフトウェアとがCPU102により既に起動されている場合を想定して動作の説明を行う。また、以下の説明においては、CPU102が、記憶部105に記憶されている画像データを読出してRAM104に格納し、RAM104に格納された画像データに従って、図3に示したように、画像を既にディスプレイ装置300に表示させている場合を想定して動作の説明を行う。また、この画像データにより表される画像は2値画像であり、黒画素の値は「1」、白画素の値は「0」というように、個々の画素の値が1ビットで表されている場合を想定する。
画像処理装置100の使用者(以下、単にユーザと称する)が、U/I部106を操作し、画像の拡大・縮小を行うためのメニュー画面を表示させるべく、図3に例示したメニューバーの「表示」の部分をクリックする旨の操作を行うと、CPU102は、画像の倍率を設定するためのメニュー画面(図4参照)をディスプレイ装置300に表示させる。このメニュー画面を見たユーザが、U/I部106を操作し、図4に例示したメニュー画面のテキストボックスBXに、画像の倍率を入力し、「OK」ボタンをクリックする旨の操作を行うと、CPU102は、入力された倍率を判断する。CPU102は、画像の倍率が「1倍」以下である場合、即ち、画像を縮小する場合には、図2に例示したフローチャートに従い、入力された倍率に応じて画像の縮小処理を行う。
<入力された倍率が「1/8倍>倍率」である場合>
ユーザがU/I部106を操作し、画像の倍率として例えば「1/16」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、まずCPU102は、入力された倍率が1/8倍未満であるか否かを判断する(図2:ステップSA1)。ここで、CPU102は、入力された倍率が1/16であるため、ステップSA1でYESと判断する。CPU102は、ステップSA1でYESと判断すると、拡大・縮小処理を行う前の原画像を、入力された倍率で縮小するにあたり、まず最近傍法により画像を縮小し(第1縮小手段)、次に投影法により画像を縮小する(第2縮小手段)。CPU102は、このように2段階で画像の縮小処理を行うにあたり、第2段階において倍率を1/8倍として縮小処理を行うと、ユーザが入力した倍率の大きさの画像が得られるように、まず第1段階で行う縮小処理の倍率を求める。
入力された倍率が1/16である場合、2段階で画像の縮小処理を行うに際し、第2段階で行う縮小処理の倍率を1/8倍とするためには、第1段階で行う縮小処理の倍率は1/2倍となる。CPU102は、第1段階で行う縮小処理の倍率を1/2倍とし、画像データが表す画像(原画像)を最近傍法により縮小する(ステップSA5)。CPU102は、ステップSA5の処理を終え、1/2倍の大きさに縮小した画像(第1縮小画像)を生成すると、次に、この画像を1/8倍の倍率で投影法により縮小する(ステップSA6)。CPU102は、ステップSA5とステップSA6の処理により、原画像の1/16倍の大きさに縮小した画像(第2縮小画像)を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSA11)。
<入力された倍率が、1/4倍>倍率≧1/8倍である場合>
ユーザが画像の倍率として例えば「1/6」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、まずCPU102は入力された倍率が1/8倍未満であるか否かを判断する(ステップSA1)。ここで、CPU102は、入力された倍率が1/6であるため、ステップSA1でNOと判断する。CPU102は、ステップSA1でNOと判断すると、入力された倍率が1/4倍未満であるか否かを判断する(ステップSA2)。ここで、CPU102は、入力された倍率が1/6であるため、ステップSA2でYESと判断する。CPU102は、ステップSA2でYESと判断すると、拡大・縮小処理を行う前の原画像を、入力された倍率で縮小するにあたり、まず最近傍法により画像を縮小し(第1縮小手段)、次に投影法により画像を縮小する(第2縮小手段)。CPU102は、このように2段階で画像の縮小処理を行うにあたり、第2段階において倍率を1/4倍として縮小処理を行うと、ユーザが入力した倍率の大きさの画像が得られるように、まず第1段階で行う縮小処理の倍率を求める。
入力された倍率が1/6である場合、2段階で画像の縮小処理を行うに際し、第2段階で行う縮小処理の倍率を1/4倍とするためには、第1段階で行う縮小処理の倍率は2/3倍となる。CPU102は、縮小処理の倍率を2/3倍とし、画像データが表す画像(原画像)を最近傍法により縮小する(ステップSA7)。CPU102は、ステップSA7の処理を終え、2/3倍の大きさに縮小した画像(第1縮小画像)を生成すると、次に、この画像を1/4倍の倍率で投影法により縮小する(ステップSA8)。CPU102は、ステップSA7とステップSA8の処理により、原画像の1/6倍の大きさに縮小した画像(第2縮小画像)を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSA11)。
<入力された倍率が、1/2倍>倍率≧1/4倍である場合>
ユーザが画像の倍率として例えば「1/3」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、まずCPU102は入力された倍率が1/8倍未満であるか否かを判断する(ステップSA1)。ここで、CPU102は、入力された倍率が1/3であるため、ステップSA1でNOと判断する。CPU102は、ステップSA1でNOと判断すると、入力された倍率が1/4倍未満であるか否かを判断する(ステップSA2)。ここで、CPU102は、入力された倍率が1/3であるため、ステップSA2でNOと判断する。CPU102は、ステップSA2でNOと判断すると、入力された倍率が1/2倍未満であるか否かを判断する(ステップSA3)。ここで、CPU102は、入力された倍率が1/3であるため、ステップSA3でYESと判断する。CPU102は、ステップSA3でYESと判断すると、拡大・縮小処理を行う前の原画像を、入力された倍率で縮小するにあたり、まず最近傍法により画像を縮小し(第1縮小手段)、次に投影法により画像を縮小する(第2縮小手段)。CPU102は、このように2段階で画像の縮小処理を行うにあたり、第2段階において倍率を1/2倍として縮小処理を行うと、ユーザが入力した倍率の大きさの画像が得られるように、まず第1段階で行う縮小処理の倍率を求める。
入力された倍率が1/3である場合、2段階で画像の縮小処理を行うに際し、第2段階で行う縮小処理の倍率を1/2倍とするためには、第1段階で行う縮小処理の倍率は2/3倍となる。CPU102は、縮小処理の倍率を2/3倍とし、画像データが表す画像(原画像)を最近傍法により縮小する(ステップSA9)。CPU102は、ステップSA9の処理を終え、2/3倍の大きさに縮小した画像(第1縮小画像)を生成すると、次に、この画像を1/2倍の倍率で投影法により縮小する(ステップSA10)。CPU102は、ステップSA9とステップSA10の処理により、原画像の1/3倍の大きさに縮小した画像(第2縮小画像)を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSA11)。
<入力された倍率が、倍率≧1/2倍である場合>
ユーザがU/I部106を操作し、画像の倍率として例えば「3/4」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、入力された倍率が3/4であるため、ステップSA1〜ステップSA2でNOと判断される。CPU102は、ステップSA2でNOと判断すると、入力された倍率が1/2倍未満であるか否かを判断する(ステップSA3)。ここで、CPU102は、入力された倍率が3/4であるため、ステップSA3でNOと判断する。CPU102は、ステップSA3でNOと判断すると、入力された倍率で最近傍法により画像を縮小する(ステップSA4)。CPU102は、ステップSA4の処理により、原画像の3/4倍の大きさに縮小した画像を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSA11)。
縮小する際の倍率が1に近い場合には、最近傍法であっても、細線消失や画像潰れなどが起こる確率が低くなる。本実施形態では、上述したように縮小時の倍率が1倍に近い場合には、最近傍法のみにより画像の縮小を行うので、迅速に縮小後の画像を得ることができる。一方、本実施形態においては、縮小時の倍率が、画素潰れなどが生じる虞がある倍率である場合、まず、最近傍法により画像の縮小が行われる。これにより、画素の間引きが行われ、画像潰れが生じにくくなる。そして、最近傍法により画像の縮小が行われた後、投影法により1/2m倍(mは整数)の倍率で縮小処理が行われる。これにより原画像の濃度分布が保存され、細部の潰れが少ない良好な縮小画像を得ることができる。なお、投影法で縮小処理を行う際には、倍率が1/2m倍となっているため、投影法は平均値法と同じ処理で実施でき、画素の画素値を求める際の演算が効率良く行われ、迅速に縮小された画像を得ることができる。尚、本実施例では倍率を外部から入力するように記載したが、本発明はもちろんこれに限定されるものではない。サムネイル表示のように予め表示サイズが決まっている場合には、記憶部105に格納された画像データのサイズ情報から倍率を計算して、それを元に自動的に処理を行っても良い。
[B.第2実施形態]
次に本発明の第2実施形態について説明する。なお、本実施形態において、画像処理装置100のハードウェア構成は、上述した第1実施形態と同じであるため、ハードウェアの構成については、その説明を省略する。本実施形態においては、画像を縮小する際の処理の流れ、即ち、ソフトウェアに従ってCPU102が行う処理の流れが、第1実施形態と異なる。
本実施形態においては、CPU102は、画像を縮小する際の倍率が「1/4倍>倍率」である場合、最近傍法と、論理和法と、投影法とを用いて画像の縮小処理を行う。また、CPU102は、画像を縮小する際の倍率が「1/2倍>倍率≧1/4倍」である場合には、最近傍法と投影法とにより画像の縮小処理を行い、画像を縮小する際の倍率が「倍率≧1/2」である場合には、投影法により画像の縮小処理を行う。
次に、本実施形態の動作について説明する。なお、ユーザが画像処理装置100のU/I部106を操作してから画像の倍率を設定するためのメニュー画面が表示されるまでの動作は、上述した第1実施形態の動作と同じであるため、その説明を省略する。
<入力された倍率が「1/8倍>倍率」である場合>
ユーザが画像の倍率として例えば「1/16」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、まずCPU102は、入力された倍率が1/8倍未満であるか否かを判断する(図5:ステップSB1)。ここで、CPU102は、入力された倍率が1/16であるため、ステップSB1でYESと判断する。CPU102は、ステップSB1でYESと判断すると、まず最近傍法により画像を縮小し(第1縮小手段)、次に論理和法で画像を縮小した後(第2縮小手段)、投影法により画像を縮小して(第3縮小手段)、入力された倍率の画像を生成する。CPU102は、このように3段階で画像の縮小処理を行うにあたり、論理和法による縮小処理の倍率を1/2倍とし、投影法による縮小処理の倍率を1/4倍とする。ここで、CPU102は、第1段階での縮小処理により生成された画像を1/8倍すると、入力された倍率の画像が得られるようにすべく、まず第1段階で行う縮小処理の倍率を求める。
入力された倍率が1/16である場合、3段階で画像の縮小処理を行うに際し、第2段階で行う縮小処理の倍率を1/2倍とし、第3段階で行う縮小処理の倍率を1/4倍とするためには、第1段階で行う縮小処理の倍率は1/2倍となる。CPU102は、縮小処理の倍率を1/2倍とし、画像データが表す画像(原画像)を、まず最近傍法により縮小する(ステップSB5)。CPU102は、ステップSB5の処理を終え、原画像の1/2倍の大きさに縮小した画像(第1縮小画像)を生成すると、次に、この画像を1/2倍の倍率で論理和法により縮小する(ステップSB6)。CPU102は、ステップSB6の処理を終え、原画像の1/4倍の大きさに縮小した画像(第2縮小画像)を生成すると、次に、この画像を1/4倍の倍率で投影法により縮小する(ステップSB7)。CPU102は、ステップSB5からステップSB7の処理により、元の画像の1/16倍の大きさに縮小した画像(第3縮小画像)を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSB13)。
<入力された倍率が、1/4倍>倍率≧1/8倍である場合>
ユーザが画像の倍率として例えば「1/6」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、まずCPU102は、入力された倍率が1/8倍未満であるか否かを判断する(図5:ステップSB1)。ここで、CPU102は、入力された倍率が1/6であるため、ステップSB1でNOと判断する。CPU102は、ステップSB1でNOと判断すると、入力された倍率が1/4倍未満であるか否かを判断する(ステップSB2)。ここで、CPU102は、入力された倍率が1/6であるため、ステップSB2でYESと判断する。CPU102は、ステップSB2でYESと判断すると、まず最近傍法により画像を縮小し(第1縮小手段)、次に論理和法で画像を縮小した後(第2縮小手段)、投影法により画像を縮小して(第3縮小手段)、入力された倍率の画像を生成する。CPU102は、このように3段階で画像の縮小処理を行うにあたり、論理和法による縮小処理の倍率を1/2倍とし、投影法による縮小処理の倍率を1/2倍とする。ここで、CPU102は、第1段階での縮小処理により生成された画像を1/4倍すると、入力された倍率の画像が得られるようにすべく、まず第1段階で行う縮小処理の倍率を求める。
入力された倍率が1/6である場合、3段階で画像の縮小処理を行うに際し、第2段階で行う縮小処理の倍率を1/2倍とし、第3段階で行う縮小処理の倍率を1/2倍とするためには、第1段階で行う縮小処理の倍率は2/3倍となる。CPU102は、縮小処理の倍率を2/3倍とし、画像データが表す画像(原画像)を、まず最近傍法により縮小する(ステップSB8)。CPU102は、ステップSB8の処理を終え、原画像の2/3倍の大きさに縮小した画像(第1縮小画像)を生成すると、次に、この画像を1/2倍の倍率で論理和法により縮小する(ステップSB9)。CPU102は、ステップSB9の処理を終え、原画像の2/6倍の大きさに縮小した画像(第2縮小画像)を生成すると、次に、この画像を1/2倍の倍率で投影法により縮小する(ステップSB10)。CPU102は、ステップSB8からステップSB10の処理により、原画像の1/6倍の大きさに縮小した画像(第3縮小画像)を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSB13)。
<入力された倍率が、1/2倍>倍率≧1/4倍である場合>
ユーザが画像の倍率として例えば「1/3」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、まずCPU102は入力された倍率が1/8倍未満であるか否かを判断する(ステップSB1)。ここで、CPU102は、入力された倍率が1/3であるため、ステップSB1でNOと判断する。CPU102は、ステップSB1でNOと判断すると、入力された倍率が1/4倍未満であるか否かを判断する(ステップSB2)。ここで、CPU102は、入力された倍率が1/3であるため、ステップSB2でNOと判断する。CPU102は、ステップSB2でNOと判断すると、入力された倍率が1/2倍未満であるか否かを判断する(ステップSB3)。ここで、CPU102は、入力された倍率が1/3であるため、ステップSB3でYESと判断する。CPU102は、ステップSB3でYESと判断すると、まず最近傍法により画像を縮小し、次に投影法により画像を縮小して、入力された倍率の画像を生成する。CPU102は、このように2段階で画像の縮小処理を行うにあたり、第2段階において倍率を1/2倍として縮小処理を行うと、入力された倍率の大きさの画像が得られるように、まず第1段階で行う縮小処理の倍率を求める。
入力された倍率が1/3である場合、2段階で画像の縮小処理を行うに際し、第2段階で行う縮小処理の倍率を1/2倍とするためには、第1段階で行う縮小処理の倍率は2/3倍となる。CPU102は、縮小処理の倍率を2/3倍とし、画像データが表す画像を最近傍法により縮小する(ステップSB11)。CPU102は、ステップSB11の処理を終え、2/3倍の大きさに縮小した画像を生成すると、次に、この画像を1/2倍の倍率で投影法により縮小する(ステップSB12)。CPU102は、ステップSB11とステップSB12の処理により、原画像の1/3倍の大きさに縮小した画像を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSB13)。
<入力された倍率が、倍率≧1/2倍である場合>
ユーザが画像の倍率として例えば「3/4」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、入力された倍率が3/4であるため、ステップSB1とステップSB2でNOと判断される。CPU102は、ステップSB2でNOと判断すると、入力された倍率が1/2倍未満であるか否かを判断する(ステップSB3)。ここで、CPU102は、入力された倍率が3/4であるため、ステップSB3でNOと判断する。CPU102は、ステップSB3でNOと判断すると、入力された倍率で最近傍法により画像を縮小する(ステップSB4)。CPU102は、ステップSB4の処理により、元の画像の3/4倍の大きさに縮小した画像を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSB13)。
縮小する際の倍率が1に近い場合には、投影法であっても縮小処理に時間がかからない。本実施形態では、上述したように縮小時の倍率が1倍に近い場合には、投影法のみにより画像の縮小を行うので、原画像の濃度を保存した良好な画像を得ることができる。一方、本実施形態においては、縮小時の倍率が、画素潰れなどが生じる虞がある倍率である場合、まず、最近傍法により画像の縮小が行われる。これにより、画素の間引きが行われ、画像潰れが生じにくくなる。そして、最近傍法により画像の縮小が行われた後、論理和法により縮小処理が行われる。これにより、縮小された画像において細線や画素の孤立点が保持される。そしてこの後、投影法により1/2m倍(mは整数)の倍率で縮小処理が行われる。これにより原画像の濃度分布が保存され、細部の潰れが少ない良好な縮小画像を得ることができる。なお、投影法で縮小処理を行う際には、倍率が1/2m倍となっているため、画素の画素値を求める際の演算が効率良く行われ、迅速に縮小された画像を得ることができる。
[C.第3実施形態]
次に本発明の第3実施形態について説明する。なお、本実施形態において、画像処理装置100のハードウェア構成は、上述した第1実施形態と同じであるため、ハードウェアの構成については、その説明を省略する。本実施形態においては、画像を縮小する際の処理の流れ、即ち、ソフトウェアに従ってCPU102が行う処理の流れが、第1実施形態と異なる。
本実施形態においては、CPU102は、画像を縮小する際の倍率が「倍率>1/2倍」である場合には、最近傍法により画像の縮小を行う。また、CPU102は、画像を縮小する際の倍率が「1/2倍≧倍率」である場合、まず最近傍法により画像の縮小処理を行う(第1縮小手段)。そして最近傍法により得られた画像中の黒画素の画素数を確認し、画像中における黒画素数に応じて、最近傍法または論理和法のいずれかを用いて画像の縮小処理を行う。
次に、本実施形態の動作について、まず、画像を縮小する際の倍率が「倍率>1/2倍」である場合の動作について説明し、次に、画像を縮小する際の倍率が「1/2倍≧倍率」である場合の動作について説明する。なお、ユーザが画像処理装置100のU/I部106を操作してから画像の倍率を設定するためのメニュー画面が表示されるまでの動作は、上述した第1実施形態の動作と同じであるため、その説明を省略する。
<入力された倍率が「倍率>1/2」である場合>
ユーザがU/I部106を操作し、画像の倍率として例えば「3/4」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、CPU102は、まず、変数nに8を代入すると共に、原画像中の黒画素の画素数Boを計数する(図6:ステップSC1)。次にCPU102は、画像の倍率が1/n倍以上であるか否か判断する(ステップSC2)。ここでn=8であるため、倍率(3/4)>1/8となるので、CPU102はステップSC2でYESと判断する。CPU102は、ステップSC2でYESと判断すると、変数nから1を減算し(ステップSC3)、この後、変数nの値が2以上であるか否かを判断する(ステップSC4)。ここでn=7であるため、CPU102は、ステップSC4でYESと判断すると、ステップSC2へ処理の流れを戻す。
入力された倍率が3/4であるので、CPU102は、変数nの値が0になるまで、ステップSC2からステップSC4の処理を繰り返す。CPU102は、変数nの値が0となり、ステップSC4でNOと判断すると、入力された倍率(3/4倍)で、画像データが表す画像を最近傍法により縮小する(ステップSC5)。CPU102は、ステップSC5の処理により、元の画像の3/4倍の大きさに縮小した画像を生成すると、I/F部107を介してディスプレイ装置300を制御し、この画像をディスプレイ装置300に表示させる(ステップSC14)。
<入力された倍率が「1/2倍≧倍率」である場合>
次に、入力された倍率が「1/2倍≧倍率」である場合の動作について説明する。ユーザがU/I部106を操作し、画像の倍率として例えば「1/16」を入力した後、「OK」ボタンをクリックする旨の操作を行うと、CPU102は、まず、変数nに8を代入する(ステップSC1)。次にCPU102は、画像の倍率が1/n倍以上であるか否か判断する(ステップSC2)。ここでn=8であるため、1/8>倍率(1/16)となるので、CPU102はステップSC2でNOと判断する。
CPU102は、ステップSC2でNOと判断すると、まず、最近傍法により画像を縮小する(ステップSC6)。ここでCPU102は、縮小処理を行うに際し、当該ステップ以降に倍率を1/n倍として縮小処理を行うと、入力された倍率の大きさの画像が得られるように、縮小処理の倍率を求める。ここで、入力された倍率が1/16であり、変数n=8である。1/8倍の縮小により1/16倍の画像が得られるようにするために、CPU102は、ステップSC7における縮小処理の倍率を1/2倍とし、画像の縮小を行う。
CPU102は、ステップSC6で縮小処理を行った後、縮小した画像(第1縮小画像)における黒画素の画素数Bnを計数し(ステップSC7)、次に行う縮小処理を論理和法で行うか否かを判断するために閾値Tbを算出する(ステップSC8)。この閾値Tbは、元の画像における黒画素の画素数をBo、これまでに行われた縮小の倍率をb、画像潰れを抑制するための黒画素の残存率をpとすると、以下の式で表される。
Tb=Bo*b*p・・・(1)
なお、この残存率pは、予め定められた固定の値(例えば0.8)でもよいし、この時点までに行われた縮小処理の倍率に応じて変更するようにしてもよい。
CPU102は、計数された黒画素の数が、求められた閾値Tbの値以上である場合には(ステップSC9:YES)、倍率を1/n倍とし、画像データが表す画像を論理和法により縮小し(ステップSC10)、縮小された画像(第2縮小画像)をディスプレイ装置300に表示させる(ステップSC14)。ここで変数n=8である場合、CPU102は、倍率を1/8倍とし、画像データが表す画像を論理和法により縮小する(第2縮小手段)。
一方、CPU102は、ステップSC9においてNO、即ち、黒画素数が閾値Tbの値未満であると判断すると、変数nの値から1を減算する(ステップSC11)。次にCPU102は、変数nの値が2以上であるか否かを判断する(ステップSC12)。ここで、ステップSC11の処理により変数n=7となっているため、CPU102は、ステップSC12でYESと判断し、ステップSC6へ処理の流れを戻す。
CPU102は、ステップSC6以降の処理を行い、ステップSC9において、黒画素数Bnが、閾値Tbより多いと判断した場合、再度ステップSC11へ処理の流れを移す。CPU102は、ステップSC6からステップSC12の処理を繰り返し、変数nの値が2未満となった場合(ステップSC12:NO)、倍率を1/2倍として論理和法により画像の縮小を行う(ステップSC13)。次にCPU102は、I/F部107を介してディスプレイ装置300を制御し、入力された倍率に縮小された画像(第2縮小画像)を、ディスプレイ装置300に表示させる(ステップSC14)。
以上説明したように本実施形態によれば、縮小する際の倍率が1に近い場合には、最近傍法により画像が縮小されるので、縮小された画像を迅速に得ることができる。一方、縮小時の倍率が、画素潰れが生じる虞がある倍率である場合、画像中の黒画素の数をみながら、画素潰れが生じない程度まで、最近傍法により画像の縮小が行われる。そして、このように、画素の間引きを行って画像潰れが生じないようにした後、論理和法により黒画素を保存しながら画像を縮小するので、画像潰れの少ない良好な画像を得ることができる。また、最近傍法と論理和法のみで画像が縮小されるので、縮小された画像を迅速に得ることができる。
[D.変形例]
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、他の様々な形態で実施可能である。例えば、上述の実施形態を以下のように変形して本発明を実施してもよい。
<変形例1>
上述した実施形態においては、画像の縮小をソフトウェア処理により実現しているが、画像の縮小をハードウェアにより行うようにしてもよい。
第1実施形態において、画像の縮小をハードウェアにより行う場合のブロック図を図7に示す。第1画像処理部110は、CPU102から、画像の倍率を示す示すデータと、画像データとが供給されると、供給された倍率にしたがって、画像データが表す画像の大きさを最近傍法により縮小する。また、第2画像処理部111は、CPU102から、画像の倍率を示す示すデータと、画像データとが供給されると、供給された倍率にしたがって、画像データが表す画像の大きさを、投影法により縮小する。この態様においては、ステップSA4,5,7,9では、第1画像処理部110を用いて画像の縮小が行われ、ステップSA6,8,10においては、第2画像処理部111を用いて画像の縮小が行われる。
また、第2実施形態においても、画像の縮小処理をハードウェアにより行うようにしてもよい。この態様の画像処理装置100のハードウェア構成を図8に示す。第3画像処理部112は、CPU102から、画像の倍率を示す示すデータと、画像データとが供給されると、供給された倍率にしたがって、画像データが表す画像の大きさを論理和法により縮小する。この態様においては、ステップSB5,8,11では、第1画像処理部110を用いて画像の縮小が行われ、ステップSB6,9においては、第3画像処理部112を用いて画像の縮小が行われる。また、ステップSB4,7,10,12においては、第2画像処理部111を用いて画像の縮小が行われる。なお、上述した第1画像処理部110と第3画像処理部112とを用いることにより、第3実施形態においても、画像の縮小処理をハードウェアにより行うことができる。
<変形例2>
上述した実施形態では、本発明に係る画像の縮小機能を実現させるためのソフトウェアを記憶部105に予め記憶させておく場合について説明した。しかしながら、CD−ROM(Compact Disk-Read Only Memory)やフレキシブルディスク、DVD(Digital Versatile Disk)などのコンピュータ装置読み取り可能な記録媒体に上記ソフトウェアを記録させておき、係る記録媒体を用いて上記ソフトウェアを一般的なコンピュータ装置にインストールして本発明に係る画像の縮小機能をそのコンピュータ装置に実現させるようにしてもよい。また、上記ソフトウェアを、LAN(Local Area Network)またはインターネットに接続されたコンピュータ装置に記憶させておき、このコンピュータ装置から上記ソフトウェアをダウンロードしてコンピュータ装置にインストールし、本発明に係る画像の縮小機能をそのコンピュータ装置に実現させるようにしてもよい。
<変形例3>
上述した実施形態において、最近傍法で画像の縮小処理を行っているステップでは、最近傍法に替えて零次ホールド法などの画素の間引きを基本とした方法により画像の縮小処理を行うようにしてもよい。また、上述した実施形態において、投影法により画像の縮小処理を行っているステップでは、縮小前の画像における複数の画素の画素値を参照し、参照した画素値から縮小後の画像の画素値を求める方法であれば、投影法ではなく、例えば線形補間法や3次畳み込み法などの他の方式を用いて画像の縮小処理を行うようにしても良い。また、倍率が1/2の場合には線形補間法を、1/4以下の場合には3次畳み込み法を使うなど、倍率に応じて参照する画素の範囲を変更しても良い。
<変形例4>
上述した第3実施形態においては、最近傍法で縮小した後、画像縮小後の黒画素の数を計数し、黒画素の数が予め求めた閾値未満であれば、論理和法により縮小処理を行うようにしているが、黒画素の数ではなく、白画素の数を計数し、白画素の数に応じて論理和法により縮小処理を行うようにしてもよい。
<変形例5>
上述した第3実施形態において、黒画素の残存率pは、拡大・縮小処理を行う前の原画像中の黒画素の割合Roに応じて残存率pを変更するようにしてもよい。ここで、黒画素の割合Roは、原画像中の黒画素数をBo、原画像の幅をW、原画像の高さをHとすると、以下の式で表される。
Ro=Bo/(W*H)・・・(2)
原画像中の黒画素の割合が高い場合、縮小を行うと画像潰れが発生しやすくなると考えられるので、黒画素の割合Roに応じて、黒画素の残存率pの値を小さくするようにする。
また、予め画像データが表す画像の種類を認識し、画像の種類によって残存率pを異ならせるようにしてもよい。例えば、比較的細線が多い図面などの場合には、残存率pを高めの値(例えばp=0.9)とし、比較的細かい文字が多いオフィス文書や線が稠密な地形図などの場合には残存率pを低めの値(例えばp=0.7)としてもよい。なお、上述した変形例を組み合わせて残存率pを決めるようにしてもよい。
<変形例6>
縮小後の画像の幅をWn、縮小後の画像の高さをHnとした場合、縮小後の画像中の黒画素の割合Rnは以下の式により求められる。
Rn=Bn/(Wn*Hn)・・・(3)
第3実施形態において、ステップSC6で最近傍法により画像を縮小した後、ステップSC9において、縮小後の黒画素の割合Rnを判定し、ステップSC10またはステップSC11に分岐するようにしてもよい。この場合、ステップSC9において、CPU102は、縮小後の黒画素の割合Rnが「Rn≧Ro*p」の関係となっているか否か判定し、判定結果が肯定的であればステップSC11へ処理の流れを移し、判定結果が否定的であればステップSC10へ処理の流れを移す。
<変形例7>
1/2倍や1/4倍、1/8倍というように、倍率を1/2m倍(mは整数)として画像の縮小を行うにあたり、縮小前の画素値と縮小後の画素値との関係を表した変換テーブルを予め記憶しておき、この変換テーブルを用いて、画像の横方向の縮小処理を行うようにしてもよい。
図9は、1/2倍の縮小を論理和法により行う際に用いる変換テーブルの一例である。CPU102は、1/2倍の縮小を論理和法により行う場合、縮小前の画像中の画素値を8ビットずつ抽出する。画素値は2値で表されているので、例えば、LSB(Least Significant Bit)のみが1で他のビットが0である場合、抽出した画素値は「00000001」というように表される。CPU102は、この値と同じ値を変換テーブルにおいて検索し、入力値フィールドにおいて同じ値が格納されているセルを見つけると、このセルに対応付けて出力値フィールドに格納されている値を読出す。例えば、図11(a)に示したように、縮小前の画像から抽出した画素値が「00000001」である場合、変換テーブルから読出される値は「0001」となる。CPU102は、この読出した値を縮小後の画素の画素値とし、画像を形成する。
図10は、1/2倍の縮小を投影法により行う際に用いる変換テーブルの一例である。CPU102は、1/2倍の縮小を投影法により行う場合、縮小前の画像中の画素値を8ビットずつ抽出する。画素値は2値で表されているので、例えば、LSBのみが1で他のビットが0である場合、抽出した画素値は「00000001」というように表される。CPU102は、この値と同じ値を変換テーブルにおいて検索し、入力値フィールド同じ値が格納されているセルを見つけると、このセルに対応付けて出力値フィールドに格納されている値を読出す。例えば、図11(b)に示したように、抽出した値が「00000001」である場合、変換テーブルから読出される値は「0、0、0、128」となる。CPU102は、この読出した値を縮小後の画素の画素値とし、画像を形成する。
なお、画像の縦方向の縮小については、最近傍法の場合には2mのライン毎に2m-1目のラインを抽出すればよく、論理和法の場合には、2mのライン毎に画素の論理和をとればよい。また、投影法の場合には、横方向の縮小により1画素の画素値が多値化された後で2mのライン毎に画素値の平均値を求めればよい。ここで、平均値を求める際の除算は、多値化された画素値を2進数で表し、2進数で表された値をmビット分だけ右方向にシフトさせて計算するようにしてもよい。
このように、変換テーブルを用いると、縮小後の画素に対応する画素値を一意に素早く求めることができるため、縮小処理にかかる時間を短くすることができる。なお、最近傍法により縮小処理を行う場合にも、上述したように変換テーブルを設けて縮小処理を行うようにしてもよいのは勿論である。また、変換テーブルを用いて画像を縮小させる場合、例えば16ビットなどの8の倍数のビット単位で表される値を入力値フィールドに格納し、8の倍数のビット単位で画素値を抽出して画像の縮小処理を行うようにしてもよいし、8の倍数ではなく任意の整数nの倍数のビット単位で画像の縮小処理を行うようにしてもよい。
<変形例8>
画像を縮小する際に用いる縮小方法の順番は、上述した順番に限定されるものではない。例えば、第1実施形態において、最近傍法と投影法の順番を入れ替え、投影法により1/2m倍の倍率で第1段階の縮小処理を行い、ユーザが入力した倍率の大きさとなるように最近傍法により第2段階の縮小処理を行うようにしてもよい。また、第2実施形態のように3段階で縮小処理を行う場合においても、最近傍法、論理和法、投影法を用いる順番を第2実施形態と異ならせるようにしてもよい。
本発明の実施形態に係る画像処理装置のハードウェア構成を示すブロック図である。 本発明の第1実施形態において、CPU102が行う処理の流れを例示したフローチャートである。 同実施形態においてディスプレイ装置300に表示される画面を例示した図である。 同実施形態においてディスプレイ装置300に表示されるメニュー画面を例示した図である。 本発明の第2実施形態において、CPU102が行う処理の流れを例示したフローチャートである。 本発明の第3実施形態において、CPU102が行う処理の流れを例示したフローチャートである。 本発明の実施形態の変形例に係わる画像処理装置100の構成を示すブロック図である。 本発明の実施形態の変形例に係わる画像処理装置100の構成を示すブロック図である。 本発明の実施形態の変形例において用いられる変換テーブルの一例を示す図である。 本発明の実施形態の変形例において用いられる変換テーブルの一例を示す図である。 変換テーブルを用いた縮小処理を説明するための図である。
符号の説明
100・・・画像処理装置、101・・・バス、102・・・CPU、103・・・ROM、104・・・RAM、105・・・記憶部、106・・・U/I部、107・・・I/F部、110・・・第1画像処理部、111・・・第2画像処理部、112・・・第3画像処理部、200・・・スキャナ装置、300・・・ディスプレイ装置。

Claims (18)

  1. 原画像をb倍に縮小した第1縮小画像を生成する第1縮小手段と、
    前記第1縮小手段により生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小手段とを有し(但し、b×c=a、1>a>0)、
    前記第1縮小手段は、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、
    前記第2縮小手段は、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第2縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第2縮小画像の画素の画素値とすること
    を特徴とする画像処理装置。
  2. 前記第2縮小手段は、投影法または平均値法のいずれかを用いて第2縮小画像を生成することを特徴とする請求項1に記載の画像処理装置。
  3. 原画像を縮小して第1縮小画像を生成する第1縮小手段と、
    前記第1縮小画像が生成されたことを契機として前記第1縮小画像中の黒画素数を計数し、計数された黒画素数が、前記第1縮小手段により縮小される前の画像から定まる閾値以上であるか否か判断する判断手段と、
    前記第1縮小手段により生成された第1縮小画像を縮小して第2縮小画像を生成する第2縮小手段と、
    を有し、
    前記第1縮小手段は、前記第1縮小画像を構成する各画素を縮小前の画像を構成する画素に写像し、縮小前の画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、
    前記第2縮小手段は、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、
    前記判断手段の判断結果が肯定的である場合、前記第1縮小画像を前記第1縮小手段により再度縮小し、前記判断手段の判断結果が否定的である場合、前記第2縮小手段により前記第1縮小画像を縮小して第2縮小画像を生成すること
    を特徴とする画像処理装置。
  4. 前記第1縮小手段で行われる画像の縮小の倍率と、前記第2縮小手段で行われる画像の縮小の倍率のうち、少なくとも一方の倍率が1/n(nは、n≧2を満たす整数)であることを特徴とする請求項1または請求項3に記載の画像処理装置。
  5. 前記第2縮小手段で行われる画像の縮小の倍率が1/n(nは、n≧2を満たす整数)であることを特徴とする請求項1または請求項3に記載の画像処理装置。
  6. 前記第1縮小手段で行われる画像の縮小の倍率と、前記第2縮小手段で行われる画像の縮小の倍率のうち、少なくとも一方の倍率が1/2m(mは、m≧1を満たす整数)であることを特徴とする請求項1または請求項3に記載の画像処理装置。
  7. 前記第2縮小手段で行われる画像の縮小の倍率が1/2m(mは、m≧1を満たす整数)であることを特徴とする請求項1または請求項3に記載の画像処理装置。
  8. 原画像をb倍に縮小した第1縮小画像を生成する第1縮小手段と、
    前記第1縮小手段により生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小手段と、
    前記第2縮小手段により生成された第2縮小画像をd倍に縮小した第3縮小画像を生成する第3縮小手段とを有し(但し、b×c×d=a、1>a>0)、
    前記第1縮小手段は、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、
    前記第2縮小手段は、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、
    前記第3縮小手段は、前記第3縮小画像を構成する各画素を前記第2縮小画像を構成する画素に写像し、前記第2縮小画像において前記第3縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第3縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第3縮小画像の画素の画素値とすること
    を特徴とする画像処理装置。
  9. 前記第1縮小手段は、最近傍法または零次ホールド法のいずれかを用いて第1縮小画像を生成することを特徴とする請求項1,3または8のいずれかに記載の画像処理装置。
  10. 前記第3縮小手段は、投影法または平均値法のいずれかを用いて第3縮小画像を生成することを特徴とする請求項8または請求項9に記載の画像処理装置。
  11. 前記第1縮小手段で行われる画像の縮小の倍率と,前記第2縮小手段で行われる画像の縮小の倍率と、前記第3縮小手段で行われる画像の縮小の倍率のうち、少なくともいずれか1つの倍率が1/n(nは、n≧2を満たす整数)であること
    を特徴とする請求項8に記載の画像処理装置。
  12. 前記第3縮小手段で行われる画像の縮小の倍率が1/n(nは、n≧2を満たす整数)であることを特徴とする請求項8に記載の画像処理装置。
  13. 前記第1縮小手段で行われる画像の縮小の倍率と,前記第2縮小手段で行われる画像の縮小の倍率と、前記第3縮小手段で行われる画像の縮小の倍率のうち、少なくともいずれか1つの倍率が1/2m(mは、m≧1を満たす整数)であること
    を特徴とする請求項8に記載の画像処理装置。
  14. 前記第3縮小手段で行われる画像の縮小の倍率が1/2m(mは、m≧1を満たす整数)であることを特徴とする請求項8に記載の画像処理装置。
  15. コンピュータに、
    原画像をb倍に縮小した第1縮小画像を生成する第1縮小ステップと、
    前記第1縮小ステップにより生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小ステップと
    を実行させるプログラムであって(但し、b×c=a、1>a>0)、
    前記第1縮小ステップでは、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、
    前記第2縮小ステップでは、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第2縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第2縮小画像の画素の画素値とすること
    を特徴とするプログラム。
  16. コンピュータに、
    原画像を縮小して第1縮小画像を生成する第1縮小ステップと、
    前記第1縮小画像が生成されたことを契機として前記第1縮小画像中の黒画素数を計数し、計数された黒画素数が、前記第1縮小手段により縮小される前の画像から定まる閾値以上であるか否か判断する判断ステップと、
    前記第1縮小ステップにより生成された第1縮小画像を縮小して第2縮小画像を生成する第2縮小ステップと
    を実行させるプログラムであって、
    前記第1縮小ステップでは、前記第1縮小画像を構成する各画素を縮小前の画像を構成する画素に写像し、縮小前の画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、
    前記第2縮小ステップでは、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、
    前記判断ステップでの判断結果が肯定的である場合、前記第1縮小画像を前記第1縮小ステップにより再度縮小し、前記判断ステップでの判断結果が否定的である場合、前記第2縮小ステップにより前記第1縮小画像を縮小して第2縮小画像を生成すること
    を特徴とするプログラム。
  17. コンピュータに、
    原画像をb倍に縮小した第1縮小画像を生成する第1縮小ステップと、
    前記第1縮小ステップにより生成された第1縮小画像をc倍に縮小した第2縮小画像を生成する第2縮小ステップと、
    前記第2縮小ステップにより生成された第2縮小画像をd倍に縮小した第3縮小画像を生成する第3縮小ステップと
    を実行させるプログラムであって(但し、b×c×d=a、1>a>0)、
    前記第1縮小ステップでは、前記第1縮小画像を構成する各画素を前記原画像を構成する画素に写像し、前記原画像において前記第1縮小画像の画素に対応する位置の画素の画素値を、前記第1縮小画像の画素の画素値とし、
    前記第2縮小ステップでは、前記第2縮小画像を構成する各画素を前記第1縮小画像を構成する画素に写像し、前記第1縮小画像において前記第2縮小画像の画素に対応する位置の周辺の画素の画素値の論理和演算の結果を、前記第2縮小画像の画素の画素値とし、
    前記第3縮小ステップでは、前記第3縮小画像を構成する各画素を前記第2縮小画像を構成する画素に写像し、前記第2縮小画像において前記第3縮小画像の画素に対応する位置の周辺の画素の画素値から、前記第3縮小画像を構成する画素の画素値を求め、この求めた画素値を前記第3縮小画像の画素の画素値とすること
    を特徴とするプログラム。
  18. 請求項15乃至請求項17のいずれかに記載のプログラムを記録したコンピュータ読取り可能な記録媒体。
JP2004120229A 2004-04-15 2004-04-15 画像処理装置およびプログラム Expired - Fee Related JP4534564B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004120229A JP4534564B2 (ja) 2004-04-15 2004-04-15 画像処理装置およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004120229A JP4534564B2 (ja) 2004-04-15 2004-04-15 画像処理装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2005301881A true JP2005301881A (ja) 2005-10-27
JP4534564B2 JP4534564B2 (ja) 2010-09-01

Family

ID=35333297

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004120229A Expired - Fee Related JP4534564B2 (ja) 2004-04-15 2004-04-15 画像処理装置およびプログラム

Country Status (1)

Country Link
JP (1) JP4534564B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8014631B2 (en) 2006-05-18 2011-09-06 Fuji Xerox Co., Ltd. Image processing apparatus, image processing method, and computer readable medium for generating a reduced image
JP2012080255A (ja) * 2010-09-30 2012-04-19 Canon Inc 画像処理装置及びその制御方法
CN102547054A (zh) * 2010-12-13 2012-07-04 富士施乐株式会社 图像处理装置和图像处理方法
US8390875B2 (en) 2008-10-24 2013-03-05 Fuji Xerox Co., Ltd. Image processing apparatus, image forming apparatus, image processing method, and computer readable medium storing program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0950514A (ja) * 1995-08-07 1997-02-18 Sharp Corp 面素密度変換処理方法及びその装置
JPH1011571A (ja) * 1996-06-20 1998-01-16 Mitsubishi Electric Corp 2値画像多値化縮小処理装置
JP2000156779A (ja) * 1998-09-18 2000-06-06 Fuji Photo Film Co Ltd 画像変換方法、画像変換装置及び画像変換の手順を記録した記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0950514A (ja) * 1995-08-07 1997-02-18 Sharp Corp 面素密度変換処理方法及びその装置
JPH1011571A (ja) * 1996-06-20 1998-01-16 Mitsubishi Electric Corp 2値画像多値化縮小処理装置
JP2000156779A (ja) * 1998-09-18 2000-06-06 Fuji Photo Film Co Ltd 画像変換方法、画像変換装置及び画像変換の手順を記録した記録媒体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8014631B2 (en) 2006-05-18 2011-09-06 Fuji Xerox Co., Ltd. Image processing apparatus, image processing method, and computer readable medium for generating a reduced image
US8390875B2 (en) 2008-10-24 2013-03-05 Fuji Xerox Co., Ltd. Image processing apparatus, image forming apparatus, image processing method, and computer readable medium storing program
JP2012080255A (ja) * 2010-09-30 2012-04-19 Canon Inc 画像処理装置及びその制御方法
CN102547054A (zh) * 2010-12-13 2012-07-04 富士施乐株式会社 图像处理装置和图像处理方法
JP2012142913A (ja) * 2010-12-13 2012-07-26 Fuji Xerox Co Ltd 画像処理装置及びプログラム

Also Published As

Publication number Publication date
JP4534564B2 (ja) 2010-09-01

Similar Documents

Publication Publication Date Title
JP4999392B2 (ja) 画像処理装置及びその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4782105B2 (ja) 画像処理装置及び画像処理方法
JP4574467B2 (ja) データ処理装置、データ処理方法およびコンピュータプログラム
JP6453694B2 (ja) 画像合成装置、画像合成方法、画像合成プログラム及び記録媒体
JP2008015698A (ja) 表示システム及び表示方法、並びにプログラム
JP2006094467A (ja) 画像処理装置及び方法及びプログラム及び記憶媒体
JP4534564B2 (ja) 画像処理装置およびプログラム
JP4827659B2 (ja) 画像処理装置、画像処理方法、及びコンピュータプログラム
JP2007201752A (ja) 画像入力プログラム、画像入力装置、画像入力システムおよび画像入力方法
JP2009008945A (ja) 画像信号処理装置、画像信号処理方法およびプログラム
US20110206294A1 (en) Image Processing Apparatus, Image Processing Method, and Program
KR100580184B1 (ko) 1회 스캐닝에 의한 복수 이미지 파일들의 생성방법 및 장치
JP2019121062A (ja) 画像拡大装置
JP2005283694A (ja) 画像変倍処理方法、画像処理装置、プログラム及び記録媒体
JPH0652304A (ja) 画像処理装置及びその方法
JP4365965B2 (ja) 情報処理装置および情報処理方法および記憶媒体
JP2685769B2 (ja) 情報処理装置
JP5735395B2 (ja) 画像処理方法、画像処理装置及び画像処理プログラム
JP3054338B2 (ja) 画像処理装置およびその方法
JPH07107268A (ja) 画像処理装置
EP1091321A2 (en) Apparatus and method for drawing lines on a digital display
JP4617825B2 (ja) データ処理装置およびデータ処理方法、プログラム、並びに記録媒体
JP4666071B2 (ja) 文書編集装置、プログラムおよび記憶媒体
JP4273419B2 (ja) 画像データ変換処理方法及びそのプログラム及びその装置
JPH08289139A (ja) 画像処理装置及び画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100427

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

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

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

Free format text: PAYMENT UNTIL: 20130625

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4534564

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

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees