(57)【要約】【課題】  画像の背景領域の高周波成分を低減する画像処理装置、方法において、入力画像を縮小した画像に対して空間フィルタを適用し、適用後の画像を拡大することで高周波低減画像を生成することで、高速に処理を行う。【解決手段】  その際、縮小時・空間フィルタ適用時に、処理対象画素中の背景画素の画素値を重視して処理することで、高周波低減画像における背景領域に前景領域の色味が残存することを防止する。【選択図】  図１０
2013020456.tif 000002
【特許請求の範囲】
【請求項１】
デジタル画像データに対して、画像の背景部分の高周波成分を低減する画像処理装置において、
画像を入力する画像入力手段と、
前記画像入力手段によって入力された入力画像の各画素に対し、背景画素の存在領域と前景画素の存在領域を指定する背景領域指定手段と、
前記入力画像に対し、高周波成分の低減処理を行い、低減画像を得る高周波低減手段と、
前記入力画像において前記背景領域指定手段で指定された背景領域に対し、前記低減画像における前記背景領域の画素値の合成を行う合成手段と、を持ち、
前記高周波低減手段は、
画像縮小を行う第一処理部と、空間フィルタ処理を行う第二処理部と、画像拡大を行う第三処理部と、を持ち、
前記第一処理部、前記第二処理部において、前記背景領域の境界部を処理する際に、前記背景画素の画素値を前記前景画素の画素値よりも重視して処理を行うことを特徴とする、画像処理装置。
【請求項２】
前記画像処理装置は、
処理強度を指定する処理強度指定手段を持ち、
前記高周波低減手段は、
前記入力画像の画素数と前記処理強度と前記背景領域の情報の少なくともいずれか一つに応じて、前記第一処理部および前記第三処理部の拡縮倍率と前記第二処理部の空間フィルタサイズの少なくとも一方を決定する制御手段を持つ
ことを特徴とする、請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、前記第一処理部及び前記第三処理部の拡縮倍率を等倍に決定した際には、前記第一処理部及び前記第三処理部を行わないことを特徴とする、請求項２に記載の画像処理装置。
【請求項４】
前記第一処理部は、背景画素に重みをつけて平均値縮小処理を行うことを特徴とする、請求項１乃至請求項３の何れか１項に記載の画像処理装置。
【請求項５】
前記第三処理部は、ニアレストネイバー法による画像拡大後に背景画素に重みをつけて平滑化フィルタ処理を行うことを繰り返すことを特徴とする、請求項１乃至請求項４の何れか１項に記載の画像処理装置。
【請求項６】
デジタル画像データに対して、画像の背景部分の高周波成分を低減する画像処理方法において、
画像を入力する画像入力工程と、
前記画像入力手段によって入力された入力画像の各画素に対し、背景画素の存在領域と前景画素の存在領域を指定する背景領域指定工程と、
前記入力画像に対し、高周波成分の低減処理を行い、低減画像を得る高周波低減工程と、
前記入力画像において前記背景領域指定工程で指定された背景領域に対し、前記低減画像における前記背景領域の画素値の合成を行う合成工程と、を持ち、
前記高周波低減工程は、
画像縮小を行う第一処理工程と、空間フィルタ処理を行う第二処理工程と、画像拡大を行う第三処理工程と、を持ち、
前記第一処理工程、前記第二処理工程において、前記背景領域の境界部を処理する際に、前記背景画素の画素値を前記前景画素の画素値よりも重視して処理を行うことを特徴とする、画像処理方法。
【請求項７】
請求項６に記載の画像処理方法を実行するためのプログラムコードが記憶された記憶媒体。
【請求項８】
デジタル画像データに対して、画像の背景部分の高周波成分を低減する画像処理装置において、
画像を入力する画像入力手段と、
前記画像入力手段によって入力された入力画像の各画素に対し、背景画素の存在領域と前景画素の存在領域を指定する背景領域指定手段と、
前記入力画像に対し、高周波成分の低減処理を行い、低減画像を得る高周波低減手段と、
前記入力画像において前記背景領域指定手段で指定された背景領域に対し、前記低減画像における前記背景領域の画素値の合成を行う合成手段と、を持ち、
前記高周波低減手段は、
画像縮小を行う第一処理部と、空間フィルタ処理を行う第二処理部と、画像拡大を行う第三処理部と、を持ち、
前記第一処理部、前記第二処理部それぞれの処理は、
前記入力画像を小領域に区分した領域を処理対象として処理するものであって、
前記処理対象の領域が前記背景領域指定手段によって前記前景画素と前記背景画素との混在領域であると指定された際には、
処理対象の領域における、処理前の背景画素の画素値平均をＡとし、
処理対象の領域における、処理前の全画素の画素値平均をＢとし、
処理対象の領域における、処理後の全画素の画素値平均をＣとしたときに
それぞれの画素値平均がＢ＜Ｃ＜Ａの関係を満たすようにＣを決定することを特徴とする、画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、デジタルカメラなどによって撮影された画像に対する画像処理に関するものであり、特に画像の背景領域に対して高周波低減処理を行う画像処理に関する。
【背景技術】
【０００２】
近年のデジタルカメラを用いた撮影では、デジタルカメラによって写真をありのままに撮影するだけでなく、撮影時や撮影後に画像データに対してデジタル処理を施すことで、写真に任意の補正を施すことができる。
【０００３】
このような補正の一つとして、画像データ中に任意の被写体を指定して、被写体以外の領域にぼかし処理を行う、「背景ぼかし処理」が知られている。「背景ぼかし処理」は本来、一眼レフカメラなどで被写界深度を浅くした状態で被写体にピントを合わせて撮影することで得られる撮影テクニックを、デジタル的に模擬したものである。「背景ぼかし処理」では、カメラの種類や撮影時の状態によらず、任意に背景ぼかし効果を与えられるため、非常に有用な機能である。また、被写体以外の領域の特定方向の高周波成分を意図的に低減することで、移動中の被写体を追随しながら流し撮りした際の画像のような効果を得る、「流し撮り処理」も知られている。これらの処理は、画像中の任意の領域のみの高周波成分を任意の量で低減することで画像効果を生み出している。背景ぼかし処理機能を用いることで、たとえば図１のような撮影画像から図２のような背景のみが大きくぼけた画像を得ることができ、印象的なポートレート作品を作り出すことができる。
【０００４】
ところで、背景ぼかし処理や流し撮り処理では、通常の画像全域にわたるぼかし処理などと異なり、二点に留意する必要がある。
【０００５】
一点目としては、背景のみにぼかし処理を適用するために、画像の前景領域と背景領域を区別する手段を提供する必要がある。これは例えば、写真プレビュー上で被写体領域をマウスやタッチセンサーなどによってユーザ指定させる方法や、写真撮影時の測距情報やストロボ照射時の各領域の光量などから自動で算出する方法がある。特許文献１には、撮影時にストロボ照射条件と露光条件を変化させた二枚のプレビュー画像の輝度差を求めることで、前景領域と背景領域を区別する方法が開示されている。
【０００６】
二点目としては、背景領域のぼかしフィルタ処理時には、前景領域の画素値を参照しないように制御する必要がある。実際の一眼レフカメラでの撮影時でも、背景部分のぼけ画像は背景領域に存在している物体がぼけることで発生しているため、たとえば前景と背景の隣接する領域でも、ぼけ画像の色味は前景の色味の影響を受けずに背景の色味の影響によってのみ決定される。これを無視してしまうと、良好な背景ぼかし処理結果が得られず、たとえば図３のような処理結果となってしまう。この図では、前景が明るく背景が暗い画像に対して、前述の制御を行わずに背景ぼかし処理を行っている。正しくは図２のような効果を得るべきところだが、前景の色味の影響を受けたぼかし処理を行っているために、前景と背景の境界領域で前景の色味が染み出してしまい、まるで被写体の背後に後光が差したような不自然な画像となってしまっている。流し撮り処理においても、同様の課題が発生する。
【０００７】
これを制御する方法として、前景と背景の隣接する領域では背景領域の色味を重視したぼかし画像を得ることが有効である。特許文献２には、前景と背景の隣接領域に背景領域の画像を与えることで、背景領域の色味を重視したぼかし画像を得る方法が開示されている。
【０００８】
ところで、背景ぼかし処理時には、その画像処理効果を十分に得るために背景画像を広範囲にぼかすことが求められる。ぼかし処理を行う方法として一般にＮ×Ｎの空間フィルタを使用することが知られているが、背景画像を大きくぼかすには空間フィルタのサイズをその分大きくとる必要がある。また、画像に対するぼかし処理に必要なフィルタサイズは、画像の解像度に比例する。つまり、同じようなぼかし効果を得る場合であっても、現画像の画素数が大きいときにはより大きなフィルタサイズを必要とする。近年のデジタルカメラの高画素化は著しく、この点でもより大きい空間フィルタサイズを要することとなる。
【０００９】
背景ぼかし処理とは別に、画像に対して広範囲にぼかし処理を行う際の工夫として、入力画像を縮小処理し、平滑化フィルタを適用し、拡大処理する技術が知られている。特許文献３には、ある画像に対してＮ×Ｎ画素の平滑化フィルタを適用したい場合に、平滑化処理前に画像を１／Ｍに縮小し、（Ｎ／Ｍ）×（Ｎ／Ｍ）画素の平滑化フィルタを適用し、平滑化処理後に画像をＭ倍拡大する方法が開示されている。このような手順によって、処理時間を抑えつつ、通常のＮｘＮフィルタ適用時と同様のぼかし効果が得られる。当該技術は通常のぼかし処理であれば有効な手段であるが、背景ぼかしに適用するにあたっては課題が発生する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０００−３０７９３５号公報
【特許文献２】特開２００２−３００３７３号公報
【特許文献３】特開平１０−２３２９２９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
すなわち、背景ぼかし処理時には前述の通り、ぼかし結果の画素値を求める際に前景領域の画素値を参照しないように制御する必要がある。
【００１２】
しかし、当該技術では画像の縮小処理時に前景画素／背景画素にかかわらずに画素値参照を行うため、縮小過程で前景領域の画素値が参照されてしまう。
【００１３】
その結果、たとえ縮小処理後の平滑化フィルタ処理において前景画素／背景画素の区別を伴った背景ぼかし処理を行ったとしても、縮小処理後の背景画素の画素値には、縮小処理前の前景画素の画素値の影響が含まれる事態が発生する。
【００１４】
以上のとおり、従来の手法では「背景ぼかし処理」を画像弊害なく高速に行うことができなかった。本発明の画像処理方法は、このような事情に鑑みてなされたものである。
【課題を解決するための手段】
【００１５】
本発明の画像処理装置は、
画像を入力する画像入力手段と、
前記画像入力手段によって入力された入力画像の各画素に対し、背景画素の存在領域と前景画素の存在領域を指定する背景領域指定手段と、
前記入力画像に対し、高周波成分の低減処理を行い、低減画像を得る高周波低減手段と、
前記入力画像において前記背景領域指定手段で指定された背景領域に対し、前記低減画像における前記背景領域の画素値の合成を行う合成手段と、を持ち、
前記高周波低減手段は、
画像縮小を行う第一処理部と、空間フィルタ処理を行う第二処理部と、画像拡大を行う第三処理部と、を持ち、
前記第一処理部、前記第二処理部において、前記背景領域の境界部を処理する際に、前記背景画素の画素値を前記前景画素の画素値よりも重視して処理を行うことを特徴とする。
【発明の効果】
【００１６】
本発明における画像処理装置を用いることで、画像の背景に対して前景の色味の影響を受けずに高周波成分低減処理を高速に実施できる。
【図面の簡単な説明】
【００１７】
【図１】背景ぼかし処理前の画像
【図２】背景ぼかし処理後の画像
【図３】不適切な背景ぼかし処理後の画像
【図４】本発明の画像処理方法を実行するためのハードウェア構成
【図５】実施例におけるアプリケーションの画面構成
【図６】背景ぼかし処理対象画像選択時のアプリケーションの画面構成
【図７】前景領域指定時のアプリケーションの画面構成
【図８】本発明の画像処理方法を搭載したアプリケーションのマウスカーソル例
【図９】背景ぼかし処理結果のプレビュー時のアプリケーションの画面構成
【図１０】実施例１における画像処理の全体フロー
【図１１】実施例１におけるＳ１４００の詳細フロー
【図１２】実施例１におけるＳ１６００の詳細フロー
【図１３】実施例１におけるＳ１６００で適用する二次元フィルタの係数
【図１４】実施例１の応用におけるＳ１６００で適用する一次元フィルタの係数
【図１５】実施例１におけるＳ１７００の詳細フロー
【図１６】実施例２における画像処理の全体フロー
【図１７】実施例３における画像処理の全体フロー
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について詳細に説明する。
【００１９】
図４に本発明で使用する画像処理方法のブロック図を示す。画像処理方法として、パーソナルコンピュータ（ＰＣ）を使用すると想定して説明するが、これはあくまで実施の１つの形態を例として示したものであり、本発明は以下の実施に限定されるものではない。
【００２０】
（ハードウェア構成の説明）
ＣＰＵ２０１は、中央演算ユニット（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で、他の機能ブロックや装置の制御を行う。ブリッジ部２０２は、ＣＰＵ２０１と他の機能ブロックの間でデータのやり取りを制御する機能を提供している。
【００２１】
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０３は読み込み専用の不揮発メモリであり、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）と呼ばれるプログラムが格納されている。ＢＩＯＳはＰＣが起動したときに最初に実行されるプログラムであり、２次記憶装置２０５、表示制御装置２０７、入力装置２０９、出力装置２１０などの周辺機器の基本入出力機能を制御するものである。
【００２２】
ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０４は、高速の読み／書き可能な記憶領域を提供する。
【００２３】
２次記憶装置２０５は、大容量の記憶領域を提供するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。ＢＩＯＳが実行されると、ＨＤＤに格納されているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が実行される。ＯＳはすべてのアプリケーションで利用可能な基本的な機能や、アプリケーションの管理、基本ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を提供する。アプリケーションは、ＯＳが提供するＧＵＩを組み合わせることで、アプリケーション独自の機能を実現するＵＩを提供できる。
【００２４】
ＯＳや、他のアプリケーションの実行プログラムや作業用に使用しているデータは、必要に応じてＲＡＭ２０４または２次記憶装置２０５に格納される。
【００２５】
本実施例においては、本発明で使用する画像処理方法はアプリケーション上に搭載されており、該アプリケーションの実行を介して利用する。なお、本発明で使用する画像処理方法を搭載したアプリケーションの説明は後述する。
【００２６】
表示制御部２０６は、ＯＳやアプリケーションに対して行われるユーザの操作の結果をＧＵＩの画像データとして生成し、表示装置２０７で表示するための制御を行う。表示装置２０７には液晶ディスプレイや、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）ディスプレイが使用できる。
【００２７】
Ｉ／Ｏ制御部２０８は、複数の入力装置２０９、出力装置２１０とのインターフェースを提供するものである。代表的なインターフェースとして、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）やＰＳ／２（Ｐｅｒｓｏｎａｌ  Ｓｙｓｔｅｍ／２）がある。
【００２８】
入力装置２０９には、キーボード、マウスといったユーザの意志を画像検索装置に入力するものがある。さらに、デジタルカメラ、ＵＳＢメモリ、ＣＦ（Ｃｏｍｐａｃｔ  Ｆｌａｓｈ）メモリ、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカードといった記憶装置などを接続することで、画像データを転送することも可能である。
【００２９】
出力装置２１０にはプリンタが接続され、所望の印刷結果を得ることが可能である。
【００３０】
（アプリの説明）
以下、本発明で使用する画像処理方法を搭載したアプリケーション（以下、本アプリケーションと呼ぶ）について説明する。
【００３１】
前述のＰＣを起動し、ＯＳから本アプリケーションを呼び出すことで本アプリケーションは起動する。
【００３２】
起動時の本アプリケーションの画面を図５に示す。本アプリケーションの操作の流れを説明する前に、本アプリケーションを構成するＧＵＩ部品の名称と機能概要を説明する。
【００３３】
５００は本アプリケーションのメインウィンドウである。メインウィンドウは前述の通り、ＯＳが提供するＧＵＩを組み合わせて形成されている。ウィンドウの拡大縮小、移動、最大化、最小化といった基本的な操作はＯＳが提供する機能により実現するものであるため、詳細な説明は割愛する。
【００３４】
画像選択ボタン５０１は背景ぼかし処理の対象画像を選択する際に使用する。このボタンを押すことで、ファイル選択ダイアログ（図示せず）が起動する。ユーザはファイルダイアログを通じて、２次記憶装置２０５や入力装置２０９に接続された各種記憶装置に記憶された任意の画像ファイルを選択することが可能である。なお、すでに画像が選択済みの状態でこのボタンを押した場合には、すでに選択した画像を取り消して再度画像を選択能となる。
【００３５】
画像プレビュー領域５０５には、画像選択ボタン５０１の操作によって選択された画像のプレビューが表示される。画像が未選択の場合には白紙表示がされる。
【００３６】
画像ファイル名表示領域５０６には、画像選択ボタン５０１の操作によって選択された画像のファイル名情報が表示される。画像が未選択の場合には「Ｎｏ  Ｉｍａｇｅ」の文字列が表示される。
【００３７】
また、この領域は後述の領域指定ボタン５０３押下時には前景領域を指定するための入力領域としても使用される。さらに、前景領域を指定した状態において後述の強度指定スライダー５０２を操作した際の背景ぼかし効果のプレビュー画面としても使用される。
【００３８】
領域指定ボタン５０３は画像中の前景領域を指定する際に使用する。このボタンを押すことで、マウスを介して画像プレビュー領域５０５中に任意の領域を指定可能となる。なお、すでに領域が選択済みの状態でこのボタンを押した場合には、すでに指定した領域を取り消して再度領域を指定可能となる。
【００３９】
強度指定スライダー５０２は背景ぼかしの強度を指定する際に使用する。このスライダーを操作することで、背景ぼかしの強度をオフ、弱、中、強の４段階に指定可能となる。強度を強くするほど、背景に対しより強いぼかし効果が得られる。強度指定スライダー操作時には瞬時に背景ぼかしの画像処理が実行され、実行結果が画像プレビュー領域に反映される。これにより、ユーザは背景ぼかし処理時の画像効果を確認しながら適切な強度を指定できる。
【００４０】
決定ボタン５０４は背景ぼかし処理を決定して処理後の画像を保存する際に使用する。このボタンを押すことで、ファイル選択ダイアログ（図示せず）が起動する。ユーザはファイルダイアログを通じて、２次記憶装置２０５や入力装置２０９に接続された各種記憶装置に任意のファイル名にて画像を保存できる。
【００４１】
以下、本アプリケーションを使用した実際の操作の流れを説明する。
【００４２】
前述の通り、本アプリケーション起動時には図５の状態のダイアログが表示される。このときはまだ画像未選択状態であるため、強度指定スライダー５０２、領域指定ボタン５０３、決定ボタン５０４はグレーアウト表示がされており、操作できない状態となっている。
【００４３】
ユーザはまず、画像選択ボタンを押下して画像を選択する。このとき選択する画像ファイルフォーマットはＪＰＥＧ，ＰＮＧ，ＴＩＦＦなどいずれでもよい。これらの画像ファイル内の画像情報はフォーマットによらず、ＲＧＢ各チャンネル１６ビットのフルカラービットマップデータとしてＲＡＭ２０４に展開されるため、本発明の画像処理方法はフォーマットには依存せずに良好な結果を得られる。
【００４４】
ユーザが画像選択ボタン５０１を押してファイル選択ダイアログを起動して画像を選択すると、本アプリケーションは画像ファイルフォーマットに応じて適切なデコーダプログラムを選択実行して画像のデコードを行う。デコード結果はビットマップデータとしてＲＡＭ２０４に展開される。デコードが終わると、本アプリケーションはデコード結果のビットマップデータを画像プレビュー領域５０５に収まるように適宜拡大縮小して表示する。
【００４５】
例えば、ユーザが画像「ｃ：￥ｓａｍｐｌｅ．ｊｐｇ」を選択した場合、図６のようにデコード結果が表示される。このときは背景ぼかし領域を未指定であるため、強度指定スライダー５０２、決定ボタン５０４はグレーアウト表示されており、操作できない状態となっている。
【００４６】
なお、ユーザが画像選択を誤った場合には、ユーザは画像選択ボタン５０１を再度押すことで画像を選択しなおすことが可能である。
【００４７】
この状態でユーザが領域指定ボタンを押すと、ＯＳが表示するマウスカーソルの状態が通常の矢印表示（図８（ａ））から鉛筆表示（図８（ｂ））に切り替わり、画像プレビュー領域５０５上に任意の前景領域を指定可能となる。
【００４８】
ユーザは画像プレビュー領域５０５上でマウスボタンを押下しながらドラッグ操作することで、任意の曲線を指定できる。曲線指定後にマウスボタンを離すと、曲線の始点と終点を直線で結んだ閉領域が点線表示され、前景領域として規定される。このときマウスカーソルは再び通常の矢印表示に戻る。
【００４９】
なお、ユーザが領域指定を誤った場合には、ユーザは領域指定ボタン５０３を再度押すことで領域を指定しなおすことが可能である。
【００５０】
前景領域指定後の画面は図７のように表示される。このときは画像に対して背景ぼかし領域が指定済み状態であるので、強度指定スライダー５０２、決定ボタン５０４は操作可能となる。
【００５１】
ユーザは強度指定スライダー５０２を操作して、背景ぼかしの強度を任意に指定できる。強度指定スライダー５０２の選択位置が変化すると、アプリケーションは本発明の画像処理方法を用いて選択された強度に応じた背景ぼかし処理を行い、処理結果をプレビュー領域５０５に表示する。
【００５２】
例えばユーザが強度指定スライダーを「中」に指定した場合、画像中の背景領域に対して中程度の背景ぼかし処理が施され、処理結果が図９のように表示される。
【００５３】
なお、この状態で強度指定スライダーを変化させた場合には、それぞれの強度に応じた背景ぼかし処理が実行し直されるため、ユーザは画像に対して適切な背景ぼかし強度を容易に決定できる。
【００５４】
この状態でユーザが決定ボタン５０４を押すと、ファイル選択ダイアログが起動する。ダイアログ上でファイル名とフォーマットを設定すると、本アプリケーションはＲＡＭ２０４から背景ぼかし処理結果のビットマップデータを取得し、フォーマットに応じて適切なエンコーダプログラムを選択実行して画像のエンコードを行い、結果を保存する。
【００５５】
［実施例１］
以上が本アプリケーションの動作概要であるが、本アプリケーションが実行する本発明の画像処理方法について、第一の実施形態における詳細な動作フローを図１０を用いて説明する。
【００５６】
Ｓ１０００では、画像処理を施す対象画像のビットマップデータを取得する。前述の通り、本アプリケーションでは画像選択ボタンを押したときに画像をデコードし、ビットマップデータとしてＲＡＭ２０４に展開するので、その情報を取得すればよい。
【００５７】
Ｓ１１００では、対象画像の前景領域を表す情報を取得する。本アプリケーションで領域指定ボタンをもちいて指定した前景領域がこれに相当する。対象画像のビットマップデータの実サイズに相当する二値ビットマップ画像を作成し、前景領域に相当する部分を１、背景領域に相当する部分を０としてマスク画像を作成する。
【００５８】
Ｓ１２００では、Ｓ１０００で取得した画像を複製して内部に保持する。これはＳ１６００において前景画像と背景画像の合成をする際に、前景画像の情報として利用するためのものである。つまり、前景画像部分の情報のみが分かればよいので、Ｓ１１００で作成したマスク画像を参照しながら必要な領域の情報のみを保持するようにしてもよい。これにより、動作時の使用メモリ量を削減できる。
【００５９】
Ｓ１３００では、取得した画像サイズと強度指定スライダー５０２の値から画像の縮小率Ｒを求める。画像の縮小率を大きくすればするほど、縮小後に背景ぼかしフィルタが適用される領域の画角が大きくなるので、強いぼかし効果が得られる。
【００６０】
本実施例では、画像の長辺の画素数をＷとしたとき、「Ｗ／２００」「Ｗ／１００」「Ｗ／５０」の値の小数部を切り上げた値をそれぞれ、強度「弱」「中」「強」での画像の縮小率とする。
【００６１】
Ｓ１４００では、Ｓ１０００で取得したビットマップデータとＳ１１００で生成したマスク画像を参照しながら画像縮小処理を行う。このステップでは、縮小時に前景領域の画素の色味の影響を受けないように画素参照を行うが、詳細については後述する。
【００６２】
Ｓ１５００では、Ｓ１１００で生成したマスク画像を縮小する。このステップでの縮小処理は二値のマスク画像を単純に平均化縮小し、生じた小数部を切り上げるのみであるので詳細の説明は割愛する。
【００６３】
Ｓ１６００では、Ｓ１４００で縮小したビットマップデータとＳ１５００で縮小したマスク画像を参照しながら背景ぼかし処理を行う。このステップでは、背景ぼかし時に前景領域の画素の色味の影響を受けないように画素参照を行うが、詳細については後述する。
【００６４】
Ｓ１７００では、Ｓ１６００で背景ぼかし処理したビットマップデータとマスク画像を参照しながら画像拡大処理を行う。このステップでは、拡大時に前景領域の画素の色味の影響を受けないように画素参照を行うが、詳細については後述する。
【００６５】
Ｓ１８００では、Ｓ１２００で保持した画像とＳ１７００で拡大したビットマップデータとＳ１１００で作成したマスク画像を参照しながら画像合成処理を行う。Ｓ１２００で保持した画像の各画素に対し、マスク画像における対応する座標での画素値を調べ、画素値が０であった場合には背景ぼかし画像の画素値を適用する。具体的には、Ｓ１５００で拡大したビットマップデータにおける対応する座標値での画素値を取得して適用する。
【００６６】
（Ｓ１４００：画像縮小）
Ｓ１４００での画像縮小処理の詳細を図１１を用いて説明する。
【００６７】
画像縮小処理はＳ１０００で取得した幅ｗ、高さｈの画像を元に、平均値縮小によって幅ｗ’、高さｈ’の画像を生成する。
【００６８】
Ｓ１４０１では、縮小先画像のｙ座標のループカウンタｙを０にセットしてループ処理を開始する。
【００６９】
Ｓ１４０２では、縮小先画像のｘ座標のループカウンタｘを０にセットしてループ処理を開始する。
【００７０】
Ｓ１４０３では、縮小元画像における縮小対象ウィンドウを設定する。ここでウィンドウの領域はｘ、ｙ、縮小率Ｒから求められ、以下の４点（ｘ×Ｒ，ｙ×Ｒ）、（ｘ×Ｒ＋Ｒ−１，ｙ×Ｒ）（ｘ×Ｒ，ｙ×Ｒ＋Ｒ−１）（ｘ×Ｒ＋Ｒ−１，ｙ×Ｒ＋Ｒ−１）を頂点座標に持つ矩形領域である。
【００７１】
Ｓ１４０４では、ウィンドウ内のマスク画像の画素値を調べ、すべての画素値が１であればウィンドウ内はすべて前景領域であると判断する。
【００７２】
前景領域については、後のＳ１７００にて、Ｓ１２００で保持した前景画像の情報を用いて置換処理することになるため、ぼかし処理結果は不要である。そこでＳ１４０４へすすむ。マスク画素のいずれか一画素でも画素値が０であれば、ウィンドウ内は前景領域と背景領域の混合領域であると判断してＳ１４１０へすすむ。
【００７３】
Ｓ１４１０では、平均値縮小処理で使用する変数を初期化する。具体的には、ウィンドウ内の累積画素値を保持する累積画素値カウンタ配列Ｖと、ウィンドウ内の背景画素数を保持する背景画素数カウンタＧをそれぞれゼロクリアする。なお、ＶはＲＧＢ３チャンネルの値を独立に保持できる配列領域であり、Ｖ［０］にはＲチャンネルの情報が、Ｖ［１］にはＧチャンネルの情報が、Ｖ［２］にはＢチャンネルの情報がそれぞれ保存される。
【００７４】
Ｓ１４１１では、ウィンドウ内における相対ｙ座標のループカウンタｄｙを０にセットしてループ処理を開始する。
【００７５】
Ｓ１４２２では、ウィンドウ内における相対ｘ座標のループカウンタｄｘを０にセットしてループ処理を開始する。
【００７６】
Ｓ１４１３では、ウィンドウ内の注目座標（ｄｘ，ｄｙ）におけるマスク画像の画素値を調べ、背景画素であればＳ１４１４へ進む。前景画素であれば、縮小処理時には参照不要な画素なのでＳ１４１５へ進む。
【００７７】
Ｓ１４１４では、注目画素値をＶに加算し、Ｇをインクリメントする。具体的には、注目画素のＲＧＢ値をそれぞれ取得し、Ｖ［０］にはＲチャンネルの値を、Ｖ［１］にはＧチャンネルの値を、Ｖ［２］にはＢチャンネルの値を加算する。
【００７８】
Ｓ１４１５では、ｄｘをインクリメントする。
【００７９】
Ｓ１４１６では、ｄｘ＝Ｒとなった場合にはループを終了してＳ１４１７へ進む。それ以外の場合にはループ開始場所へ戻ってＳ１４１３へ進む。
【００８０】
Ｓ１４１７では、ｄｙをインクリメントする。
【００８１】
Ｓ１４１８では、ｄｙ＝Ｒとなった場合にはループを終了してＳ１４１９へ進む。それ以外の場合にはループ開始場所へ戻ってＳ１４１２へ進む。
【００８２】
Ｓ１４１９では、Ｖ／Ｇを求め、この値を縮小後画像における座標（ｘ、ｙ）の画素値とする。具体的には、ＲＧＢ値（Ｖ［０］／Ｇ，Ｖ［１］／Ｇ，Ｖ［２］／Ｇ）を画素値とする。
【００８３】
Ｓ１４２０では、ウィンドウ内における全画素の画素平均値を縮小後画像における座標（ｘ、ｙ）の画素値とする。
【００８４】
Ｓ１４２１では、ループカウンタｘをインクリメントする。
【００８５】
Ｓ１４２２では、ｘ＞＝ｗ／Ｒとなった場合にはループを終了してＳ１４２３へ進む。それ以外の場合にはループ開始場所へ戻ってＳ１４０３へ進む。
【００８６】
Ｓ１４２３では、ループカウンタｙをインクリメントする。
【００８７】
Ｓ１４２４では、ｙ＞＝ｈ／Ｒとなった場合にはループを終了してＥＮＤへ進む。それ以外の場合にはループ開始場所へ戻ってＳ１４０２へ進む。
【００８８】
（Ｓ１６００：背景ぼかし）
Ｓ１６００での背景ぼかし処理の詳細を図１２を用いて説明する。
【００８９】
背景ぼかし処理はＳ１４００にて行った縮小後の対象画像およびマスク画像に対して行われる。ここでは縮小後の幅ｗ’、高さｈ’の画素数の画像に対して、図１３のような３ｘ３画素のガウシアンフィルタを適用する場合を例にとって説明する。
【００９０】
Ｓ１６０１では、ｙ座標のループカウンタｙを０にセットしてループ処理を開始する。
【００９１】
Ｓ１６０２では、ｘ座標のループカウンタｘを０にセットしてループ処理を開始する。
【００９２】
Ｓ１６０３では、ループカウンタｘ、ｙの値から求まる座標（ｘ，ｙ）を注目画素としたときのマスク画像の画素値を調べ、注目画素の画素値が１であれば前景画素であると判断する。
【００９３】
前景画素の領域については、後のＳ１７００にて、Ｓ１２００で保持した前景画像の情報を用いて置換処理することになるため、ぼかし処理結果は不要である。そこでＳ１６２１へすすむ。注目画素の画素値が０であれば背景画素であると判断してＳ１６１０へすすむ。
【００９４】
Ｓ１６１０では、３×３のガウシアンフィルタウィンドウ内のフィルタ処理で使用する変数を初期化する。具体的には、ウィンドウ内の重み付き累積画素値を保持する累積画素値カウンタＶと、ウィンドウ内の累積重み値を保持する累積重み値カウンタＧをそれぞれゼロクリアする。
【００９５】
Ｓ１６１１では、注目画素を中心とした３×３画素の小領域における相対ｙ座標のループカウンタｄｙを０にセットしてループ処理を開始する。
【００９６】
Ｓ１６２２では、注目画素を中心とした３×３画素の小領域における相対ｘ座標のループカウンタｄｘを０にセットしてループ処理を開始する。
【００９７】
Ｓ１６１３では、小領域内の相対座標（ｄｘ，ｄｙ）におけるマスク画像の画素値を調べ、背景画素であればＳ１６１４に進む。前景画素であれば、背景ぼかし処理においては参照不要な画素なのでＳ１６１５へ進む。
【００９８】
Ｓ１６１４では、ウィンドウ内の位置に応じたフィルタ係数を求めて画素値に積算し、重み付き画素値を求める。求めた重み付き画素値をＶに加算し、フィルタ係数をＧに加算する。
【００９９】
Ｓ１６１５では、ｄｘをインクリメントする。
【０１００】
Ｓ１６１６では、ｄｘ＝３となった場合にはループを終了してＳ１６１７へ進む。それ以外の場合にはループ開始場所へ戻ってＳ１６１３へ進む。
【０１０１】
Ｓ１６１７では、ｄｙをインクリメントする。
【０１０２】
Ｓ１６１８では、ｄｙ＝３となった場合にはループを終了してＳ１６１９へ進む。それ以外の場合にはループ開始場所へ戻ってＳ１６１２へ進む。
【０１０３】
Ｓ１６１９では、Ｖ／Ｇを求め、これを用いて注目画素の画素値を更新する。
【０１０４】
Ｓ１６２１では、ｘをインクリメントする。
【０１０５】
Ｓ１６２２では、ｘ＝ｗ’となった場合にはループを終了してＳ１６２３へ進む。それ以外の場合にはループ開始場所へ戻ってＳ１６０３へ進む。
【０１０６】
Ｓ１６２３では、ｙをインクリメントする。ｙ＝ｈ’となった場合にはループを終了してＥＮＤへ進む。それ以外の場合にはループ開始場所へ戻ってＳ１６０２へ進む。
【０１０７】
（Ｓ１７００：画像拡大）
Ｓ１７００での画像拡大処理の詳細を図１３を用いて説明する。
【０１０８】
本実施例では、画像の拡大処理時には一度に線形拡大せずに、ニアレストネイバー法による二倍拡大と３×３画素平滑化フィルタを繰り返し適用している。このようにすることで拡大時に生じる画像弊害を抑える技術は公知のものであり、例えば特開平８−１８６７０８がある。しかし、当該技術を背景ぼかし処理に適用するにあたっては、前述の縮小処理、平滑化処理と同様に注目画素が前景か背景かの考慮が必要となる。
【０１０９】
Ｓ１７０１では、拡大処理時の累積拡大率カウンタＲ´を１にセットしてループ処理を開始する。このカウンタは、拡大処理の繰り返しによって画像が何倍拡大されたかを記憶しておくものである。ループ開始時はまだ拡大を行っていないため、１（等倍）を初期値としてセットしている。
【０１１０】
Ｓ１７０２では、ニアレストネイバー法を用いて画像を二倍拡大する。なお、ここでの拡大処理はマスクを考慮せずに通常の拡大処理を行ってよい。なぜなら、ここでの注目画素の画素値については、すでに前述の縮小処理において、前景画素の影響が排除されているためである。すなわち、前景画素と背景画素が隣接する領域においては、背景画素の画素値のみでもって算出した画素値を保持しているので、ニアレストネイバー法による拡大処理時にはこの画素値をそのまま用いて拡大すればよい。
【０１１１】
Ｓ１７０３では、拡大後の画像に対して３×３画素の平滑化フィルタを適用する。なお、ここでの平滑化フィルタ適用時にはマスクを考慮する必要がある。なぜなら、ここでは注目画素と隣接画素の画素値を混合することになるため、「注目画素が背景画素だが、隣接画素が前景画素である」という状況が発生するからである。このような場合に前景画素値が混合されることを防ぐために、Ｓ１６００と同様の手法でマスク情報を考慮しながら平滑化処理を行う。
【０１１２】
なお、マスク情報としてはＳ１１００で作成したマスク画像を用いればよく、当該マスク画像をＳ１５００と同様に適宜縮小変倍することで本ステップにおける最適なマスク画像を生成できる。
【０１１３】
Ｓ１７０４では、すでに画像の二倍拡大を行っているのでＲ’を二倍する。
【０１１４】
Ｓ１７０５では、Ｒ’とＲ／２を比較する。ここでＲとはＳ１３００でもとめた画像縮小率である。この比較により、再度画像の二倍拡大をしてもＳ１０００で取得した対象画像の画素数を超えないことを確認する。Ｒ’＞Ｒ／２である場合には、再度画像の二倍拡大をすると対象画像の画素数を超えてしまうため、ループを終了してＳ１７０６へ進む。
【０１１５】
Ｓ１７０６では、ニアレストネイバー法を用いて画像をＲ／Ｒ’倍拡大する。ここでの処理はＳ１７０２と同様に行えばよい。
【０１１６】
Ｓ１７０７では、拡大後の画像に対して３×３画素の平滑化フィルタを適用する。ここでの処理はＳ１７０３と同様に行えばよい。
【０１１７】
＜実施例１の応用＞
本実施例では、画像縮小率Ｒを入力画像のサイズと強度により決定し、縮小後の背景ぼかし処理で用いるガウスフィルタのフィルタサイズは３×３に固定したが、たとえば縮小率Ｒを半減させてガウスフィルタのフィルタサイズを５×５に倍増してもよい。ガウスフィルタのサイズを大きくとるほど、背景ぼかし処理自体の画質は向上する。反対に、縮小率Ｒを大きくとるほど、背景ぼかし処理の処理時間は低減する。本発明の技術を実施するにあたっては、実施対象の必要とする要件に応じてこれらのバランスを適宜決定すればよい。
【０１１８】
［実施例２］
実施例１に述べた構成により、特許文献２にあげたような通常のフィルタ演算処理に対してより高速な処理結果が得られるが、そのために必要な中間画像領域の確保や拡大縮小処理においても画像処理の処理時間は発生する。入力画像の画素数とぼかし強度が十分に大きいときには、本発明の技術を用いることが処理時間の面で有利であることは明らかだが、入力画像の画素数とぼかし強度の組み合わせによっては、通常のフィルタ演算処理を実施したほうが高速な場合も考えられる。そのため、Ｓ１０００の段階で入力画像の画素数とぼかし強度を調べることで、通常のフィルタ演算と本発明の技術とどちらが有利であるかを概算し、その結果に応じて処理フローを切り替えてもよい。これにより、入力画像の画素数とぼかし強度によらず、常に最適な処理負荷で背景ぼかし処理を行うことができる。
【０１１９】
本実施例では、そのような切り替え方法について図１６を用いて説明する。
【０１２０】
Ｓ２０００〜Ｓ２３００については、第一の実施例のＳ１０００〜Ｓ１３００と同様の処理であるため、説明を割愛する。
【０１２１】
Ｓ２３０５では、Ｓ２３００で求めた画像の縮小率Ｒを評価する。縮小率Ｒの値が４より大きければ、４倍以上の拡大縮小処理を行うことで処理の高速化に寄与する率が高いと判断し、Ｓ２４００へ進む。縮小率Ｒの値が４以下であれば、拡大縮小処理のオーバヘッドの方が大きいため、処理の高速化には寄与しないと判断し、２９００へ進む。
【０１２２】
Ｓ２４００〜Ｓ２７００については、第一の実施例のＳ１４００〜Ｓ１７００と同様の処理であるため、説明を割愛する。
【０１２３】
Ｓ２９００では、Ｓ２０００で取得したビットマップデータとＳ２１００で取得したマスク画像を参照しながら背景ぼかし処理を行う。背景ぼかし処理の際に用いるガウスフィルタのサイズは、Ｓ２３００で求めたＲを用いて3×Ｒとする。ただし、フィルタサイズが偶数になる場合には３×Ｒ＋１とする。このようにフィルタサイズを調整することで、画像拡大縮小を行った場合と同様のぼかし強度による背景ぼかし処理結果が得られる。このステップでは、フィルタサイズが異なる以外については、Ｓ２６００と同様に処理を行う。すなわち、背景ぼかし時に前景領域の画素の色味の影響を受けないように画素参照を行う。
【０１２４】
Ｓ２８００については、第一の実施例のＳ１８００と同様の処理であるため、説明を割愛する。
【０１２５】
＜実施例２の応用＞
本実施例では、入力画像の画像サイズに応じて、通常の背景ぼかし処理と拡大縮小を伴う背景ぼかし処理を切り替えたが、入力画像の前景／背景領域の構成比率に応じて切り替えてもよい。例えば、入力画像において背景領域が１/２以上を占める場合は、画像における背景領域の画質が重要であると判断し、Ｓ２３０５においてＲの値によらずにＳ２９００へ進むとしてもよい。
【０１２６】
［実施例３］
実施例１では、背景ぼかし処理時のフィルタサイズを３×３に固定していたが、入力画像の画像サイズや入力画像の前景／背景領域の構成比率に応じてフィルタサイズを決定してもよい。このようにすることで、画質と処理速度のトレードオフを考慮した処理結果が得られる。すなわち、入力画像の画素数が大きいときには、背景ぼかし時のフィルタサイズを下げることで画像の拡大縮小による処理速度の向上を重視させることができる。反対に、入力画像の画素数が小さいときには、画像の拡大縮小による処理速度の向上の寄与は少ないと考え、背景ぼかし時のフィルタサイズを上げることで処理結果の画質向上を重視させることができる。
【０１２７】
前景／背景領域の構成比率についても同様に背景領域の構成比率が高いときには、背景ぼかし処理部分の画質が重要であると考え、画質向上を重視させることができる。
【０１２８】
本実施例では、そのような制御方法について図１７を用いて説明する。
【０１２９】
Ｓ３０００〜Ｓ３２００については、第一の実施例のＳ１０００〜Ｓ１２００と同様の処理であるため、説明を割愛する。
【０１３０】
Ｓ３２０５では、入力画像の画素数と入力画像の前景／背景領域の構成比率に応じてフィルタサイズＦを算出する。ここでは、入力画像の長辺方向の画素数をＷ、背景の構成比率をＢとした場合に、Ｆ＝３×２Ｂ×１２８０／Ｗとする。小数部は切り捨てて整数化する。ただし、Ｆが偶数になった場合には１を加算する。このように設定することで、入力画像の長辺方向の画素数が大きい画像や、背景の構成比率が小さい画像ではＦは小さくなり、最小１となる。
【０１３１】
Ｓ３３００では、取得した画像サイズと強度指定スライダー５０２の値とＳ３２０５で求めたＦから画像の縮小率Ｒを求める。画像の縮小率を大きくすればするほど、縮小後に背景ぼかしフィルタが適用される領域の画角が大きくなるので、強いぼかし効果が得られる。
【０１３２】
本実施例では、画像の長辺の画素数をＷとしたとき、「（３／Ｆ）×（Ｗ／２００）」「（３／Ｆ）×（Ｗ／１００）」「（３／Ｆ）×（Ｗ／５０）」の値の小数部を切り上げた値をそれぞれ、強度「弱」「中」「強」での画像の縮小率とする。このように設定することで、フィルタサイズＦが大きい際には画像の縮小率が低くなり、結果としてＦがいくつの場合であっても、背景ぼかし処理と拡大縮小処理の組み合わせで得られるぼかし強度が一定に保たれる。
【０１３３】
Ｓ３４００〜Ｓ３５００については、第一の実施例のＳ１４００〜Ｓ１５００と同様の処理であるため、説明を割愛する。
【０１３４】
Ｓ３６００では、Ｓ３４００で縮小したビットマップデータとＳ３５００で縮小したマスク画像を参照しながら背景ぼかし処理を行う。背景ぼかし処理の際に用いるガウスフィルタのサイズは、Ｓ３２００で求めたＦを用いる。このステップでは、フィルタサイズが異なる以外については、Ｓ１６００と同様に処理を行う。すなわち、背景ぼかし時に前景領域の画素の色味の影響を受けないように画素参照を行う。
【０１３５】
Ｓ３７００〜Ｓ３８００については、第一の実施例のＳ１７００〜Ｓ１８００と同様の処理であるため、説明を割愛する。
【０１３６】
＜実施例１〜３のその他の応用＞
本実施例では背景ぼかし処理についての適用を説明したが、画像中の所定の領域の高周波成分を低下させるような種類のエフェクト処理であれば同様に適用が可能である。例えば、被写体の背景に対して水平方向の高周波成分を低下させることで、移動する被写体を追いかけながら撮影する、いわゆる「流し撮り」風の画像効果が得られることが知られている。このような画像効果を得る際にも、水平方向の平滑化フィルタの肥大化を防ぐ際には本発明の技術が同様に適用できる。
【０１３７】
また、本実施例のアプリケーションでは、強度指定スライダー５０２の操作の都度、選択画像に対してビットマップデータそのものの画素数で処理を行った。しかし、画像プレビュー領域の表示解像度にあらかじめ縮小した画像を別途用意しておき、スライダー操作時には縮小画像に対して処理を行い、決定ボタン５０４が押された段階で選択画像のビットマップデータそのものに処理を施して画像保存してもよい。さらに、スライダー操作によって作成したプレビュー画像をキャッシュしておき、再度スライダー操作を切り替えた際にはそちらを参照するように制御してもよい。このようにすることで、ユーザはストレスなくプレビュー表示を行いつつ、強度確定時には高画質な処理結果を得ることができる。
【０１３８】
また、本実施例の平滑化処理では、図１３のような３×３のガウシアンフィルタを用いたが、これについて例えば図１４（ａ）のような１×３の平滑化フィルタと図１４（ｂ）のような３×１の平滑化フィルタを直列に用いて演算回数を減らすことが可能である。このような場合であっても、それぞれのフィルタ適用時に本実施例と同様にマスク情報を参照することで前景画素の色味の影響を排除してフィルタ処理が実行できる。
【０１３９】
また、本実施例のアプリケーションでは、ユーザのマウス操作によって被写体領域を指定させたが、領域選択時には画像の輝度差などをヒントとして領域境界を自動トレースさせてもよい。このような技術は一般の画像加工アプリケーションにおいて公知である。その他特許文献１をはじめとした公知の技術を用いて前景領域を自動選択してもよい。本発明の技術は、前景画像／背景画像の選択技術によらず好適に作用するが、本発明の課題とするところの「背景ぼかし領域に前景画素の色味が入り込む」現象を回避するためには、これら技術によって前景／背景を適切に領域選択することが望ましい。
【０１４０】
また、本実施例では単体のアプリケーションとしての形態を例示して説明したが、既存のアプリケーションから呼び出して使用するサブプログラムやプラグインなどの形式で実現してもよい。
【０１４１】
また、本実施例では、ＲＧＢ３チャンネルのカラー画像を対象に処理を説明したが、ＹＣＣやＣＭＹＫなどといった異なる座標系で定義されるカラー画像に対しても同様に実施可能であることは言うまでもない。その場合、累積画素値カウンタＶの配列を適宜用意し、各チャンネルの値を累積させればよい。また、カラー画像でなくとも単一のグレースケール画像でも本発明の課題は同様に発生しており、これを解決する際にも本実施例を応用して適用することが可能である。その場合、累積画素値カウンタＶを配列でなく単一のカウンタ変数領域として用意し、輝度や明度といったグレースケール情報を累積させればよい。
【０１４２】
また、本実施例では、単一のＰＣ上のアプリケーションとしての形態を例示して説明したが、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタ等）から構成されるシステムに適用してもよい。もしくは、一つの機器からなるＰＣ以外の装置（例えば、プリンタ、複写機、ファクシミリ装置等）に適用してもよい。
【０１４３】
また、本発明の目的は、以下によっても達成できる。まず、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給する。次に、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行すればよい。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４４】
さらに、まず、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、該プログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【符号の説明】
【０１４５】
２０１  ＣＰＵ
２０２  ブリッジ部
２０３  ＲＯＭ
２０４  ＲＡＭ
２０５  ２次記憶装置
２０６  表示制御部
２０７  表示制御装置
２０８  Ｉ／Ｏ制御部
２０９  入力装置
２１０  出力装置
５０１  画像選択ボタン
５０２  強度指定スライダー
５０３  領域指定ボタン
５０４  決定ボタン
５０５  画像プレビュー領域
５０６  画像ファイル名表示領域
【図１】
2013020456.tif 000003
【図２】
2013020456.tif 000004
【図３】
2013020456.tif 000005
【図４】
2013020456.tif 000006
【図５】
2013020456.tif 000007
【図６】
2013020456.tif 000008
【図７】
2013020456.tif 000009
【図８】
2013020456.tif 000010
【図９】
2013020456.tif 000011
【図１０】
2013020456.tif 000012
【図１１】
2013020456.tif 000013
【図１２】
2013020456.tif 000014
【図１３】
2013020456.tif 000015
【図１４】
2013020456.tif 000016
【図１５】
2013020456.tif 000017
【図１６】
2013020456.tif 000018
【図１７】
2013020456.tif 000019