(57)【特許請求の範囲】
【請求項１】
コンピュータにより実現される、粉砕によって生成される粒子の所望の粒子径を達成する方法であって、
レンズと背景面とを有する装置を準備するステップと、
同一の前記レンズを用いてキャプチャされた、前記背景面上に配置された少なくとも１つの粒子及びキャリブレーションマークの画像を取得するステップと、
前記粒子及び前記キャリブレーションマークの両方に同一の補正係数を適用して前記画像の歪み効果を補正することにより補正画像を生成するステップと、
前記補正画像を用いて決定される一組のパラメータによって前記粒子の粒子径及び形状を特徴付けるステップであって、前記一組のパラメータは、前記複数の粒子の粒子径分布、面積分布、及び体積分布のなかの１以上を含む、該ステップと、
前記一組のパラメータを、目標粒子のプロファイルと比較して両者の近似性を判定するステップと、
前記判定された前記近似性に基づき、前記一組のパラメータと前記目標粒子のプロファイルとを近づけるためにどのような粉砕処理を行う必要があるかを決定するステップとを含むことを特徴とする方法。
【請求項２】
前記一組のパラメータが、前記複数の粒子の粒子径分布を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記粒子径分布は、目標粒子径プロファイルと比較されることを特徴とする請求項２に記載の方法。
【請求項４】
前記キャリブレーションマークが、互いに直角をなす方向に延在する直線を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記画像が、前記キャリブレーションマークに対してランダムに配置された複数の粒子を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記画像が、ビットマップであることを特徴とする請求項１に記載の方法。
【請求項７】
前記粒子径を求める前記ステップが、
前記画像において、前記粒子を含む前記画像の第１の部分を、前記キャリブレーションマークを含む前記画像の第２の部分から分離するステップを含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記分離するステップが、色領域抽出法を用いるステップを含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記画像の歪み効果を補正する前記ステップが、
前記キャリブレーションマークの既知の実際の寸法を、前記画像から得られた前記キャリブレーションマークの寸法と比較するステップと、
前記比較に基づいて補正係数を生成するステップと、
前記画像における前記粒子の測定値を得るステップと、
前記補正係数を用いて前記粒子の前記測定値を修正するステップとを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記画像の歪み効果を補正する前記ステップが、
レンズ歪みまたは射影歪みのうちの少なくとも一方を補正するステップを含むことを特徴とする請求項１に記載の方法。
【請求項１１】
コンピュータにより実現されるコーヒー粉砕物のために所望の粒子径を達成する方法であって、
レンズと背景面とを有する装置を準備するステップと、
同一の前記レンズを用いてキャプチャされた、前記背景面上に配置されたキャリブレーションマークを有する表面上に分散されたコーヒー粉砕物の画像を取得するステップと、
前記コーヒー粉砕物及び前記キャリブレーションマークの両方に同一の補正係数を適用して前記画像の歪み効果を補正することにより補正画像を生成するステップと、
前記補正画像を用いて決定される一組のパラメータによって前記コーヒー粉砕物の粒子径及び形状を特徴付けるステップであって、前記一組のパラメータは、前記複数の粒子の粒子径分布、面積分布、及び体積分布のなかの１以上を含む、該ステップと、
前記一組のパラメータを、目標粒子のプロファイルと比較して両者の近似性を判定するステップと、
前記判定された前記近似性に基づき、前記一組のパラメータと前記目標粒子のプロファイルとを近づけるためにどのような粉砕処理を行う必要があるかを決定するステップとを含むことを特徴とする方法。
【請求項１２】
前記画像が、ビットマップであることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記粒子径を求める前記ステップが、
前記画像を、前記コーヒー粉砕物を含む第１の部分、及び前記キャリブレーションマークを含む第２の部分に分離するステップと、
前記キャリブレーションマークの実測値を前記画像の前記第２の部分中の前記キャリブレーションマークと比較することによって、前記キャリブレーションマークのための補正係数を計算するステップと、
前記キャリブレーションマークのための前記補正係数を前記画像の前記第１の部分に適用して、前記コーヒー粉砕物のために補正された粒子径を得るステップとを含むことを特徴とする請求項１１に記載の方法。
【請求項１４】
前記粒子径を求める前記ステップが、
前記画像のレンズ歪みを補正するステップと、
前記画像の射影歪みを補正するステップとを含むことを特徴とする請求項１１に記載の方法。
【請求項１５】
粉砕によって生成される粒子の所望の粒子径を達成するための命令が格納されているコンピュータ読み取り可能な媒体であって、
前記命令が、
レンズと背景面とを有する装置において、同一の前記レンズを用いてキャプチャされた、前記背景面上に配置された少なくとも１つの粒子及びキャリブレーションマークの画像を取得する命令と、
前記粒子及び前記キャリブレーションマークの両方に同一の補正係数を適用して前記画像の歪み効果を補正することにより補正画像を生成する命令と、
前記補正画像を用いて決定される一組のパラメータによって前記粒子の粒子径及び形状を特徴付ける命令であって、前記一組のパラメータは、前記複数の粒子の粒子径分布、面積分布、及び体積分布のなかの１以上を含む、該命令と、
前記一組のパラメータを、目標粒子のプロファイルと比較して両者の近似性を判定する命令と、
前記判定された前記近似性に基づき、前記一組のパラメータと前記目標粒子のプロファイルとを近づけるためにどのような種類の粉砕処理を行う必要があるか否かを決定する命令とを含むことを特徴とするコンピュータ読み取り可能な媒体。
【請求項１６】
前記画像がビットマップであることを特徴とする請求項１５に記載のコンピュータ読み取り可能な媒体。
【請求項１７】
前記一組のパラメータが、前記複数の粒子の粒子径分布を含み、
前記特徴付ける前記命令が、
前記画像を、前記粒子を含む第１の部分、及び前記キャリブレーションマークを含む第２の部分に分離する命令と、
前記キャリブレーションマークの実測値を前記画像の前記第２の部分中の前記キャリブレーションマークと比較することによって、前記キャリブレーションマークのための補正係数を計算する命令と、
前記キャリブレーションマークのための前記補正係数を前記画像の前記第１の部分に適用して、前記粒子のための補正された粒子径を得る命令とを含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能な媒体。
【請求項１８】
前記粒子径を求める前記命令が、
前記画像のレンズ歪みを補正する命令と、
前記画像の射影歪みを補正する命令とを含むことを特徴とする請求項１５に記載のコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、米国特許出願第１４／１９４，１５４号（２０１４年２月２８日出願）及び米国仮出願第６１／７７０，７４３号（２０１３年２月２８日出願）を基礎とする優先権の利益を主張する。これらの出願は、引用を以って本明細書の一部となす。
【０００２】
本発明は、粒度分布を求める方法及び装置に関する。
【背景技術】
【０００３】
小粒子の粒度分布を測定する方法は種々存在し、これらの測定法には、篩の使用、沈降法、レーザ回折法、動的光散乱法、顕微鏡の使用が含まれる。篩の使用は、粒子の分離と、篩の様々なメッシュサイズに基づく粒度分布の測定とを含む。沈降法は、沈降速度計を用いた測定であり、粘性媒質を沈降する粒子の速度を測定し、その後、粒子の沈降速度を粒子径に関連付ける。レーザ回折法及び動的光散乱法は、粒子にレーザ光を照射する。レーザ回折法では、粒子からの散乱光の回折パターンに基づいて粒度分布を求め、動的光散乱法では、溶液中の粒子からの散乱光の強度の変化に基づいて粒度分布を求める。顕微鏡の使用により、粒子径を直接測定することもできる。
【先行技術文献】
【特許文献】
【０００４】
【非特許文献１】"A flexible new technique for camera calibration," IEEE Transaction on pattern Analysis and Machine Intelligence, 22(11): 1330-1334, 2000
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記方法の問題点は、これらの測定法が、長い時間と労力を要し、専門的かつ高価な器具、例えば、レーザ、適切な顕微鏡、またはその両方を必要とすることである。各方法はまた、通常、上記器具を正確に使用するために訓練された人材も必要とする。このように種々様々なものが必要とされるが故に、これらの方法は産業用途及び実験用途に限定されている。普通の環境（例えば平均的な家庭内）で個人がもっと簡単に使用できるような、小粒子の粒度分布測定法があれば望ましいであろう。
【課題を解決するための手段】
【０００６】
一態様では、本発明は、コンピュータにより実現される粒子径を求める方法に関連する。本方法は、同一のレンズを用いてキャプチャ（取得）された少なくとも１つの粒子及びキャリブレーション（校正）マークの画像を取得するステップと、粒子及びキャリブレーションマークの両方に同一の補正係数を適用して画像の歪み効果を補正することにより補正画像を生成するステップと、補正画像を用いて粒子径を求めるステップとを含む。
【０００７】
別の態様では、本発明は、コンピュータにより実現されるコーヒー粉砕物のために所望の粒子径を達成する方法に関連する。本方法は、同一のレンズを用いてキャプチャされたキャリブレーションマークを有する表面上に分散されたコーヒー粉砕物の画像を取得するステップと、コーヒー粉砕物及びキャリブレーションマークの両方に同一の補正係数を適用して画像の歪み効果を補正することにより補正画像を生成するステップと、補正画像を用いてコーヒー粉砕物の粒子径範囲を求めるステップとを含む。
【０００８】
さらに別の態様では、本発明は、粒子径を求めるための命令が格納されているコンピュータ読み取り可能な媒体に関連する。上記命令は、同一のレンズを用いてキャプチャされた少なくとも１つの粒子及びキャリブレーションマークの画像を取得すると、粒子及びキャリブレーションマークの両方に同一の補正係数を適用して画像の歪み効果を補正することにより補正画像を生成する命令と、補正画像を用いて粒子径を求める命令とを含む。
【０００９】
さらに別の態様では、本発明は、粒子径を求めるための命令が格納されているコンピュータ読み取り可能な媒体に関連する。上記命令は、レンズを用いて少なくとも１つの粒子の画像を取得する命令と、画像の粒子の測定値を得る命令と、レンズに関連するレンズ歪み（レンズディストーション）パラメータ及び射影歪みパラメータを決定する命令と、レンズ歪みパラメータ及び射影歪みパラメータを用いて粒子の測定値を修正することによって粒子径を求める命令とを含む。
【図面の簡単な説明】
【００１０】
【図１】粒子径を求める装置の一実施形態である。
【図２】開示されている方法とともに用いることができるキャリブレーションパターンの一例である。
【図３】キャリブレーションパターンの寸法例を、粒子径及びピクセル寸法と関連付けて示す。
【図４】キャリブレーションパターン上のサンプル粒子の画像の一例を示す。
【図５】本明細書に記載の粒子径を求める方法の一実施形態のフローチャートである。
【図６】画像におけるレンズ歪み及び射影歪みを補正する方法のフローチャートである。
【発明を実施するための形態】
【００１１】
小粒子の画像を用いて当該小粒子の粒度分布を求める方法を開示する。本方法は、小粒子及びキャリブレーションパターンを含む画像（例えばビットマップ）を生成するかまたは別な方法で得るステップを含む（キャリブレーションパターンの寸法は既知である）。例えば、任意の従来のカメラを用いて、キャリブレーションパターン上またはその周辺に配置された小粒子を撮影することによって画像を生成することができる。粒子径が小さい場合には（例えば１０−６インチ（０．０２５４μｍ）程度）、カメラレンズによって生じた歪みを相殺するために補正がなされる。
【００１２】
開示されている方法の一実施形態では、寸法が既知のマークを含むキャリブレーションパターンを用いて粒子径を求める。キャリブレーションパターン及び粒子の両方に同一の歪みが適用されることになるという仮定の下、キャリブレーションパターン及び粒子を一緒に撮影する。寸法が既知のキャリブレーションパターンを用いて、歪み効果を除去し画像を歪み効果のない補正画像に変換するための変換行列が生成される。変換行列は、その後、補正画像から粒度分布を求めるために適用される。
【００１３】
有利なことには、ビットマップを記録するためにどんなカメラ（または、ビットマップを生成することができる他のデバイス）を用いてもよく、専用の撮影装置や記録装置は必要ない。さらに、キャリブレーションパターン及び粒子が一緒に単一画像に記録されるので、歪みを補正するため及び正確な粒子径を得るために、カメラ、レンズ及び他の画像パラメータを知っている必要はない。粒子及びキャリブレーションパターンを一緒に１つの画像にキャプチャすることによって、測定画像を記録する前に歪みを補正するための一連のパラメータを得るべく追加の別のキャリブレーション画像を記録する必要がなくなる。開示されている方法においては、粒子径を正確に求めるために必要な情報は、単一画像に埋め込まれている。
【００１４】
図１は、本明細書に開示されている粒子径を求める手法を実現するために用いることができる装置１００の一実施形態を示している。図のように、装置１００には、キャリブレーションパターン１２０上に位置する粒子１１２の画像をキャプチャするように配置されたカメラ１１０が含まれる。図のように、カメラ１１０がキャプチャした画像はメモリ１５０に記憶され、直接接続によって、またはネットワークを介してのいずれかでプロセッサ１４０に伝達される。一実施形態では、カメラ１１０は、スマートフォン、タブレット、ラップトップパソコンなどのモバイル機器の一部であり得る。「カメラ」は、本明細書においては、１若しくは複数のレンズを用いて物理的な物体の電子画像（例えばビットマップ）を生成することができる任意の撮影装置を意味するものとする。
【００１５】
カメラ１１０を保持するためにスタンド（図示せず）を用いてもよいが、スタンドは必須ではなく、カメラ１１０を人が保持してもよい。キャリブレーションパターン１２０からカメラ１１０までの距離は、既知である必要も具体的に設定されている必要もないが、キャリブレーションマーク及び粒子の適切なピクセルカバレッジによりキャリブレーションパターン１２０及び粒子を区別することができる範囲内に収まっているものとする。アップル社製のｉＰｈｏｎｅ（登録商標）を用いる場合には、上記距離は例えば約１０インチ（２５．４ｃｍ）であり得る。
【００１６】
図２は、キャリブレーションパターン１２０の実施形態の一例を示している。キャリブレーションパターン１２０は、背景１２１と、複数のキャリブレーションマーク１２２とを含む。図２に示したキャリブレーションパターン１２０の例では、キャリブレーションマーク１２２は、どれも同じ寸法ｘ及びｙを有する四角形の輪郭であり、実質的に一定の太さの線で描画され、一定の間隔ｗをあけて縦列及び横列の方向に繰り返されている。キャリブレーションマーク１２２の寸法は（例えば、物理的パターンを測定することによって）分かる。キャリブレーションマーク１２２は、所望の粒子径範囲において正確な測定を可能にする補正画像を生成するのに十分な情報を提供する任意の寸法のものであってよい。
【００１７】
キャリブレーションパターン１２０は、背景１２１の主たる色または陰の部分が、被測定粒子の色及びキャリブレーションマーク１２２の色に対して高コントラストを有する場合に最も有用である。キャリブレーションマーク１２２の色を、被測定粒子の色と異なる色にすることも有用である。例えば、粒子が褐色または黒色である場合には、背景１２１は白色にして、キャリブレーションパターン１２２は青色の色相を有するようにしてもよい。一般的に、キャリブレーションパターン１２０には任意の材料を用いてよく、キャリブレーションパターン１２０の表面が粒子の物質に対して不浸透性を持つようにすればキャリブレーションパターン１２０は粒子によって傷付けられないので有用であろう。一例では、キャリブレーションパターン１２０は１枚の紙に印刷されたパターンであり、その上に粒子がまばらに置かれる。ユーザは、キャリブレーションパターン１２０のデジタル画像を入手して、自宅で印刷することができる。
【００１８】
本明細書に開示されている手法を用いて測定することができる最小の粒子径は、複数の因子によって決まり、そのうちの１つは、最小測定可能物体のピクセルカバレッジとキャリブレーションマークのピクセルカバレッジの比率である。また、統計データを集めるべく、１若しくは複数のキャリブレーションマーク及び十分なサンプル粒子をキャプチャするのに十分なカメラ解像度も必要である。現在市販されているｉＰｈｏｎｅ（登録商標）の一部であるカメラを用いれば、１×１０−６インチ（０．０２５４μｍ）ほどの大きさしかない粒子径を求めることが可能になるであろう。一実施形態では、キャリブレーションマーク１２２の寸法は、カメラのデジタル解像度及び測定する最小粒子の粒子径によって決まる。例えば図３に示すように、３２６４ピクセル×２４４８ピクセルの解像度を有するカメラの場合、直径２５×１０−６インチ（０．０６３５μｍ）の粒子を測定するためには２ピクセル×２ピクセルの正方形３１０が必要であり、１辺４００ピクセル（すなわち１６万画素）のキャリブレーションパターン３２２が用いられる。図１に示した装置においては、そのようなキャリブレーションパターン１２０は１インチ（２．５４ｃｍ）四方のキャリブレーションパターン２２２を含む。
【００１９】
図２に示した四角形の繰り返し以外の他のパターンをキャリブレーションパターン１２２に用いてもよい。しかし、数学的にモデル化し易い規則的なパターン（例えば直交線を含む）をキャリブレーションパターン１２２に用いることによって、記録された画像の処理を簡素化することができる。さらに、図２に示したように、キャリブレーションマーク１２２は、粒子径を測定する粒子の色に対して高コントラストを有する色を最大限活用する。例えば、「チェスボード」パターンなどのパターンは、複数の四角形のうちの半分が暗色であるために効率的に機能せず、粒子が暗色である場合には、暗色領域上に位置する粒子が多すぎて、粒子と該粒子の下の表面との間にそれほどのコントラスト（明暗差）が存在しないであろう。
【００２０】
図４は、キャリブレーションパターン１２０上の粒子１１２の一例を示している。測定を行うために、被測定粒子のサンプルがキャリブレーションパターン１２０上にランダムに配置される（例えば、まばらに置かれる）。キャリブレーションマーク１２２を被測定粒子１１２の補色にすることが望ましいであろう。例えば、粒子１１２が青色であれば、キャリブレーションマーク１２２を赤色にすることができる。
【００２１】
画像から粒度分布を求める方法について、図５及び図６に関連して説明する。
【００２２】
図５は、粒子径を求める方法の一実施形態を示している。キャリブレーションパターン１２０上に被測定粒子を分布させた後、キャリブレーションパターン１２０上の粒子のデジタル画像を、カメラ１１０を用いてキャプチャする（例えば、ビットマップを記録する）（ステップＳ５１０）。画像生成は、例えば、画像の鮮明さ／精細度を向上させるための画像処理手法（ノイズ低減及び／または二値化及び／またはフィルタリングを含むが、これらに限定されるものではない）を適用することによって物体認識を容易にするための画像の前処理を含み得る。任意の適切なノイズ低減法を用いることができる。
【００２３】
ステップＳ５１０においては、２次元または３次元画像をキャプチャまたは生成するための任意の手法を用いることができ、そのような手法には、写真撮影、超音波、Ｘ線、またはレーダを利用するものが含まれる。本発明は、ビットマップをキャプチャする特定の方法に限定されるものではない。
【００２４】
ステップＳ５２０では、キャリブレーションパターン１２０の画像を補正して歪みを除去する。粒子径を求めるためにイメージングを用いることの問題の１つは、記録された画像における様々な歪みが、粒子径を求める際の誤差の原因となることである。これらの歪みは、例えば１０−６インチ（０．０２５４μｍ）の粒子径範囲内で小粒子の正確な測定を行おうとするときには特に有害である。そのような歪みは、レンズ形状またはレンズアライメントの不完全性の結果として生じ得る。そのせいで、例えば、画像において直線が非直線としてキャプチャされ得る。歪みは、射影歪みの結果としても生じ得る。これは、撮影される物体の中心に対してカメラの光軸が垂直でないときに生じ、この歪みによって画像において互いに平行な線が非平行になる。粒子径はキャリブレーションマーク１２２の寸法を用いて求められるので、キャリブレーションマーク１２２の画像中の歪みが、粒子径を求める際の誤差を生じさせることになる可能性が高い。よって、粒子径を求める前に、キャリブレーションマーク１２２の歪みを補正する。ステップＳ５２０の最後に、歪みのないキャリブレーションマーク１２２と、粒子の原画像（未補正画像）とを含む「補正画像」が生成される。
【００２５】
ステップＳ５２０で歪みを除去するための１つの手法では、画像からキャリブレーションマーク１２２を抽出する。この抽出には領域フィルタリング手法を用いることができる。例えば、キャリブレーションマーク１２２が青色である場合、青色の色相範囲におけるパターンを抽出するための色領域を用いる手法を用いることができる（キャリブレーションパターン１２０の背景１２１は、キャリブレーションマーク１２２とは異なる色である）。結果は、画像の青色部分から輪郭を抽出することによって作られるキャリブレーションマークオブジェクトアレイである。キャリブレーションマークオブジェクトアレイは、例えば正射写真図（オルソフォト）などで、画像をマッピングするのに有用な均等スケールを生成するために用いられる。この均等スケールの生成はオルソ変換であり、一度生成すればキャリブレーションパターン１２０が同じであるかぎりは繰り返し使用することができる。
【００２６】
ステップＳ５３０では、キャリブレーションパターン１２０の補正画像を用いて粒子径を求める。この処理は、領域フィルタリングを用いた補正画像からの粒子の抽出を含む。例えば、領域フィルタリングは、褐色／黒色の色範囲内にあることが分かっている粒子を抽出するための色領域を用いて実現することができる。処理された画像から粒子の輪郭を抽出することによって、粒子オブジェクトアレイが生成される。その後、粒子オブジェクトアレイの各要素を測定することにより、粒子の寸法、例えば、各粒子の大きさ（直径）、面積及び真円度を求めることができる。これらの測定値から、測定された粒子の粒度分布が得られる。粒子径を測定する際に、キャリブレーションパターンは寸法の基準となる。
【００２７】
上記したように、（画像中のものとは対照的に）物理的世界におけるキャリブレーションマーク１２２の寸法は既知である。任意であるが、補正画像中のキャリブレーションマークを測定し、キャリブレーションパターン１２０における既知のサイズのキャリブレーションマーク１２２との不一致を計算することによって、ステップＳ５２０で用いたキャリブレーションマーク歪み補正の精度をクロスチェックすることができる。
【００２８】
ステップＳ５４０では、粒子オブジェクトアレイの測定値が特性化される。粒子径分布ヒストグラム、面積分布ヒストグラム、体積分布ヒストグラム、最小、最大及び標準偏差、並びに分布ピーク分析を用いて、粒子の粒子径及び形状を特徴付ける一連のパラメータを決定することができる。「一連の」パラメータは、本明細書においては、少なくとも１つのパラメータを意味するものとする。
【００２９】
場合によっては、粒子径を求めることは、所望の粒子径が得られるように粒子を処理する（例えば粉砕する）ことを目的としてなされ得る。その場合は、利用可能な目標粒子のプロファイルが存在し得る。該プロファイルは、ステップＳ５４０で用いられる一連のパラメータに関して定義することができる。測定されたパラメータ（ステップＳ５４０の結果）と目標粒子のプロファイルとの比較に基づいて、両者を近づけるためにどのような措置を講じる必要があるかを判定することができる。この判定は、人によって、またはプロセッサによって自動的に行うことができる。判定が自動的になされる場合、プロセッサは、さらなる粉砕が測定値を目標プロファイルに近づけることを（例えば、視覚的に、かつ／または音声によって）操作者に知らせることができる。
【００３０】
上記した粒子径を求める方法は、コーヒーを作る際、特にコーヒー豆を粉砕する際に適用可能である。コーヒー飲料の味はいくつかのパラメータの影響を受けることが知られており、そのうちの１つは、コーヒー粉砕物の細かさまたは粗さである。特定の風味のコーヒーを入れたいと望むユーザは、自身のコーヒーメーカにおいて特定の設定値を用いた場合に自身が望む風味を作り出すことが分かっているコーヒー粉砕物の目標プロファイルを得ることができる。そのような場合、ユーザは、キャリブレーションパターン１２０上にコーヒー粉砕物をまばらに置き、上記の方法を用いて、自身のグラインドを特徴付ける一連のパラメータを取得し、その後、当該パラメータを目標プロファイルと比較することができる。例えば、自身のグラインドに関する測定値分布が０．０３５インチ（８８９μｍ）に集中し、目標プロファイルが０．０４７５インチ（１２０６．５μｍ）であることが一連のパラメータによって示されたとすれば、ユーザは、コーヒー豆を細挽きしすぎたこと及びより粗い調整から再び始める必要があることを知ることになるであろう。
【００３１】
ここで、図５の歪み補正ステップＳ５２０、特に、歪みのある原画像を歪みのない補正画像に変換するための変換行列の生成についてさらに詳細に説明する。キャリブレーションパターンの実際の位置は、物理的な現実世界のキャリブレーションパターンから分かる。よって、２つの位置（すなわち、実際の位置及び画像中の位置）の比較を用いて、撮影されたキャリブレーションパターンを変換して実際のキャリブレーションパターンに戻す変換行列（または任意の他のスカラー）を決定することができる。このキャリブレーションパターンのための変換行列は、画像を現実世界の測定値に変換する方法及びその逆を示している。変換行列を一連のピクセル全域で外挿し、それを画像全体または画像の選択された部分のいずれかに適用することができ、該画像においては、さらに色領域抽出法を用いて、粒子だけが示される（ステップＳ５３０で得られる）。画像に変換行列を適用した後、低歪な（かつ、恐らくは実質的に射影歪みまたは幾何学的歪みがない）部分的に補正された画像が得られる。この手法は、各キャリブレーションマーク１２２のための補正係数を生成することにより、歪みを補正する。
【００３２】
図６は、別の歪み補正法６００を示している。経験的に生成された変換行列を用いる第１の手法と異なり、この第２の手法は、画像のレンズ歪み及び射影歪みの補正を含む。上記したキャリブレーションマークオブジェクトアレイと、ステップＳ６１０及びＳ６２０でキャリブレーションマークオブジェクトアレイによって参照される画像の領域とを用いて、歪み係数が得られる。例えば、"A flexible new technique for camera calibration," IEEE Transaction on pattern Analysis and Machine Intelligence, 22(11): 1330-1334, 2000（非特許文献１、引用を以って本明細書の一部となす）に記載されているＺ．Ｚｈａｎｇのキャリブレーション方法に記載されている方法を用いることができる。非特許文献１に記載されている方法は、チェスボードパターンを用いて複数のキャリブレーションパラメータを求め、それらをその後の写真撮影に用いることができる。しかし、本発明では、上記したような画像から抽出されたキャリブレーションパターン１２０を用いる。得られるキャリブレーション結果には、レンズ歪みパラメータがｋ１及びｋ２として含まれることになる。
【００３３】
Ｚｈａｎｇが提唱した手法は、カメラを用いて、数個（少なくとも２つ）の異なる方向から平面パターンを観察する。このパターンをレーザプリンタで印刷し、「ほどよい」平面（例えば硬い本の表紙）に貼り付けることができる。カメラまたは平面パターンのいずれかを動かすことができ、どのように動いたかを詳細に知る必要はない。Ｚｈａｎｇの提唱した手法は、３次元（単なる暗黙情報）ではなく２次元の距離情報が用いられるので、写真測量キャリブレーションとセルフキャリブレーションとの間に位置する。コンピュータシミュレーション及び実データの両方を用いて、Ｚｈａｎｇの提唱した手法をテストした。本明細書に記載の手法は、３次元コンピュータビジョンを実験室環境から現実世界へ前進させる。
【００３４】
単一平面を観察することによって、カメラの内部パラメータに対する制約が得られる。２次元点は、ｍ＝［ｕ，ｖ］Ｔで表される。３次元点は、Ｍ＝［Ｘ，Ｙ，Ｚ］Ｔで表される。符号〜は、最後の要素として１を加えることによって拡張ベクトルを表す。すなわち、
0006465818.tif 000002
及び
0006465818.tif 000003
である。一般的なピンホールによってカメラをモデル化する。３次元点Ｍとその画像投影ｍとの関係は、
0006465818.tif 000004
によって与えられる。ここで、ｓは任意のスケール係数であり、（Ｒ，ｔ）は、カメラモデルの外部パラメータ行列と呼ばれ、回転行列と平行移動（並進）行列を合わせた行列であって、世界座標系をカメラ座標系と関連付け、Ａは、カメラモデルの内部パラメータ行列と呼ばれ、
0006465818.tif 000005
によって与えられる。ここで、（ｕ０，ｖ０）は主点の座標であり、α及びβは画像のｕ軸及びｖ軸におけるスケール係数であり、γは２つの画像軸の歪度を説明するパラメータである。Ａ−Ｔは、（Ａ−１）Ｔまたは（ＡＴ）−１を略記したものである。
【００３５】
モデル平面は、世界座標系のＺ＝０上に存在すると仮定することができる。回転行列Ｒのｉ番目の列ベクトルをｒｉで表す。式（１）から、
0006465818.tif 000006
が得られる。ここでも符号Ｍを用いてモデル平面上の点を表しているが、Ｚは０に等しいので、Ｍ＝［Ｘ，Ｙ］Ｔである。同様にして、Ｍ〜＝［Ｘ，Ｙ，１］Ｔである。したがって、モデル点Ｍ及びその画像ｍは、ホモグラフィＨによって次のように関連付けられる。
0006465818.tif 000007
明らかであるように、３×３行列Ｈは、スケール係数を除いて定義される。
【００３６】
モデル平面の或る画像を所与として、ホモグラフィを推定することができる。ホモグラフィを
0006465818.tif 000008
で表すと、式（２）から、
0006465818.tif 000009
が得られる。ここで、λは任意のスカラーである。ｒ１及びｒ２が正規直交するという知識を利用すると、内部パラメータに関する以下の制約条件が成り立つ。
0006465818.tif 000010
0006465818.tif 000011
このように、１つのホモグラフィを所与として、２つの基本的な制約式が立てられる。ホモグラフィは８自由度を有するので、６つの外部パラメータ（回転が３つ、平行移動が３つ）が存在し、内部パラメータに関する２つの制約が得られる。パラメータＡ−ＴＡ−１は、実際に絶対円錐曲線の画像を表す。次に、幾何学的な解釈を与える。
【００３７】
本明細書では、モデル平面は次式によりカメラ座標系で表される。
0006465818.tif 000012
ここで、無限遠点に関してはｗ＝０であり、それ以外ではｗ＝１である。この平面は、或る線において無限遠平面と交差し、
0006465818.tif 000013
及び
0006465818.tif 000014
が当該線上の２つの特定の点であることは容易に分かる。線上のいかなる点もこれら２つの点の線形結合であり、すなわち、
0006465818.tif 000015
である。ここで、上記の線と絶対円錐曲線の交点を計算してみよう。定義上は、点ｘ∞（円点）はｘ∞Ｔｘ∞＝０、すなわち、
0006465818.tif 000016
を満たすことが分かっている。解はｂ＝±ａｉであり、ここでｉ２＝−１である。すなわち、２つの交点は、
0006465818.tif 000017
である。これらは画像平面に投影され、スケール係数を除いて、
0006465818.tif 000018
によって与えられる。点
0006465818.tif 000019
は、Ａ−ＴＡ−１によって表される絶対円錐曲線の画像上に存在する。これにより
0006465818.tif 000020
が得られる。実数部及び虚数部の両方を０にすることで、式（３）及び（４）が得られる。
【００３８】
ここからは、カメラキャリブレーション問題を効果的に解決する方法に関する詳細を説明する。最初に解析解、次に最尤基準に基づく非線形最適化手法を示す。最後に、レンズ歪みを考慮して、解析解及び非線形解の両方を求める。
【００３９】
次式（５）を考えてみよう。
0006465818.tif 000021
Ｂは対称であり、６次元ベクトル
0006465818.tif 000022
によって定義されることに留意されたい。
Ｈのｉ番目の列ベクトルをｈｉ＝［ｈｉ１，ｈｉ２，ｈｉ３］Ｔとすると、
0006465818.tif 000023
となり、ここで
0006465818.tif 000024
である。したがって、或るホモグラフィを所与として得られる２つの基本的な制約（３）及び（４）は、次式（８）に示すように、ｂについての２つの同次方程式に書き直すことができる。
0006465818.tif 000025
上式（８）のような方程式をｎ個積み重ねることによってモデル平面のｎ個の画像が観察された場合、結果は、
0006465818.tif 000026
で表すことができる。ここで、Ｖは２ｎ×６行列である。ｎ≧３である場合には、通常、スケール係数を除いて定義される一意解ｂが得られる。ｎ＝２である場合には、スキューレス制約γ＝０、すなわち、［０，１，０，０，０，０］ｂ＝０を与え、追加の方程式として式（９）に加えることができる。ｎ＝１である場合には、（例えば画像中心における）ｕ０及びｖ０が既知でありかつγ＝０であると仮定して、２つのカメラ内部パラメータ、例えばα及びβを解くことができる。式（９）の解は、最小固有値に関連付けられたＶＴＶの固有ベクトル（等価には、最小特異値に関連付けられたＶの右特異ベクトル）として公知である。
【００４０】
ｂが推定されたら、カメラ内部パラメータ行列Ａの値を求めることができる。Ａが分かれば、各画像についての外部パラメータを求めることができる。例えば、式（２）を用いて、以下の式が得られる。
0006465818.tif 000027
ここで、
0006465818.tif 000028
である。データにノイズが存在するため、そのようにして求められた行列Ｒ＝［ｒ１，ｒ２，ｒ３］は回転行列の特性を満たしていない。
【００４１】
モデル平面のｎ個の画像及びモデル平面上のｍ個の点が存在すると仮定する。画像の点は、独立同一分布に従うノイズを含んでいるとも仮定する。次の関数
0006465818.tif 000029
を最小化することによって、最尤推定値を得ることができる。ここで、
0006465818.tif 000030
は式（２）に従う画像ｉにおける点Ｍｊの投影である。回転行列Ｒは、回転軸に対して平行でありかつその大きさは回転角度に等しいようなｒで示される３次元パラメータのベクトルによってパラメータ化される。Ｒ及びｒは、ロドリゲスの公式によって関連付けられる。値（１０）の最小化は非線形最小化問題であり、レーベンバーグ・マーカート・アルゴリズムを用いて解くことができる。該アルゴリズムは、上記した手法を用いて得られるＡ，｛Ｒｉ，ｔｉ｜ｉ＝１．．．ｎ｝の初期推測値を用いる。
【００４２】
上記の解法は、カメラのレンズ歪みを考慮していない。しかし、デスクトップカメラは通常、特に半径方向のレンズ歪みが顕著である。ここで、半径方向歪みの最初の２項について検討する。歪み関数は、半径方向成分、特に最初の項が支配的であるようである。
【００４３】
理想的な（歪みのない）ピクセル画像座標を（ｕ，ｖ）とし、対応する実際の観察された画像座標を
0006465818.tif 000031
とする。理想的な点は、ピンホールモデルに従うモデル点の投影である。同様に、（ｘ，ｙ）及び
0006465818.tif 000032
はそれぞれ理想的な（歪みのない）正規化画像座標及び現実の（歪みのある）正規化画像座標である。
0006465818.tif 000033
0006465818.tif 000034
ここで、ｋ１及びｋ２は半径方向の歪み係数である。半径方向歪みの中心は、主点と同じである。
0006465818.tif 000035
0006465818.tif 000036
から。
【００４４】
交互方式による半径方向歪みの推定。半径方向歪みが小さいと予想されるとき、単に歪みを無視することによって、上記の手法を用いて適度にうまく他の５つの内部パラメータを推定することが期待される。このとき、１つの方策は、他のパラメータを推定し終わった後にｋ１及びｋ２を推定することであり、それによって理想的なピクセル座標（ｕ，ｖ）が得られる。その後、式（１１）及び（１２）から、各画像における各点のための２つの方程式が得られる。
0006465818.tif 000037
ｎ個の画像中のｍ個の点を所与として、全ての方程式を積み重ねることで全部で２ｍｎ個の方程式を得ることができ、これは行列形式ではＤｋ＝ｄで表され、このときｋ＝［ｋ１，ｋ２］Ｔである。線形最小二乗解は、
0006465818.tif 000038
によって与えられる。ｋ１及びｋ２が推定されたら、式（１１）及び（１２）に代えて、
0006465818.tif 000039
を用いて式（１０）を解けば、他のパラメータの推定値を精密化することができる。これら２つの手順は、収束するまで交互に行うことができる。
【００４５】
上記の交互方式の手法は収束が遅いであろう。式（１０）の自然な拡張は、次の関数を最小化することによって、一連のパラメータ全部を推定することである。
0006465818.tif 000040
ここで、
0006465818.tif 000041
は、式（２）に従う画像ｉにおける点Ｍｊの投影であり、式（１１）及び（１２）に従う歪みがそれに続く。これは非線形最小化問題であり、レーベンバーグ・マーカート・アルゴリズムを用いて解かれる。この場合もやはり、既に開示したように、回転行列が３次元ベクトルｒによってパラメータ化される。上記の手法を用いてＡ及び｛Ｒｉ，ｔｉ｜ｉ＝１．．．ｎ｝の初期推測値を求めることができる。ｋ１及びｋ２の初期推測値は、上記の半径方向歪みの解により、または単に０にセットすることによって求めることができる。
【００４６】
ステップＳ６３０では、レンズ歪みパラメータｋ１及びｋ２を次に原画像６０５に用いて、レンズ歪みが補正された画像６１５を得る。あるいは、画像を用いる代わりに、粒子の形状を表わす粒子オブジェクトアレイを補正することもできる。レンズ歪みパラメータｋ１及びｋ２は、下式（１５）及び（１６）を用いて画像のレンズ歪みを補正するために用いられる。
【００４７】
レンズに起因する歪みがない場合の画像中の正確な位置を（ｘｃｏｒｒｅｃｔ，ｙｃｏｒｒｅｃｔ）で表わす。このとき、
0006465818.tif 000042
0006465818.tif 000043
である。ここで、
0006465818.tif 000044
であり、ｕ０及びｖ０は主点（すなわち、カメラの光軸と画像平面の交点）である。
【００４８】
このとき、レンズ歪みの補正は、記録されたビットマップに対して逆歪みを与えて歪ませることによって行うことができる。補正画像における各ピクセルについては、それぞれ対応する位置が、上式（１５）及び（１６）を用いて歪みのある画像上にマッピングされる。以下で『画像の幾何学変換』と題するセクションにおいて、カメラの内部パラメータ（例えば、焦点、レンズ、主点、歪み係数）及び外部パラメータ（回転及び平行移動行列）による２次元画像座標及び３次元世界座標の関連付けについて説明する。出力画像（補正されたビットマップ）における各整数ピクセル座標について、入力画像（記録されたビットマップ）まで遡り、対応するフロート座標を見つけ出し、周囲の整数ピクセルを用いてフロート座標を補間する。この処理では、バイリニア補間を用いることができる。
【００４９】
要約すれば、本明細書において提示されているレンズ歪み補正手順は以下の通りであり、その一部にはＺｈａｎｇの手法が組み込まれている。
１）或るパターンを印刷し、それを平面に貼り付ける；
２）モデル平面の数個の画像を、平面またはカメラのいずれかを動かすことによって方向を変えて撮影する；
３）画像中の特徴点を検出する；
４）上記で与えられた閉形式解を用いて、５つの内部パラメータ及び全ての外部パラメータを推定する；
５）線形最小二乗式（１３）を解くことによって、半径方向の歪み係数を推定する；
６）値（１４）を最小化することによって全てのパラメータを精密化する；この時点で、ｋ１及びｋ２は割り当てられた値を有する；
７）式（１５）及び（１６）並びにレンズ歪みのある画像の幅及び高さを用いて、レンズ歪みのない画像の幅及び高さを求める。スカラーを用いて、両画像を同じ幅に維持し、それに応じて高さをスケーリングする；
８）レンズ歪みのない画像における各ピクセルについて、レンズ歪みのある画像におけるその対応する位置を式（１５）及び（１６）を用いて求め、歪みのある画像において近傍のシェパード補間を適用することによって、補正画像のための色情報を入手する。
【００５０】
ステップＳ６４０では、矩形キャリブレーションマークの四隅の点を用いて射影歪みの補正を行い、それによって以下のプロセスを用いてホモグラフィＨを解くことができる。
世界座標において或る点
0006465818.tif 000045
を有すると仮定する。これは同次座標では
0006465818.tif 000046
の如く表される。
同様に、画像座標における対応する点は
0006465818.tif 000047
であり、これは同次座標では
0006465818.tif 000048
の如く表される。
これら２つの点の関係は、次式で表すことができる。
0006465818.tif 000049
ここで、
0006465818.tif 000050
は、これから解こうとするホモグラフィである。
行列の乗算を用いて方程式の両辺を展開すると、
0006465818.tif 000051
が得られる。３つ目の式を最初の２つの式に代入すると、この２つ１組の点から、２つの方程式が得られる。
0006465818.tif 000052
Ｈの未知数は８なので、Ｈを解くには４組の点が必要である。８つの方程式を行列の形式で表すと、次のようになる。
0006465818.tif 000053
したがって、投影歪みが生じた各画像について、この画像における４つの点を選ぶと、これら４つの点の世界座標が与えられれば、Ｈを解くことができる。
【００５１】
上式の「ｋ」は、レンズ係数ｋ１，ｋ２とは異なる、２次元座標の同次表現のためのスカラーである。複数のキャリブレーションマーク１２２の４つの点（例えば、形状が矩形である場合には四隅）を用いて、歪みの不均一性を相殺することができる。図６に示したように、この手法における射影歪みを補正するための開始点は、原画像ではなく、レンズ歪み効果が除去された補正画像である。ホモグラフィＨは、レンズ歪みが補正された画像において特定された一連のキャリブレーションマークから４つの点を用いて求められ、その後、ホモグラフィＨを補正画像に適用することによって、レンズ歪み及び射影歪みの両方が補正されたビットマップ６２５（補正済みの、すなわち本当の大きさのビットマップ）が求められる。
【００５２】
射影歪みは、通常、カメラの光軸が物体の中心に対して垂直でないときに生じる。格子状パターンを有する背景上でキャプチャされた粒子の画像を用い、シーン中の複数対（例えば５対）の直交線を用いて、射影歪みを補正するためのホモグラフィを求めることができる。この補正を行うことにより、多くの場合、物理的世界における平行線は画像においても平行をなし、物理的世界における直交線は画像中でも直交し、物理的世界における正方形は画像中でアスペクト比１を有し、かつ／または物理的世界における円は画像中で円形になる。
【００５３】
既に詳述した射影歪み補正処理を要約すると、当該処理は以下のステップを含む。
【００５４】
１）寸法が既知の直交線を含む或るキャリブレーションパターンを取得し、当該キャリブレーションパターン上に粒子を分散させ、同一のレンズを用いて画像をキャプチャするステップと、
２）画像上の複数対（例えば５対）の直交線を選択するステップと、
３）投影歪みのある画像と投影歪みのない画像間のホモグラフィＨを解くステップと、
４）ホモグラフィＨ並びに投影歪みのある画像の幅及び高さを用いて、投影歪みのない画像の幅及び高さを求め、スカラーを用いて、両画像を同じ幅に維持し、それに応じて高さをスケーリングするステップと、
５）投影歪みのない画像における各ピクセルについて、投影歪みのある画像中の対応する位置を見つけることによって、補正画像のための色情報を入手するステップ。
【００５５】
レンズ歪み補正及び投影歪み補正は、別々にテストして段階的に行うことができるので、シェパード補間は一度だけ行えばよい。
【００５６】
図５及び図６に示した方法は、処理装置において実現することができる。図１に関連して説明したように、カメラ１１０が画像をキャプチャしたら、カメラ１１０に直接接続されたプロセッサを用いて画像のデータ処理を行うことができ、あるいは別体をなすプロセッサに画像データを送信してもよい。
【００５７】
画像の幾何学変換
【００５８】
このセクションでは、粒子の画像の補正及び処理に用いることができるいくつかの既知の画像変換関数について説明する。より具体的には、このセクションで述べる関数は、２次元画像の様々な幾何学変換を行う。つまり、画像の内容は変更せずにピクセルグリッドを変形し、この変形したグリッドを出力画像にマッピングする。実際には、サンプリングによるアーチファクトを回避するため、出力画像から入力画像へ逆の順序でマッピングが行われる。すなわち、出力画像の各ピクセル（ｘ，ｙ）について、これらの関数は、入力画像中の対応する「ドナー」ピクセルの座標を計算し、当該ピクセル値をコピーする。
0006465818.tif 000054
【００５９】
順写像（順方向マッピング）が〈ｇｘ，ｇｙ〉：ｓｒｃ→ｄｓｔとして記述される場合、後述する関数は最初に対応する逆写像（逆方向マッピング）〈ｆｘ，ｆｙ〉：ｄｓｔ→ｓｒｃを求めてから上式を用いる。
幾何学変換の実際の実装では、最も汎用的なＲｅｍａｐから、最も単純かつ高速なＲｅｓｉｚｅまで、上式を用いて２つの主な問題を解く必要がある。
・存在しないピクセルの外挿。フィルタリング関数と同様に、或る（ｘ，ｙ）に対して、ｆｘ（ｘ，ｙ）またはｆｙ（ｘ，ｙ）のいずれか一方または両方が画像の外側にはみ出してしまうことがある。この場合、何らかの外挿法を用いる必要がある。ＯｐｅｎＣＶでは、フィルタリング関数の場合と同じ外挿法の選択が提供されている。さらに、Ｂｏｒｄｅｒ＿Ｔｒａｎｓｐａｒｅｎｔ法も提供されている。これは、出力画像中の対応するピクセルが全く変更されないことを意味する。
・ピクセル値の内挿。通常、ｆｘ（ｘ，ｙ）及びｆｙ（ｘ，ｙ）は浮動小数点数である。このことは、〈ｆｘ，ｆｙ〉が、アフィン変換、透視変換、または半径方向のレンズ歪み補正などであり得ることを意味する。よって、部分座標上に存在するピクセル値を取得する必要がある。最も単純なケースでは、座標を最も近い整数値の座標に丸め、その対応するピクセル値を用いることができる。これは、最近傍補間（ニアレストネイバ補間）と呼ばれる。しかし、より洗練された補間法を用いれば、より良好な結果を得ることができる。この場合、求めたピクセル（ｆｘ（ｘ，ｙ），ｆｙ（ｘ，ｙ））の近傍に対して多項式関数をフィッティングし、（ｆｘ（ｘ，ｙ），ｆｙ（ｘ，ｙ））における多項式の値を、補間されたピクセル値と見なす。ＯｐｅｎＣＶでは、複数の補間法の中から選択することができる。そのうちのいくつかを以下に説明する。
【００６０】
ＧｅｔＲｏｔａｔｉｏｎＭａｔｒｉｘ２Ｄ
この関数は、２次元回転のアフィン行列を求める。この処理に用いられるパラメータは次の通りである。
ｃｅｎｔｅｒ−入力画像中にある回転中心座標。
ａｎｇｌｅ−度単位で表される回転角度。正の値は反時計回転を意味する（座標原点は、左上隅にあると仮定する）。
ｓｃａｌｅ−均等スケール係数
ｍａｐ＿ｍａｔｒｉｘ−アフィン変換，２×３補間浮動小数点の出力行列。
この関数は、次の行列を求める。
0006465818.tif 000055
ここで、
0006465818.tif 000056
である。この変換は、回転中心を自身にマッピングする。それが目的でない場合は、シフト調整を行う必要がある。
【００６１】
ＧｅｔＡｆｆｉｎｅＴｒａｎｓｆｏｒｍ
この関数は、３組の対応点からアフィン変換を求める。この処理に用いられるパラメータは次の通りである。
ｓｒｃ−入力画像中の三角形の頂点の座標
ｄｓｔ−出力画像中の対応する三角形の頂点の座標
ｍａｐＭａｔｒｉｘ−２×３の出力行列へのポインタ
この関数は、アフィン変換の２×３行列を求める：
0006465818.tif 000057
ここで、
0006465818.tif 000058
である。
【００６２】
ＧｅｔＰｅｒｓｐｅｃｔｉｖｅＴｒａｎｓｆｏｒｍ
この関数は、４組の対応点から透視変換を求める。この処理に用いられるパラメータは次の通りである。
ｓｒｃ−入力画像中の四角形の頂点の座標
ｄｓｔ−出力画像中の対応する四角形の頂点の座標
ｍａｐＭａｔｒｉｘ−３×３の出力行列［Ａ／ｂ］へのポインタ
この関数は、透視変換の行列を求める：
0006465818.tif 000059
ここで、
0006465818.tif 000060
である。
【００６３】
ＧｅｔＱｕａｄｒａｎｇｌｅＳｕｂＰｉｘ
この処理は、画像から四角形領域のピクセル値をサブピクセル精度で取得する。この処理に用いられるパラメータは次の通りである。
ｓｒｃ−入力画像，
ｄｓｔ−抽出された四角形
ｍａｐＭａｔｒｉｘ−２×３の変換行列［Ａ／ｂ］
この関数は、ｓｒｃからピクセル値をサブピクセル精度で抽出し、それらをｄｓｔに格納する：
0006465818.tif 000061
ここで、
0006465818.tif 000062
であり、かつ
0006465818.tif 000063
である。
非整数座標におけるピクセル値は、バイリニア補間を用いて取得される。画像境界の外側に存在する領域のピクセル値が必要である場合は、当該ピクセル値を取得するために複製境界モードを用いる。マルチチャンネル画像の各チャンネルは、それぞれ独立して処理される。
【００６４】
ＧｅｔＲｅｃｔＳｕｂＰｉｘ
この関数は、画像から矩形領域のピクセル値をサブピクセル精度で取得する。
ｓｒｃ−入力画像
Ｄｓｔ−抽出された矩形
Ｃｅｎｔｅｒ−補間浮動小数点で表された、入力画像中の抽出された矩形領域の中心座標。中心は、必ず画像中になければならない。
この関数は、ｓｒｃからピクセルを抽出する：
0006465818.tif 000064
ここで、非整数座標におけるピクセル値は、バイリニア補間を用いて取得される。マルチチャンネル画像の各チャンネルは、それぞれ独立して処理される。矩形領域の中心は必ず画像中になければならないが、矩形領域の一部は画像境界の外側にはみ出してもよい。その場合は、画像境界を越えた領域のピクセル値を取得するために、複製境界モードが用いられる。
【００６５】
ＬｏｇＰｏｌａｒ
この関数は、画像を対数極座標空間にリマッピングする。
・ｓｒｃ−入力画像
・ｄｓｔ−出力画像
・ｃｅｎｔｅｒ−変換中心；この場所で出力の精度が最大となる
・Ｍ−スケーリングパラメータの大きさ。
・ｆｌａｇｓ−補間法と、以下の任意選択のフラグとの組合せ
・ＣＶ＿ＷＡＲＰ＿ＦＩＬＬ＿ＯＵＴＬＩＥＲＳは、出力画像の全ピクセルを埋める。対応するピクセルが入力画像における外れ値であるピクセルは、値として０がセットされる。
・ＣＶ＿ＷＡＲＰ＿ＩＮＶＥＲＳＥ＿ＭＡＰ  以下の説明を参照。
この関数は、次の変換を用いて入力画像を変換する。
・順変換（ＣＶ＿ＷＡＲＰ＿ＩＮＶＥＲＳＥ＿ＭＡＰがセットされていない）：
0006465818.tif 000065
・逆変換（ＣＶ＿ＷＡＲＰ＿ＩＮＶＥＲＳＥ＿ＭＡＰがセットされている）：
0006465818.tif 000066
ここで、
0006465818.tif 000067
である。
この関数は、人間の「中心」視覚を模倣したものであり、物体追跡などのための、高速なスケーリング及び回転に不変なテンプレートマッチングに用いることができる。この関数は、インプレースモードでの処理は不可能である。
【００６６】
Ｒｅｍａｐ
この関数は、画像に対して一般的幾何学変換を適用する。
ｓｒｃ−入力画像，
ｄｓｔ−出力画像，
ｍａｐｘ−ｘ座標マップ
ｍａｐｙ−ｙ座標マップ
ｆｌａｇｓ−補間法（ｒｅｓｉｚｅ（）を参照）。ＩＮＴＥＲ＿ＡＲＥＡ法は、この関数ではサポートされていない。
ｆｉｌｌｖａｌ−外れ値を埋めるために用いられる値
この関数は、指定されたマップを用いて入力画像を以下のように変換する。
0006465818.tif 000068
非整数座標を有するピクセル値は、利用可能な補間法のうちの１つを用いて求められる。ｍａｐｘ及びｍａｐｙは、それぞれ個別の浮動小数点型マップｍａｐ１及びｍａｐ２としてコード化されるか、あるいは（ｘ，ｙ）のインタリーブされた浮動小数点型マップｍａｐ１またはＣｏｎｖｅｒｔＭａｐｓ関数を用いて作成された固定小数点型マップとしてコード化され得る。マップが浮動小数点表現から固定小数点表現に変換されるとすれば、その理由は、リマッピング演算が大幅に高速化される（約２倍）からである。変換された場合、ｍａｐ１は（ｃｖＦｌｏｏｒ（ｘ），ｃｖＦｌｏｏｒ（ｙ））というペアを含み、ｍａｐ２は補間係数テーブルのインデックスを含む。この関数は、インプレースモードでの処理は不可能である。
【００６７】
Ｒｅｓｉｚｅ
この関数は、画像のサイズ変更を行う。
ｓｒｃ−入力画像
ｄｓｔ−出力画像；サイズｄｓｉｚｅ（０でない場合）またはｓｒｃ．ｓｉｚｅ（）、ｆｘ及びｆｙから計算されたサイズを有する；ｄｓｔの型はｓｒｃと同じである。
ｉｎｔｅｒｐｏｌａｔｉｏｎ−補間法：
・ＩＮＴＥＲ＿ＮＮ−最近傍補間
・ＩＮＴＥＲ＿ＬＩＮＥＡＲ−バイリニア補間（デフォルトで用いられる）
・ＩＮＴＥＲ＿ＡＲＥＡ−ピクセル領域同士の関係を利用したリサンプリング。画像デシメーション法としては、モアレのない結果が得られるので好ましいであろう。しかし、画像を拡大する場合は、ＩＮＴＥＲ＿ＮＮ法と同様である。
・ＩＮＴＥＲ＿ＣＵＢＩＣ−近傍４×４ピクセルを利用するバイキュービック補間
・ＩＮＴＥＲ＿ＬＡＮＣＺＯＳ４−近傍８×８ピクセルを利用するランツォシュ補間
画像を縮小するためには、通常はＩＮＴＥＲ＿ＡＲＥＡ補間を用いるのが最良であると思われるが、画像を拡大するためには、ＩＮＴＥＲ＿ＣＵＢＩＣ（低速）またはＩＮＴＥＲ＿ＬＩＮＥＡＲ（より高速だが、それでも許容範囲であると思われる）を用いるのが最良であると思われる。
【００６８】
ＷａｒｐＡｆｆｉｎｅ
この関数は、画像のアフィン変換を行う。
ｓｒｃ−入力画像
ｄｓｔ−出力画像
ｍａｐＭａｔｒｉｘ−２×３の変換行列
ｆｌａｇｓ−補間法と、任意選択のフラグとの組合せ
-ＣＶ＿ＷＡＲＰ＿ＦＩＬＬ＿ＯＵＴＬＩＥＲＳは、出力画像の全ピクセルを埋める；対応するピクセルが入力画像における外れ値であるピクセルは、値としてｆｉｌｌｖａｌがセットされる。
-ＣＶ＿ＷＡＲＰ＿ＩＮＶＥＲＳＥ＿ＭＡＰは、行列が出力画像から入力画像への逆変換であることを表しており、したがって、この行列を直接ピクセル補間に用いることができる。このフラグが指定されていない場合は、この関数が、ｍａｐＭａｔｒｉｘの逆変換を求める。
Ｆｉｌｌｖａｌ−外れ値を埋めるために用いられる値
フラグＷＡＲＰ＿ＩＮＶＥＲＳＥ＿ＭＡＰがセットされているとき、ＷａｒｐＡｆｆｉｎｅ関数は、指定された行列を用いて入力画像を変換する。
0006465818.tif 000069
そうでない場合は、先ずＩｎｖｅｒｔＡｆｆｉｎｅＴｒａｎｓｆｏｒｍでアフィン変換の逆変換を求め、次にそれをＭの代わりに上式に代入する。この関数は、インプレースモードでの処理は不可能である。
0006465818.tif 000070
この関数は、ＧｅｔＱｕａｄｒａｎｇｌｅＳｕｂＰｉｘに類似しているが、両者は完全に同じではない。ＷａｒｐＡｆｆｉｎｅは、入力画像及び出力画像が同じデータ型を有することを要求し、より大きなオーバヘッドを有し（よって、小さな画像にそれほど適していない）、かつ出力画像の一部を変更しないままにしておくことができる。一方で、ＧｅｔＱｕａｄｒａｎｇｌｅＳｕｂＰｉｘは、８ビットの画像から補間浮動小数点バッファへ四角形を抽出することができ、より小さなオーバヘッドを有し、かつ常に出力画像内容全体を変更する。この関数は、インプレースモードでの処理は不可能である。
【００６９】
ＷａｒｐＰｅｒｓｐｅｃｔｉｖｅ
この関数は、画像の透視変換を行う。この関数に有用なパラメータには、次のものが含まれる。
Ｓｒｃ−入力画像
Ｄｓｔ−出力画像
ｍａｐＭａｔｒｉｘ−３×３の変換行列
ｆｌａｇｓ−補間法と、以下の任意選択のフラグとの組合せ
・ＣＶ＿ＷＡＲＰ＿ＦＩＬＬ＿ＯＵＴＬＩＥＲＳは、出力画像の全ピクセルを埋める；対応するピクセルが入力画像における外れ値であるピクセルは、値としてｆｉｌｌｖａｌがセットされる。
・ＣＶ＿ＷＡＲＰ＿ＩＮＶＥＲＳＥ＿ＭＡＰは、行列が出力画像から入力画像への逆変換であることを表しており、したがって、この行列を直接ピクセル補間に用いることができる。このフラグが指定されていない場合は、この関数が、ｍａｐＭａｔｒｉｘの逆変換を求める。
ｆｉｌｌｖａｌ−外れ値を埋めるために用いられる値
この関数は、指定された行列を用いて入力画像を変換する。
0006465818.tif 000071
この関数は、インプレースモードでの処理は不可能であることに留意されたい。
【００７０】
本発明の実施形態について方法または手法の観点から説明してきたが、本発明は、種々の方法の実施形態を実施するためのコンピュータ読み取り可能な命令が格納されている非一時的なコンピュータ読み取り可能な媒体を含む製品をも含むことを理解されたい。コンピュータ読み取り可能な媒体は、例えば、コンピュータ読み取り可能なコードを格納するための、半導体、磁気、光磁気、光、または他の形態のコンピュータ読み取り可能な媒体を含み得る。さらに、本発明は、本明細書に開示されている本発明の種々の実施形態を実行するための装置をも含み得る。そのような装置は、実施形態に関連する演算を行うための専用の回路及び／またはプログラム可能な回路を含み得る。
【００７１】
上記装置の例には、適切にプログラミングされた汎用コンピュータ及び／または専用コンピュータデバイスが含まれ、本発明の実施形態に関連する様々な演算に適しているコンピュータ／コンピュータデバイスと専用／プログラム可能なハードウェア回路（電気回路、機械回路、及び／または光回路など）の組合せも含まれ得る。
【図１】
0006465818.tif 000072
【図２】
0006465818.tif 000073
【図３】
0006465818.tif 000074
【図４】
0006465818.tif 000075
【図５】
0006465818.tif 000076
【図６】
0006465818.tif 000077