JP2004221679A - Image processing apparatus, program, and storage medium - Google Patents
Image processing apparatus, program, and storage medium Download PDFInfo
- Publication number
- JP2004221679A JP2004221679A JP2003003546A JP2003003546A JP2004221679A JP 2004221679 A JP2004221679 A JP 2004221679A JP 2003003546 A JP2003003546 A JP 2003003546A JP 2003003546 A JP2003003546 A JP 2003003546A JP 2004221679 A JP2004221679 A JP 2004221679A
- Authority
- JP
- Japan
- Prior art keywords
- additional information
- image
- code stream
- image processing
- image data
- 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
Links
Images
Landscapes
- Editing Of Facsimile Originals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Processing (AREA)
- Character Discrimination (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、画像処理装置、プログラム及び記憶媒体に関する。
【0002】
【従来の技術】
近年、スキャナ、デジタルカメラ、パーソナルコンピュータ、プリンタ、複写機、複合機(MFP)等の画像処理装置の普及に伴い、デジタル画像データをメモリやハードディスク等の記憶装置に保存したり、CD−ROM等の光ディスクに保存したり、さらには、インターネット等を介して伝送したりすることが身近なものになっている。このような画像データは、通常、圧縮されて記憶装置や光ディスク等に保存されることが多い。
【0003】
最近では、様々な技術により簡単に高精細画像を得ることができるが、高精細画像の画像データサイズは大きくなる傾向にあり、高精細画像の取扱いは困難になってきている。こうした高精細画像の取扱いを容易にする画像圧縮伸長アルゴリズムとしては、現在、JPEG(Joint Photographic Experts Group)が最も広く用いられている。また、このJPEGで採用されているDCT(離散コサイン変換)に代わる周波数変換として、近年、DWT(離散ウェーブレット変換)の採用が増加している。その代表例は、2001年に国際標準となったJPEG後継の画像圧縮伸長方式JPEG2000である。
【0004】
このような圧縮された画像データはデジタルデータであるため、インターネット等を介する伝送や記憶装置への保存等を容易にするが、一方で、作成者に無断で改変される可能性が高いものである。これを防ぐため、作成者を特定するための署名情報を付加情報として原画像に埋め込む方法が提案されている(例えば、特許文献1参照)。
【0005】
【特許文献1】
特開2001−42768公報
【0006】
【発明が解決しようとする課題】
しかしながら、特許文献1の技術では、原画像に付加情報として署名情報を埋め込むことはできるが、署名情報は原画像に関する付加情報ではないため、作成者を特定するため以外、例えば画像データ検索等の二次的な利用に署名情報を用いることは難しい。また、原画像に関する付加情報を原画像に埋め込んだ場合でも、その埋め込み位置によっては、付加情報を利用する際の処理時間が長くなる場合がある。
【0007】
また、ユーザは、記憶装置に格納された複数の画像データから文字領域又は写真領域を有する画像データや類似した画像を有する画像データを容易に検索できることを要望している。例えば、従来の技術においては、ユーザが、画像データに基づいて表示装置等に表示された画像や用紙等に印字された画像等を確認することで、文字領域又は写真領域を有する画像データや類似した画像を有する画像データ等を検索する場合が多い。
【0008】
本発明の目的は、画像データの検索や管理、画像データに対する処理等に好適な符号化を実現する画像処理装置、プログラム及び記憶媒体を提供することである。
【0009】
【課題を解決するための手段】
請求項1記載の発明は、原画像を2次元ウェーブレット変換、量子化及び符号化という手順で圧縮してコードストリームを生成する画像処理装置において、前記原画像を複数領域に分割する領域分割手段と、前記領域分割手段により分割された前記複数領域の画像から前記原画像に関連する付加情報を生成する付加情報生成手段と、前記付加情報生成手段により生成された付加情報を前記コードストリームに埋め込む付加情報埋込手段と、を備えることを特徴とする。
【0010】
したがって、原画像に関連する付加情報を生成し、生成した付加情報をコードストリームに埋め込むことによって、原画像の画像データが付加情報を有し、例えば、複数の画像データから必要とする画像データを検索する場合等、付加情報を利用して簡単に検索することが可能となる。すなわち、必要に応じた付加情報を埋め込むことで、画像データの検索や管理、画像データに対する処理等を容易に行うことが可能になる。
【0011】
請求項2記載の発明は、請求項1記載の画像処理装置において、前記付加情報生成手段は、前記複数領域の画像から文字を認識することで前記付加情報として文字認識情報を生成することを特徴とする。
【0012】
したがって、付加情報として文字認識情報を生成することによって、この文字認識情報がコードストリームに埋め込まれ、例えば、複数の画像データから文字領域を有する画像データを検索する場合等、文字認識情報により簡単に検索することが可能となる。すなわち、文字認識情報を利用することで、画像データの検索や管理等を容易に行うことが可能になる。
【0013】
請求項3記載の発明は、請求項1又は2記載の画像処理装置において、前記付加情報生成手段は、前記複数領域の領域属性を識別することで前記付加情報として領域識別情報を生成することを特徴とする。
【0014】
したがって、付加情報として領域識別情報を生成することによって、この領域識別情報がコードストリームに埋め込まれ、例えば、複数の画像データから写真領域を有する画像データを検索する場合等、領域識別情報により簡単に検索することが可能となる。すなわち、領域識別情報を利用することで、画像データの検索や管理等を容易に行うことが可能になる。
【0015】
請求項4記載の発明は、請求項1、2又は3記載の画像処理装置において、前記付加情報生成手段は、前記複数領域の画像の傾きを検出することで前記付加情報として傾き検出情報を生成することを特徴とする。
【0016】
したがって、付加情報として傾き検出情報を生成することによって、この傾き検出情報がコードストリームに埋め込まれ、例えば、画像を表示装置に表示させたり、用紙に印字させたりする場合等、傾き検出情報により簡単に画像の傾きを補正することが可能となる。すなわち、傾き検出情報を利用することで、画像データに対する処理等を容易に行うことが可能になる。
【0017】
請求項5記載の発明は、請求項1ないし4のいずれか一記載の画像処理装置において、前記付加情報埋込手段は、前記コードストリームのメインヘッダに前記付加情報を埋め込むことを特徴とする。
【0018】
したがって、付加情報をコードストリームのメインヘッダに埋め込むことによって、例えば、複数の画像データから必要とする画像データを検索する場合等、メインヘッダを読み取る早い段階でメインヘッダの付加情報を利用して検索することが可能となり、その結果として、処理時間を短縮することが可能となる。
【0019】
請求項6記載の発明は、請求項1ないし4のいずれか一記載の画像処理装置において、前記付加情報埋込手段は、前記コードストリームのタイルパートヘッダに前記付加情報を埋め込むことを特徴とする。
【0020】
したがって、付加情報をコードストリームのタイルパートヘッダに埋め込むことによって、例えば、タイル毎(領域毎)の付加情報が対応するタイルパートヘッダに埋め込まれ、複数の画像データから必要とする画像データを検索する場合等、タイルパートヘッダの付加情報を利用して簡単に検索することが可能となる。
【0021】
請求項7記載の発明は、請求項1ないし4のいずれか一記載の画像処理装置において、前記付加情報埋込手段は、前記コードストリームにおけるレイヤの最下位ビットに前記付加情報を埋め込むことを特徴とする。
【0022】
したがって、付加情報をコードストリームにおけるレイヤの最下位ビットに埋め込むことによって、画像サイズを増加させることなく付加情報を埋め込むことが可能である。
【0023】
請求項8記載の発明は、請求項1ないし7のいずれか一記載の画像処理装置において、原稿から前記原画像を光学的に読み取る読取光学系を備えることを特徴とする。
【0024】
したがって、原稿から原画像を読み取ることが可能になり、その結果として、読み取った原画像に対し画像処理等の様々な処理を実行することが可能になる。
【0025】
請求項9記載の発明は、請求項1ないし8のいずれか一記載の画像処理装置において、圧縮された前記原画像を復号化、逆量子化及び2次元ウェーブレット逆変換という手順で伸長する伸長手段を備えることを特徴とする。
【0026】
したがって、JPEG2000アルゴリズムの伸長手段を用いることで、JPEG2000アルゴリズムで圧縮された画像をJPEG2000の特性を活かして伸長することが可能となり、その結果として、伸長された画像の表示装置等への表示や用紙等への印字等を実行することが可能になる。
【0027】
請求項10記載の発明は、請求項9記載の画像処理装置において、前記伸長手段により伸長された画像を記録材に画像形成するプリンタエンジンを備えることを特徴とする。
【0028】
したがって、伸長された画像を用紙等の記録材に形成することが可能になる。
【0029】
請求項11記載の発明のプログラムは、原画像を2次元ウェーブレット変換、量子化及び符号化という手順で圧縮してコードストリームを生成する画像処理装置が備えるコンピュータに解釈され、前記コンピュータに、原画像を複数領域に分割する領域分割機能と、前記領域分割手段により分割された前記複数領域の画像から前記原画像に関連する付加情報を生成する付加情報生成機能と、前記付加情報生成手段により生成された付加情報を前記コードストリームに埋め込む付加情報埋込機能と、を実行させる。
【0030】
したがって、原画像に関連する付加情報を生成し、生成した付加情報をコードストリームに埋め込むことによって、原画像の画像データが付加情報を有し、例えば、複数の画像データから必要とする画像データを検索する場合等、付加情報を利用して簡単に検索することが可能となる。すなわち、必要に応じた付加情報を埋め込むことで、画像データの検索や管理、画像データに対する処理等を容易に行うことが可能になる。
【0031】
請求項12記載の発明は、請求項11記載のプログラムにおいて、前記付加情報生成機能は、前記複数領域の画像から文字を認識することで前記付加情報として文字認識情報を生成する。
【0032】
したがって、付加情報として文字認識情報を生成することによって、この文字認識情報がコードストリームに埋め込まれ、例えば、複数の画像データから文字領域を有する画像データを検索する場合等、文字認識情報により簡単に検索することが可能となる。すなわち、文字認識情報を利用することで、画像データの検索や管理等を容易に行うことが可能になる。
【0033】
請求項13記載の発明は、請求項11又は12記載のプログラムにおいて、前記付加情報生成機能は、前記複数領域の領域属性を識別することで前記付加情報として領域識別情報を生成する。
【0034】
したがって、付加情報として領域識別情報を生成することによって、この領域識別情報がコードストリームに埋め込まれ、例えば、複数の画像データから写真領域を有する画像データを検索する場合等、領域識別情報により簡単に検索することが可能となる。すなわち、領域識別情報を利用することで、画像データの検索や管理等を容易に行うことが可能になる。
【0035】
請求項14記載の発明は、請求項11、12又は13記載のプログラムにおいて、前記付加情報生成機能は、前記複数領域の画像の傾きを検出することで前記付加情報として傾き検出情報を生成する。
【0036】
したがって、付加情報として傾き検出情報を生成することによって、この傾き検出情報がコードストリームに埋め込まれ、例えば、画像を表示装置に表示させたり、用紙に印字させたりする場合等、傾き検出情報により簡単に画像の傾きを補正することが可能となる。すなわち、傾き検出情報を利用することで、画像データに対する処理等を容易に行うことが可能になる。
【0037】
請求項15記載の発明は、請求項11ないし14のいずれか一記載のプログラムにおいて、前記付加情報埋込機能は、前記コードストリームのメインヘッダに前記付加情報を埋め込む。
【0038】
したがって、付加情報をコードストリームのメインヘッダに埋め込むことによって、例えば、複数の画像データから必要とする画像データを検索する場合等、メインヘッダを読み取る早い段階でメインヘッダの付加情報を利用して検索することが可能となり、その結果として、処理時間を短縮することが可能となる。
【0039】
請求項16記載の発明は、請求項11ないし14のいずれか一記載のプログラムにおいて、前記付加情報埋込機能は、前記コードストリームのタイルパートヘッダに前記付加情報を埋め込む。
【0040】
したがって、付加情報をコードストリームのタイルパートヘッダに埋め込むことによって、例えば、タイル毎(領域毎)の付加情報が対応するタイルパートヘッダに埋め込まれ、複数の画像データから必要とする画像データを検索する場合等、タイルパートヘッダの付加情報を利用して簡単に検索することが可能となる。
【0041】
請求項17記載の発明は、請求項11ないし14のいずれか一記載のプログラムにおいて、前記付加情報埋込機能は、前記コードストリームにおけるレイヤの最下位ビットに前記付加情報を埋め込む。
【0042】
したがって、付加情報をコードストリームにおけるレイヤの最下位ビットに埋め込むことによって、画像サイズを増加させることなく付加情報を埋め込むことが可能である。
【0043】
請求項18記載の発明のコンピュータ読取可能な記憶媒体は、請求項11ないし17のいずれか一記載のプログラムを記憶している。
【0044】
したがって、請求項11ないし17のいずれか一記載の発明と同様な作用を奏する。
【0045】
【発明の実施の形態】
本発明の第一の実施の形態を図1ないし図11に基づいて説明する。
【0046】
本実施の形態は、「JPEG2000アルゴリズム」を利用するものであるが、JPEG2000アルゴリズム自体は各種文献や公報等により周知であるので、詳細は省略し、その概要について説明する。
【0047】
図1はJPEG2000アルゴリズムの概要を説明するための機能ブロック図である。
JPEG2000のアルゴリズムは、色空間変換・逆変換部100、2次元ウェーブレット変換・逆変換部101、量子化・逆量子化部102、エントロピー符号化・復号化部103、タグ処理部104で構成されている。
【0048】
JPEG2000の特徴の一つは、高圧縮領域における画質が良いという長所を持つ2次元離散ウェーブレット変換(DWT:Discrete Wavelet Transform)を用いている点である。また、もう一つの大きな特徴は、最終段に符号形成を行うためのタグ処理部104と呼ばれる機能ブロックが追加されており、符号列データであるコードストリームの生成や解釈が行われる点である。そして、コードストリームによって、JPEG2000は様々な便利な機能を実現できるようになっている。
【0049】
なお、画像の入出力部分には、色空間変換・逆変換部100が用意されることが多い。この色空間変換・逆変換部100は、例えば、原色系のR(赤)/G(緑)/B(青)の各コンポーネントからなるRGB表色系や、補色系のY(黄)/M(マゼンタ)/C(シアン)の各コンポーネントからなるYMC表色系から、YCrCbあるいはYUV表色系への変換又は逆の変換を行う部分である。
【0050】
以下、JPEG2000アルゴリズム、特にウェーブレット変換について説明する。
【0051】
図2はカラー画像である原画像の分割された各コンポーネントの一例を概略的に示す模式図である。カラー画像は、一般に、図2に示すように、原画像の各コンポーネント110が、例えばRGB原色系によって分離される。さらに、画像の各コンポーネント110は、矩形をした領域であるタイル111によって分割される(図2の例では、各コンポーネント110が縦横4×4、合計16個の矩形のタイル111に分割されている)。このような個々のタイル111、例えば、R00,R01,…,R15/G00,G01,…,G15/B00,B01,…,B15は、画像データの圧縮伸長プロセスを実行する際の基本単位となる。従って、画像データの圧縮伸長動作は、コンポーネント110毎に、また、タイル111毎に、独立して行われる。
【0052】
画像データの符号化時には(図1参照)、各コンポーネント110の各タイル111のデータが色空間変換・逆変換部100に入力され、色空間変換を施された後、2次元ウェーブレット変換・逆変換部101で2次元ウェーブレット変換(順変換)が適用されて周波数帯に空間分割される。
【0053】
図3はデコンポジションレベル数が3である場合の各デコンポジションレベルにおけるサブバンドを概略的に示す模式図である。2次元ウェーブレット変換・逆変換部101は、画像のタイル分割によって得られたタイル画像(デコンポジションレベル0(120):0LL)に対して、2次元ウェーブレット変換を施し、デコンポジションレベル1(121)に示すサブバンド(1LL,1HL,1LH,1HH)を分離する。引き続き、2次元ウェーブレット変換・逆変換部101は、この階層における低周波成分1LLに対して、2次元ウェーブレット変換を施し、デコンポジションレベル2(122)に示すサブバンド(2LL,2HL,2LH,2HH)を分離する。そして、2次元ウェーブレット変換・逆変換部101は、順次同様に、低周波成分2LLに対しても、2次元ウェーブレット変換を施し、デコンポジションレベル3(123)に示すサブバンド(3LL,3HL,3LH,3HH)を分離する。なお、図3中では、各デコンポジションレベルにおいて符号化の対象となるサブバンドはグレーで示されている。例えば、デコンポジションレベル数を3とした場合、グレーで示したサブバンド(3HL,3LH,3HH,2HL,2LH,2HH,1HL,1LH,1HH)が符号化対象となり、3LLサブバンドは符号化されない。
【0054】
次いで、量子化・逆量子化部102では(図1参照)、指定した符号化の順番で符号化の対象となるビットが定められた後、対象ビット周辺のビットからコンテキストが生成される。この量子化の処理が終わったウェーブレット係数は、個々のサブバンド毎に、「プレシンクト」と呼ばれる重複しない矩形に分割される。これは、インプリメンテーションでメモリを効率的に使うために導入されたものである。ここで、図4はプレシンクトを示す説明図である。図4に示すように、一つのプレシンクトは、空間的に一致した3つの矩形領域からなっている。さらに、個々のプリシンクトは、重複しない矩形の「コードブロック」に分けられる。これは、エントロピーコーディングを行う際の基本単位となる。
【0055】
なお、ウェーブレット変換後の係数値は、そのまま量子化し符号化することも可能であるが、JPEG2000では符号化効率を上げるために、係数値を「ビットプレーン」単位に分解し、画素あるいはコードブロック毎にビットプレーンに順位付けを行うことができる。
【0056】
ここで、図5はビットプレーンに順位付けする手順の一例を示す説明図である。図5に示すように、この例は、原画像(32×32画素)を16×16画素のタイル4つで分割した場合で、デコンポジションレベル1のプレシンクトとコードブロックの大きさは、各々8×8画素と4×4画素としている。プレシンクトとコードブロックの番号は、ラスター順に付けられており、この例では、プレンシクトが番号0から3まで、コードブロックが番号0から3まで割り当てられている。タイル境界外に対する画素拡張にはミラーリング法を使い、可逆(5,3)フィルタでウェーブレット変換を行い、デコンポジションレベル1のウェーブレット係数値を求めている。
【0057】
また、タイル0/プレシンクト3/コードブロック3について、代表的な「レイヤ」構成の概念の一例を示す説明図も図5に併せて示す。変換後のコードブロックは、サブバンド(1LL,1HL,1LH,1HH)に分割され、各サブバンドにはウェーブレット係数値が割り当てられている。
【0058】
レイヤの構造は、ウェーブレット係数値を横方向(ビットプレーン方向)から見ると理解し易い。1つのレイヤは任意の数のビットプレーンから構成される。
この例では、レイヤ0,1,2,3は、各々、1,3,1,3のビットプレーンから成っている。そして、LSB(Least Significant Bit:最下位ビット)に近いビットプレーンを含むレイヤ程、先に量子化の対象となり、逆に、MSB(Most Significant Bit:最上位ビット)に近いレイヤは最後まで量子化されずに残ることになる。LSBに近いレイヤから破棄する方法はトランケーションと呼ばれ、量子化率を細かく制御することが可能である。
【0059】
エントロピー符号化・復号化部103では(図1参照)、コンテキストと対象ビットとから、確率推定によって各コンポーネント110の各タイル111に対する符号化を行う。こうして、画像の全てのコンポーネント110について、タイル111単位で符号化処理が行われる。
【0060】
最後に、タグ処理部104では(図1参照)、エントロピー符号化・復号化部103からの全符号化データを1本のコードストリーム(符号列データ)に結合するとともに、それにタグを付加する処理を行う。ここで、図6はコードストリームの構造の一例を概略的に示す模式図である。コードストリームの先頭と各タイル111を構成する部分タイルの先頭には、ヘッダ(メインヘッダ(Main header)、タイルパートヘッダ(tile part header))と呼ばれるタグ情報が付加され、その後に、各タイル111の符号化データ(bit stream)が続く。そして、コードストリームの終端には、再びタグ情報(end of codestream)が付加される。
【0061】
一方、復号化時には、符号化時とは逆に、各コンポーネント110の各タイル111のコードストリームから画像データを生成する。この場合、図1に示すように、タグ処理部104は、外部より入力されたコードストリーム(符号列データ)に付加されたタグ情報を解釈し、コードストリームを各コンポーネント110の各タイル111のコードストリームに分解し、その各コンポーネント110の各タイル111のコードストリーム毎に復号化処理(伸長処理)を行う。このとき、コードストリーム内のタグ情報に基づく順番で復号化の対象となるビットの位置が定められるとともに、量子化・逆量子化部102において、その対象ビット位置の周辺ビット(既に復号化を終えている)の並びからコンテキストを生成する。そして、エントロピー符号化・復号化部103では、そのコンテキストとコードストリームとから確率推定によって復号化を行って対象ビットを生成し、それを対象ビットの位置に書き込む。このようにして復号化されたデータは、周波数帯域毎に空間分割されているため、これを2次元ウェーブレット変換・逆変換部101で2次元ウェーブレット逆変換を行うことにより、画像データ中の各コンポーネント110における各タイル111が復元される。復元されたデータは、色空間変換・逆変換部100によって元の表色系のデータに変換される。ここに、伸長手段が実行される。
【0062】
次に、本実施の形態の画像処理装置である複合機1の構成例について説明する。本実施の形態の複合機1は、複写機能、プリンタ機能、スキャナ機能、ファクシミリ機能、画像サーバ機能等の複合機能を有している。
【0063】
図7は本実施の形態の複合機1を概略的に示す縦断面図である。複合機1は、原稿から原稿画像を読み取る画像読取部であるスキャナ2と、スキャナ2で読み取られた画像を用紙等の記録材に形成する画像形成部であるプリンタ3とを備えている。
【0064】
スキャナ2の本体ケース4の上面には、原稿(図示せず)が載置されるコンタクトガラス5が設けられている。原稿は、原稿面をコンタクトガラス5に対向させて載置される。コンタクトガラス5の上側には、コンタクトガラス5上に載置された原稿を押える原稿圧板6(いわゆるADFであってもよい)が設けられている。
【0065】
コンタクトガラス5の下方には、原稿画像を光学的に読み取るための読取光学系7が設けられている。この読取光学系7は、光を発光する光源8及びミラー9を搭載する第1走行体10、2枚のミラー11,12を搭載する第2走行体13、結像レンズ14を介してミラー9,11,12によって導かれる光を受光するCCD(Charge Coupled Device)イメージセンサ15等によって構成されている。CCDイメージセンサ15は、CCDイメージセンサ15上に結像される原稿からの反射光を光電変換することで光電変換データを生成する光電変換素子として機能する。光電変換データは、原稿からの反射光の強弱に応じた大きさを有する電圧値である。第1、第2走行体10,13は、コンタクトガラス5に沿って往復動自在に設けられており、後述する原稿画像の読取動作に際しては、図示しないモータ等の移動装置によって2:1の速度比で副走査方向にスキャニング走行する。これにより、読取光学系7による原稿読取領域の露光走査が行われる。なお、本実施の形態では、読取光学系7側がスキャニング走査を行う原稿固定型で示しているが、読取光学系7側が位置固定で原稿側が移動する原稿移動型であってもよい。
【0066】
プリンタ3は、シート状の用紙等の記録材を保持する記録材保持部16から電子写真方式のプリンタエンジン17及び定着器18を経由して排出部19へ至る記録材経路20を備えている。
【0067】
プリンタエンジン17は、感光体21、帯電器22、露光器23、現像器24、転写器25及びクリーナー26等を用いて、電子写真方式で感光体21の周囲に形成したトナー像を記録材に転写し、転写したトナー像を、定着器18によって記録材上に定着させる。なお、本実施の形態では、プリンタエンジン17が電子写真方式で画像形成を行うが、これに限るものではなく、例えば、インクジェット方式、昇華型熱転写方式、直接感熱記録方式等の様々な画像形成方式で画像形成を行うようにしても良い。
【0068】
このような複合機1は、複数のマイクロコンピュータで構成される制御系により制御される。図8はこれらの制御系のうち、画像処理に関わる制御系の電気的な接続を概略的に示すブロック図である。この制御系は、CPU30、ROM31、RAM32、操作パネル33、IPU(Image Processing Unit)34、I/Oポート35、通信制御部36等がバス37で接続され構成されている。CPU30は、各種演算を行い、画像処理等の処理を集中的に制御する。ROM31には、CPU30が実行する処理に関わる各種プログラムや固定データが格納されている。また、RAM32は、CPU30のワークエリアとして機能し、加えて、画像データ(例えば、画像ファイル)を一時的に記憶するメモリとして機能する。操作パネル33には、LCD(Liquid Crystal Display)等の表示器、ハードキー及びタッチパネル等によって構成される複数の操作キー(いずれも図示せず)が設けられており、操作パネル33が表示部及び操作部として機能する。IPU34は各種画像処理に関わるハードウエアを備えており、ROM31はEEPROMやフラッシュメモリ等の不揮発性メモリを備えている。ここで、ROM31内に格納されているプログラムは、CPU30の制御によりI/Oポート35を介して外部装置(図示せず)からダウンロードされるプログラムに書換え可能である。なお、本実施の形態では、ROM31がプログラムを記憶する記憶媒体として機能している。通信制御部36は、複合機1と外部装置(図示せず)との間でネットワーク等を介してデータを送受信する機能を有しており、ファクシミリのモデム機能、公衆電話回線網に接続するための網制御機能、LAN(Local Area Network)制御機能等を備えている。
【0069】
次に、本実施の形態の複合機1における画像処理の概要について図9を参照して説明する。図9は複合機1における画像処理の概要を説明するための機能ブロック図である。複合機1の画像処理は、スキャナ2で読み取った原画像を複数の領域に分割する領域分割部40、分割した複数領域を領域属性に基づいて識別する領域識別処理を実行し、さらに、複数領域に対して画像から文字を認識する文字認識処理を実行する付加情報生成部41と、図1を参照して説明した各機能ブロックを有する圧縮部42と、領域識別処理により生成された領域識別情報や文字認識処理により生成された文字認識情報等を付加情報として圧縮データであるコードストリームの所定の埋め込み位置に埋め込む付加情報埋込部43とを備える。
【0070】
なお、画像から文字を認識する文字認識処理としては、例えばOCR(Optical Character Recognition)処理が用いられる。また、付加情報生成部41では、スキャナ2で読み取った原画像の傾き角度を検出する傾き検出処理を実行しても良い。これにより、傾き検出結果である傾き角度補正情報等の傾き検出情報が得られる。したがって、付加情報埋込部43では、その傾き検出情報を付加情報として埋め込むようにしても良い。
【0071】
また、複合機1の画像処理は、基本的に、スキャナ2で読み取られた原画像の画像データから分割した領域に対応する画像データに対してOCR処理を行い、さらに、画像データをJPEG2000アルゴリズムにより圧縮符号化して、コードストリームを生成する。すなわち、画像を1又は複数の矩形領域(タイル111)に分割し、この矩形領域毎に画素値を離散ウェーブレット変換して階層的に圧縮符号化する。このとき、領域識別情報、文字認識情報、傾き検出情報等は、コードストリームの所定の埋め込み位置に埋め込まれる。このような領域分割部40、付加情報生成部41、圧縮部42、付加情報埋込部43等の機能は、ROM31に記憶されているプログラムに基づいてCPU30が行う画像処理で実行されるようにしているが、これに限るものではなく、例えば、IPU34等によりハードウエアが行う画像処理で実行されるようにしても良い。
【0072】
ここで、領域属性としては、例えば、文字領域、写真領域、図領域、表領域、黒ベタ領域、背景領域等の様々な領域属性がある。なお、背景領域とは、原稿の余白にあたる余白領域であるが、これに限るものではなく、例えば、余白領域に行間にあたる行間領域を加えた領域であっても良い。
【0073】
一方、付加情報としては、例えば、OCR処理により生成された文字認識情報(文字認識結果情報)、領域識別処理により生成された座標情報や領域属性情報等の領域識別情報領域(領域識別結果情報)、傾き検出処理により生成された傾き角度補正情報等の傾き検出情報(傾き検出結果情報)等がある。文字認識情報としては、文字コード、文字色、フォントサイズ、フォント情報、文字の座標位置情報、確信度情報(確からしさ情報)、タイトル(文字コード)等がある。なお、タイトルは領域識別処理によりタイトル領域を抽出し、そのタイトル領域をOCR処理して得られた文字コードである。例えば、「2002年度会議議事録.j2k」等のタイトルが文字コードで所定の埋め込み位置に埋め込まれる。
【0074】
また、所定の埋め込み位置としては、例えば、メインヘッダやタイルパートヘッダ等のヘッダ(図6参照)、画像の最下位ビット(画像サイズを増加させることなく埋め込みが可能)、さらに、画像の文字領域に対応する最下位ビット等がある。加えて、画像サイズがタイルの整数倍でない場合には、情報を付加してタイルの整数倍の画像を形成するが、その付加する情報部分に埋め込むことも可能である。
【0075】
次に、複合機1のCPU30がプログラムに基づいて実行する画像処理について説明する。ここでは、例えば、複合機1を画像サーバとして用いるために画像データを蓄積する画像処理について図10及び図11を参照して説明する。図10は本実施の形態の画像処理の流れを概略的に示すフローチャート、図11はその画像処理による付加情報の埋め込み位置を概略的に示す説明図である。
【0076】
図10に示すように、まず、スキャナ2による原稿画像の読取に待機する(ステップS1のN)。操作者がスキャナ2の原稿圧板6を開放してコンタクトガラス5上に原稿をセットし、原稿圧板6を閉じて操作パネル33のコピースタートキーを押下すると、スキャナ2は読取光学系7のスキャニング動作でコンタクトガラス5上にセットされた原稿から原画像を読み取る。
【0077】
スキャナ2により原稿から原画像が読み取られると(S1のY)、読み取られた原画像を複数の領域に分割し、文字領域、写真領域、図領域、表領域、背景領域等の領域属性に基づいて、原画像中に混在する複数領域の属性を識別する(S2)。ここに、領域分割手段又は領域分割機能が実行され、付加情報生成手段又は付加情報生成機能が実行される。なお、領域識別の方法は、従来の方法、例えば、黒ランの密度を用いて領域識別する方法等で十分であり、その方法は公知であるため、その説明は省略する。ここで、複数領域を領域識別することによって、座標情報や領域属性情報等の領域識別情報が複数領域毎に得られる。なお、スキャナ2により読み取った原稿画像に対して本実施の形態の画像処理を実行しているが、これに限るものではなく、例えばネットワークを介して受信した原画像に対して本実施の形態の画像処理を実行しても良い。
【0078】
次に、分割識別された複数領域に対してOCR処理を実行する(S3)。すなわち、複数領域毎の画像から文字を認識する。ここに、付加情報生成手段又は付加情報生成機能が実行される。なお、OCR処理としては、パターン・マッチング法や構造解析法等があり、これらの方法は公知であるため、その説明は省略する。ここで、複数領域毎にOCR処理を実行することによって、文字コード、文字色、フォントサイズ、フォント情報、文字の座標位置情報、確信度情報(確からしさ情報)等の文字認識情報が複数領域毎に得られる。
【0079】
次いで、原画像をJPEG2000アルゴリズムに基づいて圧縮する(S4)。これにより、原画像からJPEG2000アルゴリズムに基づいてコードストリームが生成される。そして、コードストリームの所定の埋め込み位置に領域識別情報及び文字認識情報を付加情報として埋め込む(S5)。ここに、付加情報埋込手段又は付加情報埋込機能が実行される。例えば、図11に示すように、付加情報は、コードストリームにおけるレイヤの最下位ビットに埋め込まれる。これにより、画像サイズを増加させることなく埋め込むことができる。なお、付加情報が埋め込まれた領域Rは、原画像の文字領域に対応する領域である。
【0080】
なお、ここでは、画像の文字領域に対応する領域Rの最下位ビットに埋め込んでいるが、これに限るものではなく、例えば単純に最下位ビットに埋め込むようにしても良い。また、領域識別情報及び文字認識情報を付加情報として所定の埋め込み位置に埋め込んでいるが、これに限るものではなく、例えば、領域識別情報及び文字認識情報のどちらか一方だけを所定の埋め込み位置に埋め込んでも良く、あるいは、傾き検出処理を実行した場合には、傾き検出結果の傾き角度補正情報等の傾き検出情報を所定の埋め込み位置に埋め込んでも良い。また、ステップS4及びステップS5を同時に実行するようにして、付加情報を埋め込みながら原画像を圧縮するようにしても良い。ここで、原画像はJPEG2000アルゴリズムに基づいて複数の解像度で圧縮されているので、解像度毎にOCR処理を実行して文字認識情報を所定の埋め込み位置に埋め込むようにしても良い。
【0081】
最後に、付加情報が埋め込まれた画像データ(圧縮データ)をRAM32に画像ファイルとして格納する(S6)。ここで、原稿が複数枚ある場合には、原稿毎にステップS1からS6までの処理が繰り返され、RAM32には原稿毎に複数の画像ファイルが保存される。
【0082】
その後、RAM32に画像ファイルとして格納されている画像データは、例えば、所定のタイミングで通信制御部36によりネットワークを介して外部装置に送信される場合がある。このとき、例えば、文字領域を有する画像の画像データだけを送信するために、RAM32に画像ファイルとして格納された複数の画像データから文字領域を有する画像の画像データを検索する場合には、CPU30は画像データ内の文字コードを検出すれば良く、簡単に検索することができる。
また、類似した画像を有する画像データだけを送信するために、RAM32に画像ファイルとして格納された複数の画像データから類似した画像を有する画像データを検索する場合には、CPU30は画像データ内の領域識別情報を検出し、他の画像データと領域毎に領域属性が一致するか否かを判断して、簡単に検索することができる。
【0083】
なお、画像データの画像は、変倍(拡大,縮小)、回転、白黒反転等の画像処理が行われる場合もある。このような画像処理では、文字領域Mのフォントサイズを変更することで文字領域Mの文字画像を変倍し、また、画像がJPEG2000アルゴリズムの圧縮手段により様々な解像度の画像として保持されているので、画像を高画質から低画質に自由に変化させることができる。さらに、原画像を表示装置等に表示する場合には、表示装置の解像度等に合わせて画像を伸長することができる。
【0084】
このように本実施の形態では、原画像を複数領域に分割し、複数領域の属性を識別して領域識別情報を生成し(S2)、分割した複数領域に対してOCR処理を実行して文字認識情報を生成し(S3)、生成した領域識別情報及び文字認識情報をコードストリームの所定の埋め込み位置に埋め込むことによって(S5)、例えば、複数の画像データ(圧縮データ)から必要とする画像データを検索する場合等、付加情報を利用して簡単に検索することが可能となる。すなわち、必要に応じた付加情報を埋め込むことで、画像データの検索や管理、画像データに対する処理等を容易に行うことができる。また、原画像の複数領域毎に対応する付加情報、例えば領域識別情報や文字認識情報等が得られるので、画像の中から必要とする領域、例えば文字領域や写真領域等を簡単に検索して抽出することができる。さらに、JPEG2000アルゴリズムの圧縮手段及び伸長手段を用いることで、JPEG2000の特性を活かした様々な画像処理を実行することができる。
【0085】
本発明の第二の実施の形態を図12に基づいて説明する。図12は本実施の形態の画像処理の流れを概略的に示すフローチャートである。なお、前述して説明した部分と同一部分は同一符号で示す。
【0086】
本実施の形態の基本的構成は、第一の実施の形態と同様であるが、第一の実施の形態との相違点は、複合機1のCPU30がプログラムに基づいて実行する画像処理が異なる点である。
【0087】
本実施の形態の複合機1のCPU30がプログラムに基づいて実行する画像処理について説明する。ここでは、例えば、複合機1を画像サーバとして用いるために画像データを蓄積する画像処理について説明する。
【0088】
図12に示すように、まず、スキャナ2による原稿画像の読取に待機する(ステップS11のN)。操作者がスキャナ2の原稿圧板6を開放してコンタクトガラス5上に原稿をセットし、原稿圧板6を閉じて操作パネル33のコピースタートキーを押下すると、スキャナ2は読取光学系7のスキャニング動作でコンタクトガラス5上にセットされた原稿から原画像を読み取る。
【0089】
スキャナ2により原稿から原画像が読み取られると(S11のY)、読み取られた原画像をタイリング処理して複数のタイル111(複数の領域:図1参照)に分割する(S12)。ここに、領域分割手段又は領域分割機能が実行される。
これにより、原画像は複数のタイル111(複数の領域)に分割される。なお、このタイリング処理は、JPEG2000アルゴリズムに基づいて実行される。
【0090】
次に、分割された複数のタイル111に対してOCR処理を実行する(S13)。すなわち、複数のタイル111毎の画像から文字を認識する。ここに、付加情報生成手段又は付加情報生成機能が実行される。なお、OCR処理としては、パターン・マッチング法や構造解析法等があり、これらの方法は公知であるため、その説明は省略する。ここで、OCR処理を実行することによって、文字コード、文字色、フォントサイズ、フォント情報、文字の座標位置情報、確信度情報(確からしさ情報)等の文字認識情報がタイル111毎に得られる。
【0091】
次いで、原画像をJPEG2000アルゴリズムに基づいて圧縮する(S14)。これにより、原画像からJPEG2000アルゴリズムに基づいてコードストリームが生成される。そして、コードストリームの所定の埋め込み位置に付加情報として文字認識情報を埋め込む(S15)。ここに、付加情報埋込手段又は付加情報埋込機能が実行される。例えば、タイル111毎の付加情報は、対応するタイルパートヘッダに埋め込まれる。なお、ステップS12でタイリング処理を実行しているので、ステップS14でタイリング処理を実行する必要はない。
【0092】
ここでは、文字認識情報を付加情報として所定の埋め込み位置に埋め込んでいるが、これに限るものではなく、例えば、傾き検出処理を実行した場合には、傾き検出結果の傾き角度補正情報等の傾き検出情報を所定の埋め込み位置に埋め込んでも良い。また、ステップS14及びステップS15を同時に実行するようにして、付加情報を埋め込みながら画像を圧縮するようにしても良い。
【0093】
最後に、付加情報が埋め込まれた画像データ(圧縮データ)をRAM32に画像ファイルとして格納する(S16)。ここで、原稿が複数枚ある場合には、原稿毎にステップS11からS16までの処理が繰り返され、RAM32には原稿毎に複数の画像ファイルが保存される。
【0094】
その後、RAM32に画像ファイルとして格納されている画像データは、例えば、所定のタイミングで通信制御部36によりネットワークを介して外部装置に送信される場合がある。このとき、例えば、文字領域を有する画像の画像データだけを送信するために、RAM32に画像ファイルとして格納された複数の画像データから文字領域を有する画像の画像データを検索する場合には、CPU30は画像データ内の文字コードを検出すれば良く、簡単に検索することができる。
【0095】
このように本実施の形態では、原画像をタイリング処理して複数のタイル111(複数の領域)に分割し(S12)、分割した複数のタイル111に対してOCR処理を実行して文字認識情報を生成し(S13)、生成した文字認識情報をコードストリームの所定の埋め込み位置に埋め込むことによって(S15)、例えば、複数の画像データ(圧縮データ)から必要とする画像データを検索する場合等、付加情報を利用して簡単に検索することが可能となる。すなわち、必要に応じた付加情報を埋め込むことで、画像データの検索や管理、画像データに対する処理等を容易に行うことができる。また、原画像のタイル11毎に対応する付加情報、例えば文字認識情報等が得られるので、画像の中から必要とする領域、例えば文字領域を簡単に検索して抽出することができる。さらに、JPEG2000アルゴリズムの圧縮手段及び伸長手段を用いることで、JPEG2000の特性を活かした様々な画像処理を実行することができる。
【0096】
なお、各実施の形態においては、画像処理装置として複合機1を用いているが、これに限るものではなく、例えば、パーソナルコンピュータ等を用いても良い。この場合、パーソナルコンピュータは、CPU、ROM、RAM、各種のプログラムを記憶するHDD(Hard Disk Drive)、CD−ROMドライブ、スキャナ、ネットワークを介して外部装置と通信により情報を伝達するための通信制御装置、処理経過や結果等を操作者に表示する表示装置、キーボードやマウス等の入力装置等を備えている。ここで、HDDは、前述したような画像処理に関するプログラムを記憶する記憶媒体として機能する。
【0097】
なお、一般的には、パーソナルコンピュータのHDDにインストールされるプログラムは、CD−ROMやDVD−ROM等の光情報記録メディアやFD等の磁気メディア等に記録され、この記録されたプログラムがHDDにインストールされる。このため、CD−ROM等の光情報記録メディアやFD等の磁気メディア等の可搬性を有する記憶媒体も、前述したような画像処理に関するプログラムを記憶する記憶媒体となり得る。さらには、このようなプログラムは、例えば通信制御装置を介して外部から取込まれ、HDDにインストールされても良い。
【0098】
【発明の効果】
請求項1記載の発明によれば、原画像を2次元ウェーブレット変換、量子化及び符号化という手順で圧縮してコードストリームを生成する画像処理装置において、前記原画像を複数領域に分割する領域分割手段と、前記領域分割手段により分割された前記複数領域の画像から前記原画像に関連する付加情報を生成する付加情報生成手段と、前記付加情報生成手段により生成された付加情報を前記コードストリームに埋め込む付加情報埋込手段と、を備えることを特徴とすることから、原画像の画像データが付加情報を有し、例えば、複数の画像データから必要とする画像データを検索する場合等、付加情報を利用して簡単に検索することが可能となる。すなわち、必要に応じた付加情報を埋め込むことで、画像データの検索や管理、画像データに対する処理等を容易に行うことができる。
【0099】
請求項2記載の発明によれば、請求項1記載の画像処理装置において、前記付加情報生成手段は、前記複数領域の画像から文字を認識することで前記付加情報として文字認識情報を生成することを特徴とすることから、この文字認識情報がコードストリームに埋め込まれ、例えば、複数の画像データから文字領域を有する画像データを検索する場合等、文字認識情報により簡単に検索することが可能となる。すなわち、文字認識情報を利用することで、画像データの検索や管理等を容易に行うことができる。
【0100】
請求項3記載の発明によれば、請求項1又は2記載の画像処理装置において、前記付加情報生成手段は、前記複数領域の領域属性を識別することで前記付加情報として領域識別情報を生成することを特徴とすることから、この領域識別情報がコードストリームに埋め込まれ、例えば、複数の画像データから写真領域を有する画像データを検索する場合等、領域識別情報により簡単に検索することが可能となる。すなわち、領域識別情報を利用することで、画像データの検索や管理等を容易に行うことが可能になる。
【0101】
請求項4記載の発明によれば、請求項1、2又は3記載の画像処理装置において、前記付加情報生成手段は、前記複数領域の画像の傾きを検出することで前記付加情報として傾き検出情報を生成することを特徴とすることから、この傾き検出情報がコードストリームに埋め込まれ、例えば、画像を表示装置に表示させたり、用紙に印字させたりする場合等、傾き検出情報により簡単に画像の傾きを補正することが可能となる。すなわち、傾き検出情報を利用することで、画像データに対する処理等を容易に行うことができる。
【0102】
請求項5記載の発明によれば、請求項1ないし4のいずれか一記載の画像処理装置において、前記付加情報埋込手段は、前記コードストリームのメインヘッダに前記付加情報を埋め込むことを特徴とすることから、例えば、複数の画像データから必要とする画像データを検索する場合等、メインヘッダを読み取る早い段階でメインヘッダの付加情報を利用して検索することが可能となり、その結果として、処理時間を短縮することができる。
【0103】
請求項6記載の発明によれば、請求項1ないし4のいずれか一記載の画像処理装置において、前記付加情報埋込手段は、前記コードストリームのタイルパートヘッダに前記付加情報を埋め込むことを特徴とすることから、例えば、タイル毎(領域毎)の付加情報が対応するタイルパートヘッダに埋め込まれ、複数の画像データから必要とする画像データを検索する場合等、タイルパートヘッダの付加情報を利用して簡単に検索することができる。
【0104】
請求項7記載の発明によれば、請求項1ないし4のいずれか一記載の画像処理装置において、前記付加情報埋込手段は、前記コードストリームにおけるレイヤの最下位ビットに前記付加情報を埋め込むことを特徴とすることから、画像サイズを増加させることなく付加情報を埋め込むことができる。
【0105】
請求項8記載の発明によれば、請求項1ないし7のいずれか一記載の画像処理装置において、原稿から前記原画像を光学的に読み取る読取光学系を備えることを特徴とすることから、原稿から原画像を読み取ることが可能になり、その結果として、読み取った原画像に対し画像処理等の様々な処理を実行することができる。
【0106】
請求項9記載の発明によれば、請求項1ないし8のいずれか一記載の画像処理装置において、圧縮された前記原画像を復号化、逆量子化及び2次元ウェーブレット逆変換という手順で伸長する伸長手段を備えることを特徴とすることから、JPEG2000アルゴリズムの伸長手段を用いることで、JPEG2000アルゴリズムで圧縮された画像をJPEG2000の特性を活かして伸長することが可能となり、その結果として、伸長された画像の表示装置等への表示や用紙等への印字等を実行することができる。
【0107】
請求項10記載の発明によれば、請求項9記載の画像処理装置において、前記伸長手段により伸長された画像を記録材に画像形成するプリンタエンジンを備えることを特徴とすることから、伸長された画像を用紙等の記録材に形成することができる。
【0108】
請求項11記載の発明のプログラムは、原画像を2次元ウェーブレット変換、量子化及び符号化という手順で圧縮してコードストリームを生成する画像処理装置が備えるコンピュータに解釈され、前記コンピュータに、原画像を複数領域に分割する領域分割機能と、前記領域分割手段により分割された前記複数領域の画像から前記原画像に関連する付加情報を生成する付加情報生成機能と、前記付加情報生成手段により生成された付加情報を前記コードストリームに埋め込む付加情報埋込機能と、を実行させることから、原画像の画像データが付加情報を有し、例えば、複数の画像データから必要とする画像データを検索する場合等、付加情報を利用して簡単に検索することができる。すなわち、必要に応じた付加情報を埋め込むことで、画像データの検索や管理、画像データに対する処理等を容易に行うことができる。
【0109】
請求項12記載の発明によれば、請求項11記載のプログラムにおいて、前記付加情報生成機能は、前記複数領域の画像から文字を認識することで前記付加情報として文字認識情報を生成することから、この文字認識情報がコードストリームに埋め込まれ、例えば、複数の画像データから文字領域を有する画像データを検索する場合等、文字認識情報により簡単に検索することが可能となる。すなわち、文字認識情報を利用することで、画像データの検索や管理等を容易に行うことができる。
【0110】
請求項13記載の発明によれば、請求項11又は12記載のプログラムにおいて、前記付加情報生成機能は、前記複数領域の領域属性を識別することで前記付加情報として領域識別情報を生成することから、この領域識別情報がコードストリームに埋め込まれ、例えば、複数の画像データから写真領域を有する画像データを検索する場合等、領域識別情報により簡単に検索することが可能となる。すなわち、領域識別情報を利用することで、画像データの検索や管理等を容易に行うことができる。
【0111】
請求項14記載の発明によれば、請求項11、12又は13記載のプログラムにおいて、前記付加情報生成機能は、前記複数領域の画像の傾きを検出することで前記付加情報として傾き検出情報を生成することから、この傾き検出情報がコードストリームに埋め込まれ、例えば、画像を表示装置に表示させたり、用紙に印字させたりする場合等、傾き検出情報により簡単に画像の傾きを補正することが可能となる。すなわち、傾き検出情報を利用することで、画像データに対する処理等を容易に行うことができる。
【0112】
請求項15記載の発明によれば、請求項11ないし14のいずれか一記載のプログラムにおいて、前記付加情報埋込機能は、前記コードストリームのメインヘッダに前記付加情報を埋め込むことから、例えば、複数の画像データから必要とする画像データを検索する場合等、メインヘッダを読み取る早い段階でメインヘッダの付加情報を利用して検索することが可能となり、その結果として、処理時間を短縮することができる。
【0113】
請求項16記載の発明によれば、請求項11ないし14のいずれか一記載のプログラムにおいて、前記付加情報埋込機能は、前記コードストリームのタイルパートヘッダに前記付加情報を埋め込むことから、例えば、タイル毎(領域毎)の付加情報が対応するタイルパートヘッダに埋め込まれ、複数の画像データから必要とする画像データを検索する場合等、タイルパートヘッダの付加情報を利用して簡単に検索することができる。
【0114】
請求項17記載の発明によれば、請求項11ないし14のいずれか一記載のプログラムにおいて、前記付加情報埋込機能は、前記コードストリームにおけるレイヤの最下位ビットに前記付加情報を埋め込むことから、画像サイズを増加させることなく付加情報を埋め込むことができる。
【0115】
請求項18記載の発明のコンピュータ読取可能な記憶媒体によれば、請求項11ないし17のいずれか一記載のプログラムを記憶していることから、請求項11ないし17のいずれか一記載の発明と同様な効果を奏する。
【図面の簡単な説明】
【図1】JPEG2000アルゴリズムの概要を説明するための機能ブロック図である。
【図2】カラー画像である原画像の分割された各コンポーネントの一例を概略的に示す模式図である。
【図3】デコンポジションレベル数が3である場合の各デコンポジションレベルにおけるサブバンドを概略的に示す模式図である。
【図4】プレシンクトを示す説明図である。
【図5】ビットプレーンに順位付けする手順の一例を示す説明図である。
【図6】コードストリームの構造の一例を概略的に示す模式図である。
【図7】本発明の第一の実施の形態の複合機を概略的に示す縦断面図である。
【図8】複合機の制御系のうち、画像処理に関わる制御系の電気的な接続を概略的に示すブロック図である。
【図9】複合機における画像処理の概要を説明するための機能ブロック図である。
【図10】本発明の第一の実施の形態の画像処理の流れを概略的に示すフローチャートである。
【図11】本発明の第一の実施の形態の画像処理による付加情報の埋め込み位置を概略的に示す説明図である。
【図12】本発明の第二の実施の形態の画像処理の流れを概略的に示すフローチャートである。
【符号の説明】
1 画像処理装置(複号機)
7 読取光学系
17 プリンタエンジン
30 コンピュータ(CPU)
31 記憶媒体(ROM)[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing device, a program, and a storage medium.
[0002]
[Prior art]
2. Description of the Related Art In recent years, with the spread of image processing apparatuses such as scanners, digital cameras, personal computers, printers, copiers, and multifunction peripherals (MFPs), digital image data has been stored in storage devices such as memories and hard disks, and CD-ROMs and the like. It is easy to save the data on an optical disk or to transmit the data via the Internet or the like. Such image data is usually compressed and stored in a storage device, an optical disk, or the like in many cases.
[0003]
Recently, high-definition images can be easily obtained by various techniques, but the image data size of the high-definition images tends to be large, and handling of high-definition images has become difficult. At present, JPEG (Joint Photographic Experts Group) is most widely used as an image compression / decompression algorithm for facilitating the handling of such high-definition images. In recent years, DWT (discrete wavelet transform) has been increasingly used as a frequency transform in place of DCT (discrete cosine transform) adopted in JPEG. A representative example is JPEG2000, an image compression / decompression method succeeding JPEG, which became an international standard in 2001.
[0004]
Since such compressed image data is digital data, it can be easily transmitted via the Internet or the like or stored in a storage device. However, on the other hand, there is a high possibility that the image data will be modified without permission of the creator. is there. To prevent this, a method of embedding signature information for specifying a creator as additional information in an original image has been proposed (for example, see Patent Document 1).
[0005]
[Patent Document 1]
JP 2001-42768 A
[0006]
[Problems to be solved by the invention]
However, in the technique of
[0007]
In addition, a user desires to be able to easily retrieve image data having a character area or a photograph area or image data having a similar image from a plurality of image data stored in a storage device. For example, in the related art, a user confirms an image displayed on a display device or the like or an image printed on a sheet or the like based on image data, so that image data having a character area or a photograph area or similar image data can be obtained. In many cases, image data or the like having the searched image is searched.
[0008]
An object of the present invention is to provide an image processing apparatus, a program, and a storage medium that realize encoding suitable for search and management of image data, processing of image data, and the like.
[0009]
[Means for Solving the Problems]
An image processing apparatus for compressing an original image by a procedure of two-dimensional wavelet transform, quantization and encoding to generate a code stream, comprising: an area dividing unit that divides the original image into a plurality of areas; An additional information generating unit configured to generate additional information related to the original image from an image of the plurality of regions divided by the region dividing unit; and an additional unit that embeds the additional information generated by the additional information generating unit into the code stream. Information embedding means.
[0010]
Therefore, by generating additional information related to the original image and embedding the generated additional information in the code stream, the image data of the original image has the additional information. When searching, for example, it is possible to easily search using the additional information. That is, by embedding additional information as needed, it becomes possible to easily perform search and management of image data, processing of image data, and the like.
[0011]
According to a second aspect of the present invention, in the image processing apparatus according to the first aspect, the additional information generation unit generates character recognition information as the additional information by recognizing characters from the images of the plurality of areas. And
[0012]
Therefore, by generating the character recognition information as additional information, the character recognition information is embedded in the code stream. For example, when searching for image data having a character area from a plurality of image data, the character recognition information can be easily obtained. It becomes possible to search. That is, by using the character recognition information, it is possible to easily search and manage image data.
[0013]
According to a third aspect of the present invention, in the image processing apparatus according to the first or second aspect, the additional information generation unit generates area identification information as the additional information by identifying area attributes of the plurality of areas. Features.
[0014]
Therefore, by generating the region identification information as additional information, the region identification information is embedded in the code stream. For example, in a case where image data having a photograph region is searched from a plurality of image data, the region identification information can be more easily obtained. It becomes possible to search. That is, by using the area identification information, it is possible to easily search and manage the image data.
[0015]
According to a fourth aspect of the present invention, in the image processing apparatus according to the first, second or third aspect, the additional information generating unit generates tilt detection information as the additional information by detecting a tilt of an image in the plurality of regions. It is characterized by doing.
[0016]
Therefore, by generating the inclination detection information as additional information, the inclination detection information is embedded in the code stream. For example, when an image is displayed on a display device or printed on paper, the inclination detection information can be more easily used. This makes it possible to correct the inclination of the image. That is, by using the inclination detection information, it is possible to easily perform processing on image data.
[0017]
According to a fifth aspect of the present invention, in the image processing apparatus according to any one of the first to fourth aspects, the additional information embedding unit embeds the additional information in a main header of the code stream.
[0018]
Therefore, by embedding the additional information in the main header of the code stream, for example, when searching for required image data from a plurality of image data, a search is performed using the additional information of the main header at an early stage of reading the main header. As a result, the processing time can be reduced.
[0019]
According to a sixth aspect of the present invention, in the image processing apparatus according to any one of the first to fourth aspects, the additional information embedding unit embeds the additional information in a tile part header of the code stream. .
[0020]
Therefore, by embedding the additional information in the tile part header of the code stream, for example, the additional information for each tile (each area) is embedded in the corresponding tile part header, and the required image data is searched from a plurality of image data. In such cases, it is possible to easily search using the additional information of the tile part header.
[0021]
According to a seventh aspect of the present invention, in the image processing apparatus according to any one of the first to fourth aspects, the additional information embedding unit embeds the additional information in a least significant bit of a layer in the code stream. And
[0022]
Therefore, by embedding the additional information in the least significant bit of the layer in the code stream, it is possible to embed the additional information without increasing the image size.
[0023]
An eighth aspect of the present invention is the image processing apparatus according to any one of the first to seventh aspects, further comprising a reading optical system that optically reads the original image from a document.
[0024]
Therefore, the original image can be read from the document, and as a result, various processes such as image processing can be performed on the read original image.
[0025]
According to a ninth aspect of the present invention, in the image processing apparatus according to any one of the first to eighth aspects, the decompression means for decompressing the compressed original image in a sequence of decoding, inverse quantization, and inverse two-dimensional wavelet transform. It is characterized by having.
[0026]
Therefore, by using the decompression means of the JPEG2000 algorithm, an image compressed by the JPEG2000 algorithm can be decompressed by utilizing the characteristics of JPEG2000, and as a result, the decompressed image can be displayed on a display device or a paper Etc. can be executed.
[0027]
According to a tenth aspect of the present invention, there is provided the image processing apparatus according to the ninth aspect, further comprising a printer engine for forming an image decompressed by the decompression means on a recording material.
[0028]
Therefore, it is possible to form an expanded image on a recording material such as paper.
[0029]
The program according to claim 11 is interpreted by a computer provided in an image processing apparatus that generates a code stream by compressing an original image by a procedure of two-dimensional wavelet transform, quantization, and encoding. Divided into a plurality of regions, an additional information generating function of generating additional information related to the original image from the images of the plurality of regions divided by the region dividing unit, and an additional information generating unit that generates the additional information. And an additional information embedding function for embedding the additional information into the code stream.
[0030]
Therefore, by generating additional information related to the original image and embedding the generated additional information in the code stream, the image data of the original image has the additional information. When searching, for example, it is possible to easily search using the additional information. That is, by embedding additional information as needed, it becomes possible to easily perform search and management of image data, processing of image data, and the like.
[0031]
According to a twelfth aspect of the present invention, in the program according to the eleventh aspect, the additional information generation function generates character recognition information as the additional information by recognizing characters from the images of the plurality of areas.
[0032]
Therefore, by generating the character recognition information as additional information, the character recognition information is embedded in the code stream. For example, when searching for image data having a character area from a plurality of image data, the character recognition information can be easily obtained. It becomes possible to search. That is, by using the character recognition information, it is possible to easily search and manage image data.
[0033]
The invention according to claim 13 is the program according to claim 11 or 12, wherein the additional information generation function generates area identification information as the additional information by identifying area attributes of the plurality of areas.
[0034]
Therefore, by generating the region identification information as additional information, the region identification information is embedded in the code stream. For example, in a case where image data having a photograph region is searched from a plurality of image data, the region identification information can be more easily obtained. It becomes possible to search. That is, by using the area identification information, it is possible to easily search and manage the image data.
[0035]
According to a fourteenth aspect of the present invention, in the program according to the eleventh, twelfth, or thirteenth aspect, the additional information generation function generates tilt detection information as the additional information by detecting a tilt of an image in the plurality of regions.
[0036]
Therefore, by generating the inclination detection information as additional information, the inclination detection information is embedded in the code stream. For example, when an image is displayed on a display device or printed on paper, the inclination detection information can be more easily used. This makes it possible to correct the inclination of the image. That is, by using the inclination detection information, it is possible to easily perform processing on image data.
[0037]
The invention according to
[0038]
Therefore, by embedding the additional information in the main header of the code stream, for example, when searching for required image data from a plurality of image data, a search is performed using the additional information of the main header at an early stage of reading the main header. As a result, the processing time can be reduced.
[0039]
The invention according to
[0040]
Therefore, by embedding the additional information in the tile part header of the code stream, for example, the additional information for each tile (each area) is embedded in the corresponding tile part header, and the required image data is searched from a plurality of image data. In such cases, it is possible to easily search using the additional information of the tile part header.
[0041]
The invention according to
[0042]
Therefore, by embedding the additional information in the least significant bit of the layer in the code stream, it is possible to embed the additional information without increasing the image size.
[0043]
A computer readable storage medium according to the invention of
[0044]
Therefore, the same operation as the invention according to any one of claims 11 to 17 is achieved.
[0045]
BEST MODE FOR CARRYING OUT THE INVENTION
A first embodiment of the present invention will be described with reference to FIGS.
[0046]
In the present embodiment, the “JPEG2000 algorithm” is used. However, since the JPEG2000 algorithm itself is well known in various documents and gazettes, the details are omitted, and the outline is described.
[0047]
FIG. 1 is a functional block diagram for explaining the outline of the JPEG2000 algorithm.
The JPEG2000 algorithm includes a color space conversion /
[0048]
One of the features of JPEG2000 is that a two-dimensional discrete wavelet transform (DWT: Discrete Wavelet Transform) having an advantage of high image quality in a high compression area is used. Another major feature is that a functional block called a
[0049]
Note that a color space conversion /
[0050]
Hereinafter, the JPEG2000 algorithm, particularly the wavelet transform, will be described.
[0051]
FIG. 2 is a schematic diagram schematically showing an example of each of the divided components of the original image which is a color image. In a color image, as shown in FIG. 2, each
[0052]
At the time of encoding image data (see FIG. 1), data of each tile 111 of each
[0053]
FIG. 3 is a schematic diagram schematically showing subbands at each decomposition level when the number of decomposition levels is three. The two-dimensional wavelet transform /
[0054]
Next, in the quantization / dequantization unit 102 (see FIG. 1), after bits to be encoded are determined in the specified encoding order, a context is generated from bits around the target bits. The wavelet coefficients after the quantization process are divided into non-overlapping rectangles called “precincts” for each subband. This was introduced to make efficient use of memory in the implementation. Here, FIG. 4 is an explanatory diagram showing a precinct. As shown in FIG. 4, one precinct is composed of three rectangular regions that spatially match. Further, each precinct is divided into non-overlapping rectangular "code blocks". This is a basic unit when performing entropy coding.
[0055]
Although the coefficient values after the wavelet transform can be quantized and encoded as they are, in JPEG2000, in order to increase the encoding efficiency, the coefficient values are decomposed into "bit planes", and each pixel or code block is decomposed. The bit planes can be prioritized.
[0056]
Here, FIG. 5 is an explanatory diagram showing an example of a procedure for prioritizing bit planes. As shown in FIG. 5, in this example, the original image (32 × 32 pixels) is divided into four 16 × 16 pixel tiles, and the size of the precinct at the
[0057]
FIG. 5 also shows an explanatory diagram illustrating an example of a typical “layer” configuration concept for
[0058]
The layer structure is easy to understand when the wavelet coefficient value is viewed from the horizontal direction (bit plane direction). One layer is composed of an arbitrary number of bit planes.
In this example, layers 0, 1, 2, and 3 are made up of 1, 3, 1, and 3 bit planes, respectively. A layer including a bit plane closer to LSB (Least Significant Bit: Least Significant Bit) is subject to quantization first, and conversely, a layer closer to MSB (Most Significant Bit: Most Significant Bit) is quantized to the end. It will remain without being. A method of discarding from a layer close to the LSB is called truncation, and it is possible to finely control the quantization rate.
[0059]
The entropy coding / decoding unit 103 (see FIG. 1) performs coding on each tile 111 of each
[0060]
Finally, the tag processing unit 104 (see FIG. 1) combines all coded data from the entropy coding /
[0061]
On the other hand, at the time of decoding, image data is generated from the code stream of each tile 111 of each
[0062]
Next, a configuration example of the multifunction peripheral 1 which is the image processing apparatus of the present embodiment will be described. The
[0063]
FIG. 7 is a longitudinal sectional view schematically showing the multifunction peripheral 1 of the present embodiment. The
[0064]
A
[0065]
Below the
[0066]
The
[0067]
The
[0068]
The
[0069]
Next, an outline of image processing in the multifunction peripheral 1 of the present embodiment will be described with reference to FIG. FIG. 9 is a functional block diagram for explaining an outline of image processing in the multifunction peripheral 1. In the image processing of the multifunction peripheral 1, the
[0070]
As a character recognition process for recognizing characters from an image, for example, an OCR (Optical Character Recognition) process is used. Further, the additional
[0071]
The image processing of the
[0072]
Here, examples of the area attribute include various area attributes such as a character area, a photograph area, a figure area, a table area, a solid black area, and a background area. Note that the background area is a margin area corresponding to a margin of a document, but is not limited to this, and may be, for example, an area obtained by adding a space between lines to the margin area.
[0073]
On the other hand, the additional information includes, for example, character recognition information (character recognition result information) generated by the OCR process, and region identification information region (region identification result information) such as coordinate information and region attribute information generated by the region identification process. And tilt detection information (tilt detection result information) such as tilt angle correction information generated by the tilt detection processing. The character recognition information includes a character code, a character color, a font size, font information, character coordinate position information, certainty information (certainty information), and a title (character code). The title is a character code obtained by extracting the title area by the area identification processing and performing OCR processing on the title area. For example, a title such as “2002 meeting minutes.j2k” is embedded in a predetermined embedding position by a character code.
[0074]
Examples of the predetermined embedding position include headers such as a main header and a tile part header (see FIG. 6), the least significant bit of the image (embedding can be performed without increasing the image size), and a character area of the image. , There is a least significant bit, etc. In addition, when the image size is not an integral multiple of the tile, information is added to form an image of an integral multiple of the tile, but it is also possible to embed the image in the information portion to be added.
[0075]
Next, image processing executed by the
[0076]
As shown in FIG. 10, first, the process waits for reading of a document image by the scanner 2 (N in step S1). When the operator opens the
[0077]
When an original image is read from a document by the scanner 2 (Y in S1), the read original image is divided into a plurality of regions, and based on region attributes such as a character region, a photograph region, a drawing region, a table region, and a background region. Then, attributes of a plurality of areas mixed in the original image are identified (S2). Here, the area dividing means or the area dividing function is executed, and the additional information generating means or the additional information generating function is executed. As a method of area identification, a conventional method, for example, an area identification method using the density of black runs is sufficient, and the method is well-known, so that the description thereof will be omitted. Here, by identifying a plurality of areas, area identification information such as coordinate information and area attribute information can be obtained for each of the plurality of areas. Note that the image processing of the present embodiment is performed on the original image read by the
[0078]
Next, an OCR process is performed on the plurality of divided areas (S3). That is, characters are recognized from the image of each of the plurality of regions. Here, the additional information generating means or the additional information generating function is executed. Note that the OCR processing includes a pattern matching method, a structure analysis method, and the like. These methods are known, and thus description thereof is omitted. Here, by performing the OCR process for each of the plurality of regions, the character recognition information such as the character code, the character color, the font size, the font information, the coordinate position information of the character, and the certainty information (reliability information) is obtained for each of the plurality of regions. Is obtained.
[0079]
Next, the original image is compressed based on the JPEG2000 algorithm (S4). As a result, a code stream is generated from the original image based on the JPEG2000 algorithm. Then, the area identification information and the character recognition information are embedded as additional information at a predetermined embedding position of the code stream (S5). Here, additional information embedding means or additional information embedding function is executed. For example, as shown in FIG. 11, the additional information is embedded in the least significant bit of the layer in the code stream. As a result, embedding can be performed without increasing the image size. The area R in which the additional information is embedded is an area corresponding to the character area of the original image.
[0080]
Here, the data is embedded in the least significant bit of the area R corresponding to the character area of the image. However, the present invention is not limited to this. For example, the data may be simply embedded in the least significant bit. Further, although the area identification information and the character recognition information are embedded as additional information at a predetermined embedding position, the present invention is not limited to this. For example, only one of the area identification information and the character recognition information is embedded at a predetermined embedding position. When the inclination detection processing is executed, the inclination detection information such as the inclination angle correction information of the inclination detection result may be embedded at a predetermined embedding position. Alternatively, the original image may be compressed while embedding the additional information by simultaneously executing steps S4 and S5. Here, since the original image is compressed at a plurality of resolutions based on the JPEG2000 algorithm, OCR processing may be performed for each resolution to embed character recognition information at a predetermined embedding position.
[0081]
Finally, the image data (compressed data) in which the additional information is embedded is stored in the
[0082]
After that, the image data stored in the
In order to transmit only image data having a similar image, when searching for image data having a similar image from a plurality of image data stored as image files in the
[0083]
The image of the image data may be subjected to image processing such as scaling (enlargement and reduction), rotation, and black-and-white inversion. In such image processing, the character image in the character area M is scaled by changing the font size of the character area M, and the image is held as images of various resolutions by the compression means of the JPEG2000 algorithm. The image can be freely changed from high image quality to low image quality. Further, when the original image is displayed on a display device or the like, the image can be expanded according to the resolution of the display device or the like.
[0084]
As described above, in the present embodiment, the original image is divided into a plurality of regions, the attributes of the plurality of regions are identified, the region identification information is generated (S2), and the OCR process is performed on the divided plurality of regions to perform the character By generating recognition information (S3) and embedding the generated area identification information and character recognition information at predetermined embedding positions of the code stream (S5), for example, image data required from a plurality of image data (compressed data) is obtained. It is possible to easily search using additional information, for example, when searching for. That is, by embedding the additional information as needed, search and management of image data, processing of image data, and the like can be easily performed. In addition, since additional information corresponding to each of a plurality of regions of the original image, such as region identification information and character recognition information, can be obtained, a necessary region, such as a character region or a photograph region, can be easily searched from the image. Can be extracted. Further, by using the compression means and the decompression means of the JPEG2000 algorithm, it is possible to execute various image processing utilizing the characteristics of JPEG2000.
[0085]
A second embodiment of the present invention will be described with reference to FIG. FIG. 12 is a flowchart schematically showing the flow of image processing according to the present embodiment. The same parts as those described above are denoted by the same reference numerals.
[0086]
The basic configuration of this embodiment is the same as that of the first embodiment, but the difference from the first embodiment is that the image processing executed by the
[0087]
Image processing executed by the
[0088]
As shown in FIG. 12, first, the process waits for reading of a document image by the scanner 2 (N in step S11). When the operator opens the
[0089]
When an original image is read from a document by the scanner 2 (Y in S11), the read original image is divided into a plurality of tiles 111 (a plurality of areas: see FIG. 1) by tiling processing (S12). Here, the area dividing means or the area dividing function is executed.
Thereby, the original image is divided into a plurality of tiles 111 (a plurality of areas). This tiling process is performed based on the JPEG2000 algorithm.
[0090]
Next, an OCR process is performed on the plurality of divided tiles 111 (S13). That is, characters are recognized from the image of each of the plurality of tiles 111. Here, the additional information generating means or the additional information generating function is executed. Note that the OCR processing includes a pattern matching method, a structure analysis method, and the like. These methods are known, and thus description thereof is omitted. Here, by executing the OCR process, character recognition information such as a character code, a character color, a font size, font information, character coordinate position information, and certainty information (reliability information) can be obtained for each tile 111.
[0091]
Next, the original image is compressed based on the JPEG2000 algorithm (S14). As a result, a code stream is generated from the original image based on the JPEG2000 algorithm. Then, character recognition information is embedded as additional information at a predetermined embedding position of the code stream (S15). Here, additional information embedding means or additional information embedding function is executed. For example, additional information for each tile 111 is embedded in a corresponding tile part header. Since the tiling process is executed in step S12, it is not necessary to execute the tiling process in step S14.
[0092]
Here, the character recognition information is embedded at a predetermined embedding position as additional information. However, the present invention is not limited to this. For example, when the inclination detection processing is executed, the inclination detection information such as the inclination angle correction information of the inclination detection result is executed. The detection information may be embedded at a predetermined embedding position. Alternatively, the image may be compressed while embedding the additional information by executing Step S14 and Step S15 simultaneously.
[0093]
Finally, the image data (compressed data) in which the additional information is embedded is stored as an image file in the RAM 32 (S16). Here, when there are a plurality of originals, the processing from steps S11 to S16 is repeated for each original, and a plurality of image files are stored in the
[0094]
After that, the image data stored in the
[0095]
As described above, in the present embodiment, the original image is divided into a plurality of tiles 111 (a plurality of areas) by performing tiling processing (S12), and the OCR processing is performed on the plurality of divided tiles 111 to perform character recognition. By generating information (S13) and embedding the generated character recognition information in a predetermined embedding position of the code stream (S15), for example, when searching for required image data from a plurality of image data (compressed data), etc. It is possible to easily search using the additional information. That is, by embedding the additional information as needed, search and management of image data, processing of image data, and the like can be easily performed. Further, since additional information corresponding to each tile 11 of the original image, for example, character recognition information or the like is obtained, a necessary area, for example, a character area can be easily searched and extracted from the image. Further, by using the compression means and the decompression means of the JPEG2000 algorithm, it is possible to execute various image processing utilizing the characteristics of JPEG2000.
[0096]
In each of the embodiments, the
[0097]
Generally, a program installed in the HDD of a personal computer is recorded on an optical information recording medium such as a CD-ROM or a DVD-ROM, or a magnetic medium such as an FD, and the recorded program is stored in the HDD. Installed. Therefore, a portable storage medium such as an optical information recording medium such as a CD-ROM or a magnetic medium such as an FD can also be a storage medium for storing the above-described program related to image processing. Further, such a program may be fetched from outside via a communication control device, for example, and installed in the HDD.
[0098]
【The invention's effect】
According to the first aspect of the present invention, in an image processing apparatus that generates a code stream by compressing an original image in a procedure of two-dimensional wavelet transform, quantization, and encoding, a region division that divides the original image into a plurality of regions Means, additional information generating means for generating additional information related to the original image from the images of the plurality of areas divided by the area dividing means, and additional information generated by the additional information generating means in the code stream. And additional information embedding means for embedding, the image data of the original image has additional information, for example, when searching for required image data from a plurality of image data. , It is possible to easily search. That is, by embedding the additional information as needed, search and management of image data, processing of image data, and the like can be easily performed.
[0099]
According to the second aspect of the present invention, in the image processing apparatus according to the first aspect, the additional information generating unit generates character recognition information as the additional information by recognizing a character from the images of the plurality of regions. Since the character recognition information is embedded in the code stream, for example, when searching for image data having a character area from a plurality of image data, the character recognition information can be easily searched. . That is, by using the character recognition information, search and management of image data can be easily performed.
[0100]
According to the third aspect of the present invention, in the image processing apparatus according to the first or second aspect, the additional information generation unit generates area identification information as the additional information by identifying area attributes of the plurality of areas. Because of this feature, the area identification information is embedded in the code stream, and, for example, when searching for image data having a photo area from a plurality of image data, it is possible to easily search using the area identification information. Become. That is, by using the area identification information, it is possible to easily search and manage the image data.
[0101]
According to a fourth aspect of the present invention, in the image processing apparatus according to the first, second or third aspect, the additional information generating unit detects the inclination of the image of the plurality of regions to detect the inclination detection information as the additional information. Since the tilt detection information is embedded in the code stream, for example, when the image is displayed on a display device or printed on paper, the image can be easily detected based on the tilt detection information. The inclination can be corrected. That is, by using the inclination detection information, it is possible to easily perform processing on image data.
[0102]
According to a fifth aspect of the present invention, in the image processing apparatus according to any one of the first to fourth aspects, the additional information embedding unit embeds the additional information in a main header of the code stream. Therefore, for example, when searching for required image data from a plurality of image data, it is possible to search using the additional information of the main header at an early stage of reading the main header. Time can be reduced.
[0103]
According to the invention described in
[0104]
According to a seventh aspect of the present invention, in the image processing apparatus according to any one of the first to fourth aspects, the additional information embedding unit embeds the additional information in a least significant bit of a layer in the code stream. , Additional information can be embedded without increasing the image size.
[0105]
According to an eighth aspect of the present invention, the image processing apparatus according to any one of the first to seventh aspects further comprises a reading optical system for optically reading the original image from the original. It is possible to read the original image from the computer, and as a result, it is possible to execute various processes such as image processing on the read original image.
[0106]
According to a ninth aspect of the present invention, in the image processing apparatus according to any one of the first to eighth aspects, the compressed original image is decompressed in a procedure of decoding, inverse quantization, and inverse two-dimensional wavelet transform. By using the decompression means of the JPEG2000 algorithm, it is possible to decompress an image compressed by the JPEG2000 algorithm by utilizing the characteristics of JPEG2000. Display of an image on a display device or the like, printing on paper or the like can be executed.
[0107]
According to a tenth aspect of the present invention, in the image processing apparatus of the ninth aspect, a printer engine for forming an image expanded by the expansion means on a recording material is provided. An image can be formed on a recording material such as paper.
[0108]
The program according to claim 11 is interpreted by a computer provided in an image processing apparatus that generates a code stream by compressing an original image by a procedure of two-dimensional wavelet transform, quantization, and encoding. Divided into a plurality of regions, an additional information generating function of generating additional information related to the original image from the images of the plurality of regions divided by the region dividing unit, and an additional information generating unit that generates the additional information. And the additional information embedding function of embedding the additional information into the code stream, the image data of the original image has the additional information, for example, when searching for necessary image data from a plurality of image data , Etc., can be easily searched using additional information. That is, by embedding the additional information as needed, search and management of image data, processing of image data, and the like can be easily performed.
[0109]
According to the twelfth aspect of the present invention, in the program according to the eleventh aspect, the additional information generation function generates character recognition information as the additional information by recognizing characters from the images of the plurality of regions. This character recognition information is embedded in the code stream. For example, when searching for image data having a character area from a plurality of image data, it is possible to easily search using the character recognition information. That is, by using the character recognition information, search and management of image data can be easily performed.
[0110]
According to a thirteenth aspect of the present invention, in the program according to the eleventh or twelfth aspect, the additional information generation function generates area identification information as the additional information by identifying area attributes of the plurality of areas. The area identification information is embedded in the code stream. For example, when searching for image data having a photographic area from a plurality of pieces of image data, it is possible to easily search using the area identification information. That is, by using the area identification information, search and management of image data can be easily performed.
[0111]
According to a fourteenth aspect of the present invention, in the program according to the eleventh, twelfth or thirteenth aspect, the additional information generation function generates tilt detection information as the additional information by detecting a tilt of an image in the plurality of regions. Therefore, the inclination detection information is embedded in the code stream, and the inclination of the image can be easily corrected by the inclination detection information, for example, when the image is displayed on a display device or printed on paper. It becomes. That is, by using the inclination detection information, it is possible to easily perform processing on image data.
[0112]
According to the invention described in
[0113]
According to the invention of
[0114]
According to the invention described in
[0115]
According to the computer-readable storage medium of the invention of
[Brief description of the drawings]
FIG. 1 is a functional block diagram for explaining an outline of a JPEG2000 algorithm.
FIG. 2 is a schematic diagram schematically showing an example of each divided component of an original image that is a color image.
FIG. 3 is a schematic diagram schematically showing subbands at each decomposition level when the number of decomposition levels is three.
FIG. 4 is an explanatory diagram showing a precinct.
FIG. 5 is an explanatory diagram showing an example of a procedure for ranking bit planes.
FIG. 6 is a schematic diagram schematically showing an example of a structure of a code stream.
FIG. 7 is a longitudinal sectional view schematically showing the multifunction peripheral according to the first embodiment of the present invention.
FIG. 8 is a block diagram schematically showing an electrical connection of a control system related to image processing in a control system of the multifunction peripheral.
FIG. 9 is a functional block diagram for describing an outline of image processing in the multifunction peripheral.
FIG. 10 is a flowchart schematically showing a flow of image processing according to the first embodiment of the present invention.
FIG. 11 is an explanatory diagram schematically showing an embedding position of additional information by image processing according to the first embodiment of the present invention.
FIG. 12 is a flowchart schematically showing a flow of image processing according to the second embodiment of the present invention.
[Explanation of symbols]
1 Image processing device (compound machine)
7 Reading optical system
17 Printer Engine
30 Computer (CPU)
31 Storage media (ROM)
Claims (18)
前記原画像を複数領域に分割する領域分割手段と、
前記領域分割手段により分割された前記複数領域の画像から前記原画像に関連する付加情報を生成する付加情報生成手段と、
前記付加情報生成手段により生成された付加情報を前記コードストリームに埋め込む付加情報埋込手段と、を備えることを特徴とする画像処理装置。In an image processing apparatus that generates a code stream by compressing an original image by a procedure of two-dimensional wavelet transform, quantization, and encoding,
Area dividing means for dividing the original image into a plurality of areas,
Additional information generating means for generating additional information related to the original image from the image of the plurality of areas divided by the area dividing means,
An image processing apparatus, comprising: additional information embedding means for embedding the additional information generated by the additional information generating means in the code stream.
原画像を複数領域に分割する領域分割機能と、
前記領域分割手段により分割された前記複数領域の画像から前記原画像に関連する付加情報を生成する付加情報生成機能と、
前記付加情報生成手段により生成された付加情報を前記コードストリームに埋め込む付加情報埋込機能と、を実行させるプログラム。The original image is interpreted by a computer provided with an image processing apparatus that generates a code stream by compressing the original image in a procedure of two-dimensional wavelet transform, quantization, and encoding.
An area division function for dividing an original image into a plurality of areas,
An additional information generation function of generating additional information related to the original image from an image of the plurality of regions divided by the region dividing unit;
A program for executing an additional information embedding function of embedding the additional information generated by the additional information generating means in the code stream.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003003546A JP4194373B2 (en) | 2003-01-09 | 2003-01-09 | Image processing apparatus, program, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003003546A JP4194373B2 (en) | 2003-01-09 | 2003-01-09 | Image processing apparatus, program, and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004221679A true JP2004221679A (en) | 2004-08-05 |
JP4194373B2 JP4194373B2 (en) | 2008-12-10 |
Family
ID=32894778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003003546A Expired - Fee Related JP4194373B2 (en) | 2003-01-09 | 2003-01-09 | Image processing apparatus, program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4194373B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7792388B2 (en) | 2005-08-23 | 2010-09-07 | Ricoh Company, Ltd. | Controlling format of a compound image |
-
2003
- 2003-01-09 JP JP2003003546A patent/JP4194373B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7792388B2 (en) | 2005-08-23 | 2010-09-07 | Ricoh Company, Ltd. | Controlling format of a compound image |
Also Published As
Publication number | Publication date |
---|---|
JP4194373B2 (en) | 2008-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8150179B2 (en) | Image processing apparatus | |
JP2004147142A (en) | Image processor, program, and storage medium | |
WO2006017382A1 (en) | Methods and apparatus for communicating and displaying compressed image data | |
JP2004104650A (en) | Image processor, image reader, image forming device, program for image processing and storage medium | |
WO2006001490A1 (en) | Moving image encoding apparatus and moving image encoding method | |
JP4136951B2 (en) | Image processing apparatus, program, and storage medium | |
US7245775B2 (en) | Image processing apparatus for compositing images | |
US20040218817A1 (en) | Image processing apparatus that decomposites composite images | |
EP1635576A1 (en) | Image processing device and image processing program | |
JP2004227406A (en) | Image processor, program and storage medium | |
JP4194373B2 (en) | Image processing apparatus, program, and storage medium | |
JP2004236230A (en) | Image processing apparatus, program, and storage medium | |
JP3912752B2 (en) | Image processing apparatus, program, and storage medium | |
JP4169190B2 (en) | Image reading apparatus, image forming apparatus, image reading processing method, program, and storage medium | |
JP2004229097A (en) | Image processor, program and storage medium | |
JP4111909B2 (en) | Image processing apparatus, image processing program, and storage medium | |
JP2004229096A (en) | Image processor, program and storage medium | |
JP4766586B2 (en) | Image processing apparatus, image processing method, program, and information recording medium | |
JP4175613B2 (en) | Image reading apparatus, image forming apparatus, image reading processing method, program, and storage medium | |
JP4280508B2 (en) | Misalignment correction apparatus, image processing apparatus, program, storage medium, and misalignment correction method | |
JP4052952B2 (en) | Image processing apparatus, image processing method, program, and storage medium | |
JP2004112532A (en) | Image processing apparatus, image reading apparatus, image forming apparatus, television camera, image outputting apparatus, information processing apparatus, program, and storage medium | |
JP3784755B2 (en) | Image processing apparatus, image forming apparatus, program, and storage medium | |
JP4090352B2 (en) | Image processing apparatus, image processing method, image forming apparatus, program, and storage medium | |
JP2004228952A (en) | Image processor, program for processing image, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20041008 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051116 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20051021 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060905 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070903 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070911 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080507 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080620 |
|
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: 20080826 |
|
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: 20080922 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111003 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121003 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131003 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |