(57)【要約】  １つの実施形態において、画像内の関心領域(region of interest, ROI)を画定する関心領域画定機構を含む、埋め込まれたデバイスが与えられる。埋め込まれたデバイスの変換機構は、非線形の拡大またはピンチング変換を関心領域に適用し、関心領域内の拡大またはピンチングを、関心領域の焦点における、より大きい量から、関心領域の外縁における、より小さい量へ変化させる。【選択図】    図１
2008515353.tif 000002
【特許請求の範囲】
【請求項１】
画像内の関心領域を画定する関心領域画定機構と、
非線形の変換を適用し、関心領域へ拡大またはピンチングをもたらし、関心領域内の拡大またはピンチングを、関心領域の焦点における、より大きい量から、関心領域の外縁における、より小さい量へ変化させる変換機構とを含む埋め込まれたデバイス。
【請求項２】
変換機構が、拡大およびピンチングに、同じ非線形の変換関数を適用する請求項１記載の埋め込まれたデバイス。
【請求項３】
関心領域画定機構に連結されたユーザインターフェースをさらに含む請求項２記載の埋め込まれたデバイス。
【請求項４】
グラフィックスエンティティをさらに含み、関心領域画定機構および変換機構が、グラフィックスエンティティに連結されている請求項２記載の埋め込まれたデバイス。
【請求項５】
システムバスと、
メインメモリと、
グラフィックスエンティティに連結されたディスプレイスクリーンとをさらに含み、
メインメモリおよびグラフィックスエンティティが、システムバスに連結されている請求項４記載の埋め込まれたデバイス。
【請求項６】
埋め込まれたデバイスが、移動電話である請求項２記載の埋め込まれたデバイス。
【請求項７】
移動電話が、ディジタルカメラを含んでいる請求項６記載の埋め込まれたデバイス。
【請求項８】
非線形の変換が、整数演算のみを使用する請求項１記載の埋め込まれたデバイス。
【請求項９】
非線形の拡大またはピンチング変換のためのパラメータのユーザ選択を受信するユーザインターフェースをさらに含む埋め込まれたデバイスであって、パラメータが、変換が拡大をもたらすか、またはピンチングをもたらすかを決めるパラメータと、拡大またはピンチングの大きさを決めるパラメータとを含む請求項２記載の埋め込まれたデバイス。
【請求項１０】
関心領域画定機構によって画定された関心領域が、画像自体よりも、より小さい寸法であるとき、関心領域内にない画素は、変換機構によって変換されない請求項２記載の埋め込まれたデバイス。
【請求項１１】
関心領域画定機構が、楕円形の関心領域を画定する楕円形オプションを含む請求項２記載の埋め込まれたデバイス。
【請求項１２】
関心領域画定機構は、円形の関心領域を画定する円形オプションを含む請求項２記載の埋め込まれたデバイス。
【請求項１３】
変換機構によって行われる非線形の拡大またはピンチングの変換が、次の式（１）および（２）によって表わされ、
【数１】
2008515353.tif 000017
ｘｉｎおよびｙｉｎは、関心領域内の入力画素の位置の座標であり、ｘ０およびｙ０は、円形の関心領域の中心の位置の座標であり、Ｒは、関心領域の半径であり、ｘｏｕｔおよびｙｏｕｔは、出力画素の位置の座標であり、ａは、より大きい量を示すパラメータであり、ｍは、変換が拡大をもたらすか、またはピンチングをもたらすかを示す２値のパラメータであり、ｋは、より大きい量によって影響を受ける関心領域の区域と、より小さい量によって影響を受ける関心領域の区域との間の、画像変換領域における滑らかさおよび連続性の度合いを示すパラメータである請求項２記載の埋め込まれたデバイス。
【請求項１４】
変換機構が、計算を、整数のオーバーフローを回避する所定の計算順で計算する請求項８記載の埋め込まれたデバイス。
【請求項１５】
変換機構が、拡大またはピンチングの変換を実時間で行う請求項１記載の埋め込まれたデバイス。
【請求項１６】
変換機構が、関心領域内の一次元のみにおいて拡大またはピンチングの変換を行う請求項１記載の埋め込まれたデバイス。
【請求項１７】
グラフィックスエンティティから、拡大またはピンチング変換を有する関心領域と、画像の変換されていない部分との両者を含む変換された画像を表示するディスプレイスクリーンをさらに含む請求項５記載の埋め込まれたデバイス。
【請求項１８】
変換された画像が、１つ以上の変換された部分をもつ顔の画像である請求項１７記載の埋め込まれたデバイス。
【請求項１９】
デバイスが、画像に対して２つ以上の変換を行うように適応させられていて、２つ以上の変換が、同じまたは異なるパラメータをもつ請求項１０記載の埋め込まれたデバイス。
【請求項２０】
画像内の関心領域を画定し、
非線形の拡大またはピンチング変換を関心領域に適用し、関心領域内の拡大またはピンチングを、関心領域の焦点における、より大きい量から、関心領域の外縁における、より小さい量へ変化させる機械と相互運用可能な機械読み出し可能媒体。
【請求項２１】
同じ非線形の変換関数が、拡大およびピンチングに適用される請求項２０記載の機械読み出し可能媒体。
【請求項２２】
前記適用が、整数演算で行われる請求項２１記載の機械読み出し可能媒体。
【請求項２３】
タスクが、ユーザが、変換が拡大をもたらすか、またはピンチングをもたらすかを決める非線形の拡大またはピンチング変換のためのパラメータと、拡大またはピンチングの大きさまたは累乗のためのパラメータとを、直接的または間接的に選択できるようにすることをさらに含む請求項２１記載の機械読み出し可能媒体。
【請求項２４】
画像内の関心領域が、画像自体よりも小さい寸法であり、関心領域内にない画素は、変換されない請求項２１記載の機械読み出し可能媒体。
【請求項２５】
関心領域が、形状において楕円形である請求項２１記載の機械読み出し可能媒体。
【請求項２６】
関心領域が、形状において円形である請求項２１記載の機械読み出し可能媒体。
【請求項２７】
非線形の拡大またはピンチング変換が、次の式（１）および（２）によって表わされ、
【数２】
2008515353.tif 000018
ｘｉｎおよびｙｉｎは、関心領域内の入力画素の位置の座標であり、ｘ０およびｙ０は、円形の関心領域の中心の位置の座標であり、Ｒは、関心領域の半径であり、ｘｏｕｔおよびｙｏｕｔは、出力画素の位置の座標であり、ａは、より大きい量を示すパラメータであり、ｍは、変換が拡大をもたらすか、またはピンチングをもたらすかを示す２値のパラメータであり、ｋは、より大きい量によって影響を受ける関心領域の区域と、より小さい量によって影響を受ける関心領域の区域との間の、画像変換領域における滑らかさおよび連続性の度合いを示すパラメータである請求項２６記載の機械読み出し可能媒体。
【請求項２８】
前記適用を、整数のオーバーフローを回避する所定の順序で行う機械とも相互運用可能である請求項２２記載の機械読み出し可能媒体。
【請求項２９】
非線形の変換が、実時間で行われる請求項２１記載の機械読み出し可能媒体。
【請求項３０】
機械が、埋め込まれたデバイスである請求項２１記載の機械読み出し可能媒体。
【請求項３１】
埋め込まれたデバイスが、移動電話である請求項３０記載の機械読み出し可能媒体。
【請求項３２】
移動電話が、ディジタルカメラを含んでいる請求項３１記載の機械読み出し可能媒体。
【請求項３３】
移動電話が、整数マイクロプロセッサを有する請求項３１記載の機械読み出し可能媒体。
【請求項３４】
受信機／送信機組立体と、
マイクロプロセッサと、
マイクロプロセッサに連結されていて、画像内の関心領域を画定する関心領域画定機構と、
マイクロプロセッサに連結されていて、非線形の拡大またはピンチングの変換関数を、関心領域に適用し、関心領域内の拡大またはピンチングを、関心領域の焦点における、より大きい量から、関心領域の外縁における、より小さい量へ変化させる変換機構とを含む移動電話。
【請求項３５】
変換機構が、拡大およびピンチングに、同じ非線形の変換関数を使用する請求項３４記載の移動電話。
【請求項３６】
マイクロプロセッサが、整数マイクロプロセッサである請求項３５記載の移動電話。
【請求項３７】
変換機構が、整数演算のみを使用して、非線形の変換を適用する請求項３５記載の移動電話。
【請求項３８】
画像内の関心領域を画定する手段と、
非線形の拡大またはピンチング変換を関心領域に適用する手段であって、関心領域内の拡大またはピンチングを、関心領域の焦点における、より大きい量から、関心領域の外縁における、より小さい量へ変化させる手段とを含む装置。
【請求項３９】
画定手段が、拡大およびピンチングに、同じ非線形の変換関数を使用する請求項３８記載の装置。
【請求項４０】
適用手段が、整数演算を円滑にする手段を含む請求項３９記載のシステム。
【請求項４１】
関心領域を画定する画定手段に連結された、ユーザとインターフェースさせるための手段をさらに含む請求項３９記載のシステム。
【請求項４２】
関心領域が、円形である請求項３９記載のシステム。
【請求項４３】
非線形の拡大またはピンチング変換が、次の式（１）および（２）によって表わされ、
【数３】
2008515353.tif 000019
ｘｉｎおよびｙｉｎは、関心領域内の入力画素の位置の座標であり、ｘ０およびｙ０は、円形の関心領域の中心の位置の座標であり、Ｒは、関心領域の半径であり、ｘｏｕｔおよびｙｏｕｔは、出力画素の位置の座標であり、ａは、より大きい量を示すパラメータであり、ｍは、変換が拡大をもたらすか、またはピンチングをもたらすかを示す２値のパラメータであり、ｋは、より大きい量によって影響を受ける関心領域の区域と、より小さい量によって影響を受ける関心領域の区域との間の、画像変換領域における滑らかさおよび連続性の度合いを示すパラメータである請求項４２記載のシステム。
【請求項４４】
関心領域が、楕円形である請求項３９記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
著作権表示
本特許文献は、著作権の保護を受けた情報を含んでいる。著作権の所有者は、特許文献または特許が、米特許商標局のファイルまたは記録に表示されているときは、任意の者によるそれらの複写に反対しないが、そうでなければ、全ての著作権の権利の一切を留保する。
【０００２】
関連出願の相互参照
２００４年９月２８日に出願された米国仮出願第６０／６１４，２１４号に対して、優先権が主張されている。
【０００３】
開示の背景
本開示は、概ね、ディジタル画像の操作、より具体的には、ディジタル画像の拡大（magnification）およびピンチング（pinching）に関する。
【背景技術】
【０００４】
ディジタル画像の操作とは、ディジタル画像に対して行われ得る多くの種々のタイプの修正および変換を示す。画像操作の実施の例は、回転、拡大、ピンチング、ラッピング、エッジ検出、およびフィルタリングを含む。
【０００５】
幾つかの応用では、拡大およびピンチングのような操作は、ユーザが画像内の細かい細部を見る、または鑑賞するのを助け得る。回転は、ユーザが、ある特定の観点から画像を理解するのを助けるか、または画像を特定の用途に適応させ得る。他の応用では、ディジタル画像の操作は、例えば、画像の一部をつまんで（pinch）、または拡大して、写真の中の顔の表情を変えるといった遊び（amusement）のために行われ得る。ディジタル画像の操作技術は、パターン認識、(例えば、ビデオの監視および人間の行動解析における)特徴抽出、画像復元、画像改善、コンピュータアニメシーケンス（computer animated sequence）のラッピング／モーフィング、および生物医学の画像処理を含む応用において、産業にも使用されている。
【０００６】
多くのディジタル画像の操作技術は、写真編集ソフトウェアの形で市販されている。ディジタルカメラおよび移動電話のような埋め込まれたデバイスも、ディジタル画像操作の機能性をもっている。
【発明の開示】
【課題を解決するための手段】
【０００７】
開示の１つの実施形態または態様にしたがって、画像内の関心領域（region of interest, ROI）を画定する関心領域画定機構を含む埋め込まれたデバイスが与えられる。埋め込まれたデバイスの変換機構は、非線形の拡大またはピンチングを関心領域に適用し、関心領域内の拡大またはピンチングを、関心領域の焦点における、より大きい量から、関心領域の外縁における、より小さい量へ変化させる。
【発明を実施するための最良の形態】
【０００８】
実施形態は、添付の図面を参照して記載される。これらの図面において、同じ参照符号は、図面全体において同じ要素を表わす。
【０００９】
図１は、例示的な埋め込まれたデバイス10のブロック図であり、これは、示されている実施形態において、無線移動通信デバイスを含む。示されている埋め込まれたデバイス10は、システムバス14と、システムバス14を介して埋め込まれたデバイス10の他の部分に接続され、それらによってアクセス可能なデバイスメモリ16(示されているデバイス10内のメインメモリ)と、システムバス14に接続されたハードウェアエンティティ18とを含む。ハードウェアエンティティ18の少なくとも幾つかは、メインメモリ16へのアクセスおよびその使用に関与する動作を行う。ハードウェアエンティティ18は、マイクロプロセッサ、ＡＳＩＣ、および他のハードウェアを含み得る。
【００１０】
グラフィックスエンティティ20は、システムバス14に接続されている。グラフィックスエンティティ20は、より大きい統合システムのコアまたは一部分(例えば、システム オン チップ（system on a chip, SoC）)を含むか、グラフィックスアクセラレータ（graphics accelerator）のようなグラフィックスチップを含み得る。示されている実施形態において、グラフィックスエンティティ20は、グラフィックスパイプライン(図示されていない)、グラフィックスクロック23、緩衝器22、およびグラフィックスエンティティ20をシステムバス14に連結させるバスインターフェース19を含む。
【００１１】
緩衝器22は、グラフィックスエンティティ20による画素ごとの処理に使用されるデータを保持する。緩衝器22は、メインメモリ16内の緩衝器(図示されていない)からの画素に関係するデータ、例えば、画素情報の局部記憶装置を与える。
【００１２】
示されている実施形態において、グラフィックスエンティティ20は、画像の部分に対して局部的な画像変換を行うことができる。その目的のために、グラフィックスエンティティ20は、表示するため、およびユーザが変換される画像内の関心領域を選択できるようにするための関心領域画定機構（region of interest defining mechanism）24と、画像変換を行うための変換デバイス26とを含む。図示されているように、関心領域画定機構24は、埋め込まれたデバイス10のユーザインターフェース28に連結されている。埋め込まれたデバイス10によって行われ得る画像変換は、さらに詳しく別途記載される。埋め込まれたデバイス10が操作する画像は、埋め込まれたデバイス10のメインメモリ16、埋め込まれたデバイスの緩衝器22、または埋め込まれたデバイスと相互運用可能な別の機械読み出し可能媒体に記憶され得る。さらに加えて、示されている実施形態において、グラフィックスエンティティ20は、変換機能を行うが、他の実施形態では、それらの機能は他のハードウェア18によって行われることもある。
【００１３】
図２は、画像50の模式図である。画像50は、幅（width, W）および高さ(height, H)をもつ。示されている実施形態において、幅Ｗおよび高さＨは、画素の単位で表現されているが、他の測定単位が使用されることもある。画像50の高さＨは、図２のｙ軸52に沿って伸び、画像の幅Ｗは、ｘ軸54に沿って伸びている。図示されているように、図２において、画像50の幅の座標は、０からＷ−１まで伸び、高さの座標は、０からＨ−１まで伸びている。
【００１４】
画像50は、最初に、ディジタル写真撮影、ディジタル化に続くフィルム写真撮影、非写真源からのディジタル化、きれいなディジタルのイラストレーション／レンダリングを含む多くのやり方で生成され得る。特定のタイプの画像に対して本明細書において提示されている画像変換方法の個々の実施、および特定のプラットフォームまたはコンピューティングシステムは、さらに詳しく別途記載される。
【００１５】
本明細書に示されている変換方法は、画像の局部的な変換を与える。図２に示されているように、変換は、例えば、(ｘ０，ｙ０)を中心とする半径Ｒの円形領域のような、画定された関心領域56を使用して、局部に制限され得る。より具体的には、変換は、それを関心領域内の区域（area）に制限することによって、局部に制限され得る。円形領域56の中心座標(ｘ０，ｙ０)は、任意に選択され、円全体が、画像の境界内に位置を特定される必要はない。関心領域56は、円として示されているが、それは、円である必要はなく、形状および寸法は変わり得る。他の形状の関心領域は、別途さらに詳しく記載される。
【００１６】
ほとんどの画像変換は、数式の組によって表わされる数学的変換関数の組として示すことができ、これらの式は、変換が実施される個々のプラットフォームに関係なく、画像に対して行われる演算を表わす。示されている実施形態のための例示的な１組の変換関数を示す数式を、式（１）および（２）として次に与える。画像50内の各画素において、次の式が成立する。
【数４】
2008515353.tif 000003
【００１７】
式（１）および（２）において、(ｘｉｎ，ｙｉｎ)は、入力画素の位置であり、（ｘｏｕｔ，ｙｏｕｔ）は、出力画素の位置であり、パラメータａおよびｋは、歪み（distortion）のタイプ（すなわち、拡大またはピンチング）および拡大またはピンチングのレベルを制御する。パラメータａは、０ないし無限大の値をとることができる。パラメータｋは、負の無限大ないし無限大の値をとることができる。(パラメータａおよびｋを変える影響は、ある特定の例に関して、別途さらに詳しく記載する)。式（１）および（２）が示しているように、関心領域56（この実施形態では、円形）内の画素は変換され、一方で、他の全ての画素は、出力が入力と同じであることを示している。
【００１８】
式（１）および（２）において与えられているパラメータａは、歪みの大きさおよびタイプの両者に影響を与える。式（１）および（２）は、幾つかの環境では、直接的に適用され得るが、パラメータａの大きさの影響を、歪みのタイプに対するその影響と分けることが、有益である。これは、パラメータａの許容値を、１ないし無限大の値に制限し、歪みが拡大である(ｍ＝０)か、またはピンチングである（ｍ＝１）かを決める別の２値のパラメータｍを取り入れることによって行うことができる。式（３）および（４）は、２値のパラメータｍの使用を示している。
【数５】
2008515353.tif 000004
【００１９】
数学的恒等（mathematical identity）を考慮に入れると、式（３）および（４）は、式（１）および（２）と本質的には同じである。
【数６】
2008515353.tif 000005
【００２０】
したがって、式（３）および（４）において、ａを１≦ａ＜∞の範囲に制限し、ｍ＝１に設定することによって、負の指数を使用するとき、これは、元の変換関数においてａを０＜ａ＜１の範囲で変化させることに等しい。その代わりに、式（３）および（４）において、ｍ＝０に設定し、正の指数を得ることは、元の変換関数において、ａを１≦ａ＜∞の範囲で変化させることに等しい。ｍの値を調節することによって、新しい変換関数は、元の変換関数と同じ範囲のａをカバーする。
【００２１】
式（１）ないし（４）は、そのパラメータが何であっても、水平方向および垂直方向の両者における変換を行う。別の実施形態では、変換は、一方向のみにおいて適用され得る。その場合に、水平方向に沿う一次元変換のための変換関数の例示的な組は、
【数７】
2008515353.tif 000006
【００２２】
であり、垂直方向に沿う一次元変換の変換関数の例示的な組は、
【数８】
2008515353.tif 000007
【００２３】
である。なお、ｄは、関心領域の半分の幅または高さである。変換式（３）、（４）の結果およびパラメータａ、ｋ、ｍの値は、次の２つの例を見ると、よりよく理解される。
【００２４】
例１：ａ＝２、ｋ＝１、ｍ＝０
式（３）および（４）における３つのパラメータが、上に示されているように設定されるとき、式（３）および（４）は、次のように変形される。
【数９】
2008515353.tif 000008
【００２５】
式（１０）および（１１）は、最大の拡大の２の累乗を使用した拡大画像を生成する。関心領域56の中心において、(ｘｉｎ，ｙｉｎ)＝(ｘ０，ｙ０)であるとき、指数項は、２に等しい。したがって、中心は、２の因数によって拡大される。しかしながら、関心領域56のエッジにおいて、（ｘｉｎ−ｘ０）２＋（ｙｉｎ−ｙ０）２＝Ｒ２であるとき、指数項は、１に等しく、したがって、エッジに沿う画素は、拡大されない。式（１０）および（１１）の全体的な結果は、関心領域56の中心において、拡大の２の累乗を与え、関心領域56の中心からの距離が大きくなるのにしたがって、それが次第に低減することである。
【００２６】
図３は、５２０×３９０画素の元の画像サイズのＲＧＢフォーマットの画像である。図４は、１００画素の拡大半径で、例１のパラメータを使用した式（１０）および（１１）の適用を示す図３の変換された画像である。
【００２７】
例２：ａ＝２、ｋ＝１、ｍ＝１
式（３）および（４）における３つのパラメータが、上に示されているように設定されるとき、式（３）および（４）は、次のように変形される。
【数１０】
2008515353.tif 000009
【００２８】
式（１２）および（１３）は、最大のピンチングの２の因数で、局部的にピンチングされた画像を生成する。関心領域56の中心において、指数項は、２分の１に等しく、したがって、中心は、２の因数によってピンチングされる。関心領域56のエッジにおいて、指数項は、１に等しく、したがって、関心領域56のエッジにおける画素は、ピンチングされない。式（１２）および（１３）の全体的な結果は、関心領域56の中心に、ピンチングの２の累乗を与え、これが、関心領域56の中心からの距離が大きくなるのにしたがって、次第に低減することである。図１２は、これらのパラメータで変換された画像を示している。
【００２９】
次のテーブル１は、式（３）および（４）におけるパラメータａ、ｋ、およびｍの使用および選択を示す幾つかの追加例の結果を示している。次に示されている例の全ては、最も近い隣り合う画素の複製を使用しているが、補間のような他の方法を使用して、拡大された画像内の画素を埋めてもよい。次に示されている例における画像のサイズと、関心領域の半径および位置とは、例１および２に示されているものと同じである。テーブル１において、ある特定の例は、他のものを写したものであるが、それでも、参照し易くするために示されている。
【表１】
2008515353.tif 000010
【００３０】
概して、上に示されている例は、パラメータｋの値が大きくなり、ａおよびｍの値が一定に保たれるとき、最大の拡大またはピンチング点と最小の拡大またはピンチング点との間の遷移が、より滑らかで、よりゆるやかになることを示している。したがって、パラメータｋが、画像の最も歪んだ区域と、最も歪んでいない区域との間における遷移領域の歪みのサイズおよび度合いを決めると解釈することができる。
【００３１】
上に示されている例は、パラメータａの値が大きくなり、ｋおよびｍの値が一定に保たれるとき、拡大またはピンチングの最大の累乗が、大きくなることも示している。
【００３２】
テーブル１は、変換される画像に対してパラメータａ、ｋ、およびｍを変える影響を示している。しかしながら、出力画像が入力画像と同じである場合が、２つある。第１の場合は、ａ＝１、ｋ＝１、およびｍ＝０のときである。第２の場合は、ａ＝１、ｋ＝１、およびｍ＝１のときである。
【００３３】
上に示されている例に加えて、ある特定の比較例（compatative example）を、画像編集プログラムＡＤＯＢＥ  ＰＨＯＴＯＳＨＯＰ（登録商標）およびそのＳＰＨＥＲＩＺＥおよびＰＩＮＣＨ操作を使用して用意した。従来のソフトウェアを使用して、６つの場合を見積もることができる。それらは、テーブル２に示されている。
【表２】
2008515353.tif 000011
【００３４】
６個の比較例の中の２つ、すなわち、例Ｃ１およびＣ２は、似たような結果（comparable effect）を生むのに、２回のＰＨＯＴＯＳＨＯＰ（登録商標）の操作を必要とした。(似ているが、図から分かるように、ＰＨＯＴＯＳＨＯＰ（登録商標）のソフトウェアによって生成された結果は、同一ではなかった)。したがって、これらの変換方法の１つの長所は、希望の結果を生むのに、より少ない変換操作を必要とし得ることである。さらに加えて、これらの変換方法は、変換領域の中心において、僅かにより大きい拡大およびピンチングを与えることも示されている。
【００３５】
上の例、すなわち、式（３）および（４）を使用したものの全てにおいて、変換が行われる区域は、円形である。しかしながら、変換の区域は、円形である必要はなく、適切な式が変換に使用されるならば、適用によって、選択することができる。例えば、次の式（１４）および（１５）は、楕円形の区域における変換を与える。式（１４）および（１５）において、２つの追加のパラメータ、ｂおよびｃは、楕円形の長径および短径、すなわち、その幅および高さを示す。（しかしながら、パラメータｂおよびｃ自体は、楕円形の長径および短径に等しくない。長径は、２ｂＲに等しく、短径は、２ｃＲに等しい)。
【数１１】
2008515353.tif 000012
【００３６】
変換区域または関心領域が、位置を特定し易い中心をもつ幾何学的形状ではない実施形態では、任意の焦点が選択され得る。関心領域56が、位置を特定し易い幾何学的中心をもつときであっても、異なる(同じ位置に特定されない)焦点が、選択され得る。
【００３７】
示されている変換方法は、整数マイクロプロセッサのような、制限された能力をもつコンピューティングシステム上で行われるように実施され得る。整数マイクロプロセッサは、一般に、移動電話、ディジタルカメラを備えた移動電話、および他のポータブルコンピューティングデバイスのような、移動電話上で使用される。整数マイクロプロセッサは、一般に、浮動小数点(すなわち、１０進法)の数学エミュレータを含むが、エミュレータを使用することは、より時間がかかり、計算のコストが高くなり得る。変換は、整数演算を使用して実施され得る。
【００３８】
式（３）および（４）のような変換式を整数マイクロプロセッサ上で実施するとき、２つの考慮すべき事柄が生じる。すなわち、整数演算のみを使用して、これらの式における冪関数を計算すること、および整数のオーバーフロー(すなわち、計算される数が、マイクロプロセッサが処理できる最大整数を超える状態)を避けるように、演算を順序付けることである。
【００３９】
図２３は、整数演算を使用して、上述の変換を行うように適応させられた例示的な埋め込まれたデバイス60のブロック図である。埋め込まれたデバイス60は、システムバス14に接続されたメインメモリ16、インターフェース19によってシステムバス14に接続されたグラフィックスエンティティ66、およびシステムバス14に接続された整数マイクロプロセッサ61を含んでいる。埋め込まれたデバイス60は、マイクロプロセッサに接続された変換演算ファシリテータ（transformation operations facilitator）62も含んでいる。変換演算ファシリテータ62の中には、整数演算ファシリテータ(integer operations facilitator)64が含まれている。
【００４０】
変換演算ファシリテータ62は、式（３）および（４）の冪関数を計算し、マイクロプロセッサ61と互換性のあるやり方で、他の変換演算を行う。整数演算ファシリテータ64は、必要な計算の全てが、整数演算を使用して、整数マイクロプロセッサ61における整数のオーバーフローを避ける計算順で行われることを保証する。(両者の構成要素62、64の機能、および行われる計算は、さらに詳しく別途記載される)。デバイス60のような埋め込まれたデバイスの長所は、浮動小数点エミュレータが使用されないことであり、これは、整数マイクロプロセッサ61上での変換をより効率的にする。変換演算ファシリテータ62および整数演算ファシリテータ64は、ハードウェアにおいて、ソフトウェアにおいて、ハードウェアとソフトウェアとのある組合せにおいて、あるいはマイクロプロセッサ61と互換性のある何か他のやり方で実施され得る。
【００４１】
図２３において、グラフィックスエンティティ66は、埋め込まれたデバイス60の中に含まれているが、そうである必要はない。
【００４２】
示されている実施形態では、式（３）および（４）において冪関数を計算するために、関数のテイラー級数の展開が使用される。任意の冪関数において、テイラー級数の展開は、式（１６）によって与えられる。
【数１２】
2008515353.tif 000013
【００４３】
テイラー級数の任意の使用におけるように、加えられる項が、より多くなるのにしたがって、近似値は、より正確になる。しかしながら、使用されるテイラー級数の項が、より多くなるのにしたがって、処理は、計算のコストがより高くなる。さらに加えて、テイラー級数の連続する項が、最終的な結果に加える精度の量は、次第に小さくなる。したがって、冪関数を計算するのに使用されるテイラー級数の項の数は、希望の精度と、使用可能な計算能力とによって決まる。別途さらに詳しく記載される１つの実施において、テイラー級数の最初の４つの項が、極端な計算能力を要求することなく、十分な精度を与えることが分かった。ａ＝２であるとき、テイラー級数の最初の４つの項を使用すると、上述の式（１６）は、式（１７）に変形される。
【数１３】
2008515353.tif 000014
【００４４】
式（１７）は、厳密には整数の項を含んでいないが、計算を行うために、非整数の項を整数に変換することができる。例えば、２の自然対数に２２３を乗算すると（すなわち、左に２３ビット、シフトすると)、整数５７６７１６８になる。その後で、計算結果に対して、シフトを戻して（すなわち、２２３で除算して）、乗算の影響を取り除くことができる。通常は、２の大きい因数を使用し、多数の有効桁を維持することによって、精度を維持することができる。より低い精度が望ましいときは、より小さい因数が使用され得る。さらに加えて、浮動小数点数を整数に変換するとき、任意の大きい整数の因数を使用することができるが、示されている実施形態では、２の因数を使用し、比較的に遅い乗算の演算を、比較的に速いビットシフトの動作に代えることができる。
【００４５】
拡大の演算のために、式（１７）の４つの項のテイラー級数の展開と、２２３の整数変換の乗数とを使用する、３２ビットの整数マイクロプロセッサのための実施コードのサンプルは、ａ＝２、ｋ＝１、およびｍ＝０の場合、次の通りである。
【表３】
2008515353.tif 000015
【００４６】
上のコード断片において、８３８８６０８は、１×２２３であり、演算は、３２ビットのマイクロプロセッサ上での整数のオーバーフローを避けるように順序付けられている。倍数因子として、入力画素の位置と変換領域の中心との差を掛け、変換領域の中心の位置を足すと、テイラー級数の値が計算される。最後のシフティングの動作によって、２２３の乗数の影響が取り除かれる。これらの演算は、関心領域内の各入力画素に対して行われる。
【００４７】
一般に、拡大変換とピンチング変換との違いは、ある特定の演算の記号(すなわち、加法記号対減法記号)にある。ａ＝２、ｋ＝１、およびｍ＝１における場合のピンチング操作のためのコードを次に示す。
【表４】
2008515353.tif 000016
【００４８】
上のコード断片は、ＡＲＭ９２６ＥＪ−Ｓの３２ビットの整数マイクロプロセッサにおいて実時間の結果を与えることが分かった。この記載されている実施形態は、Ｃでコード化され、３２ビットのマイクロプロセッサ上で実施されているが、他の実施形態では、Ｃ、Ｃ＋＋、Ｊａｖａ（登録商標）、Ｊ＋＋、およびアセンブラを含む任意のプログラミング言語でコード化され、６４ビットのマイクロプロセッサおよび１２８ビットのマイクロプロセッサを含む任意の能力をもつマイクロプロセッサ上で実施され、任意の値のパラメータａ、ｋ、およびｍを使用し得る。その実施では、整数のみの演算を使用する必要も、整数のオーバーフローを避けるように順序付ける必要もない。これらの方法は、整数マイクロプロセッサ上で実施されると、ディジタルカメラを備えた移動電話または他のポータブル電子デバイス上での画像処理機能として与えられ得る。これらの方法は、ソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの任意の組合せにおいて、マイクロプロセッサ、ＡＳＩＣ、またはそれらを実施するのに十分な計算能力をもつ任意の他のプラットフォーム上で実施され得ることも理解されるはずである。
【００４９】
図２４は、浮動小数点演算を使用して、上述の変換を行うように適応させられた例示的な埋め込まれたデバイス70のブロック図である。埋め込まれたデバイス70の構成要素は、埋め込まれたデバイス60の構成要素に概ね似ており、したがって、同様の構成要素に対しては、上述の記述で十分であるだろう。埋め込まれたデバイス60とは異なり、埋め込まれたデバイス70は、浮動小数点マイクロプロセッサ72を含んでいる。埋め込まれたデバイス70は、浮動小数点マイクロプロセッサ72に連結された変換演算ファシリテータ74も含んでいるが、変換演算ファシリテータ74は、整数演算ファシリテータをもっていない。埋め込まれたデバイス70では、計算は、浮動小数点数を使用して行われ、例えば、式（３）および（４）の項を整数へ変換するタスクを省いている。示されている変換方法の整数のみの実施は、埋め込まれたデバイス70上で行われるとき、正しく機能するであろうが、マイクロプロセッサ72の浮動小数点の能力を使用することが好都合である。
【００５０】
図２５は、画像に局部的な拡大またはピンチングを適用する方法100を示すより一般的なフローチャートである。方法100は、必要な計算を行うことができる任意のプラットフォーム上で実施され得る。
【００５１】
方法100は、参照符号S102における入力画像処理から始まり、制御は、参照符号S104へ進む。参照符号S104において、入力画像内の関心領域が選択される。関心領域は、通常、幾何学的形状（例えば、上述の円形および楕円形）によって画定されるが、変換の計算が適切に変更されるときは、任意の幾何学的領域が使用され得る。参照符号S104において、ユーザは、関心領域の中心および半径、または他の寸法を選択する。関心領域が選択されると、方法100は、続いて参照符号S106へ進み、参照符号S106において、入力画像の画素が選択される。参照符号S106の後で、方法S100は、続いて参照符号S108へ進み、選択された画素が関心領域内であるかどうかを判断する決定タスクが行われる。選択された画素が関心領域内である（参照符号S108に対してイエスである）ときは、その画素は、参照符号S114において、上述の操作の１つ以上を行うことによって変換され、出力画像の結果の出力画素が生成される。選択された画素が、関心領域内でない（参照符号S108に対してノーである）ときは、方法100の制御は、参照符号S110へ移り、ここでは、入力画像内に他の画素が残っているかどうかが判断される。画像内に他の画素が残っている（参照符号S110に対してイエスである）ときは、方法100の制御は、参照符号S106へ戻る。画像内に他の画素が残っていない（参照符号S110に対してノーである）ときは、制御は、参照符号S112へ進む。参照符号S112では、完全な変換された出力画像を生成するのに必要なこととして、出力画像内の欠けている画素の補間または複製が行われ得る。(最も単純な場合において、必要な画素の複製は、最も近い隣り合う画素の複写によって行われ得る)。完全な可視画像を生成するのに必要とされる他のタスク、例えば、出力画像ファイルに対するヘッダ情報の書き込みも、参照符号S112において行われ得る。参照符号S112が完了すると、方法100は終了し、参照符号S116において、戻る。
【００５２】
上述の一部において、変換される画像は、ＲＧＢ（red-green-blue）フォーマットであると仮定されており、各画像の画素は、その画素の赤の内容の値、緑の内容の値、および青の内容の値をもつ。しかしながら、示されている変換方法は、最初にＲＧＢへ変換することなく、他の画像フォーマットに対して直接に使用できる。ＲＧＢフォーマットの画像は比較的に変換し易いが、圧縮するのがより難しく、一般に、より大きい記憶空間を消費するので、示されている変換方法は好都合である。
【００５３】
２つの他の一般的な画像フォーマットは、ＹＣｂＣｒとＹＣｒＣｂとである。ＲＧＢ画像では、各画素について、赤、緑、および青の色の値に関して、データが記憶されるが、ＹＣｂＣｒおよびＹＣｒＣｂのフォーマットは、各画素について、ルミナンス(Ｙ)の値およびクロミナンス(Ｃｂ、Ｃｒ)の値を記録することによって、画像データを記憶する。ＹＣｂＣｒおよびＹＣｒＣｂのフォーマットは、それらが共通のＪＰＥＧの画像ファイルフォーマットで使用されているので、一般的である。
【００５４】
画像変換が、ディジタルカメラのようなポータブルデバイスに対して実施されるとき、ＲＧＢ、ＹＣｂＣｒ、およびＹＣｒＣｂの３つのフォーマットの全てが、ディジタルカメラで使用され得るので、これらのフォーマットの画像に対して操作できることは好都合である。それは、ディジタル画像の生成および処理のやり方のためである。
【００５５】
例えば、ほとんどのディジタルカメラの画像センサは、全３色の光ではなく、赤、緑、または青の光の１つのみに対して感知可能な個々のセンサセルから構成されている。したがって、個々のセルは、一般に、バイエルパターン（Bayer pattern）と呼ばれるパターンで配置されており、緑に対して感知可能なセルは、赤に対して感知可能なセルと、青に対して感知可能なセルとの間に、交互に分散させられている。人間の視覚系は、緑に対してより敏感であり、より多くの緑のセルを含むことは、知覚される画像品質を高める傾向があるので、消費者製品では、緑のセルが、通常、支配的（predominate）である。１つの典型的なバイエルパターンにおいて、１６個のセンサセルの配列は、８個の緑のセル、４個の赤のセル、および４個の青のセルを含み、これらは、ほぼチェス盤のパターンで配置され得る。画像が、バイエルパターン内の１色のセルを使用するディジタルデバイスによって撮られるとき、通常、生の画像は、各画素が赤の値、緑の値、および青の値をもつように補間され、少なくとも処理の中間段階において、ＲＧＢ画像として記憶される。画像は、圧縮および記憶のために、ＹＣｂＣｒまたはＹＣｒＣｂへさらに変換され得る。
【００５６】
ＹＣｂＣｒおよびＹＣｒＣｂのフォーマットの画像は、上述の変換を適用することによって、直接に処理され得るが、追加のタスクが、例えば、副標本をとられたＹＣｂＣｒおよびＹＣｒＣｂ画像を用いて行われ得る幾つかの環境がある。副標本をとられた画像において、幾つかのクロミナンス値は、ファイルのサイズを低減するために、捨てられるか、または、副標本をとられる。例えば、一般的なＨ２Ｖ１のＹＣｂＣｒの４：２：２のフォーマットでは、画素の列は、副標本をとられるが、画素の行は、影響されない。この副標本をとる方式において、列に、０から番号を付けるとき、偶数列のみが、Ｃｂ成分をもち、奇数列のみが、Ｃｒ成分をもつ。別の副標本をとるフォーマットは、ＹＣｂＣｒの４：２：０のフォーマットであり、各２×２の画素配列は、１つのＣｂ値および１つのＣｒ値を共有する。ＹＣｒＣｂのフォーマットは、概ね、ＹＣｂＣｒのフォーマットと同じであるが、Ｃｂ成分とＣｒ成分の順序が逆にされている。
【００５７】
上述の変換方法は、副標本をとられたＹＣｂＣｒおよびＹＣｒＣｂのフォーマットに直接的に適用され得るが、そうすると、Ｃｂ成分とＣｒ成分とを正確に交互にしたとき、目的の画像にならないことがある。この問題を克服するために、副標本をとられた画像から、隣り合う画素の対を考慮して、適切なＣｂ値およびＣｒ値を複製し、各画素がＣｂ値とＣｒ値とをもつようにすることによって、仮の副標本をとられていない画像(ＹＣｂＣｒ ４：４：４またはＹＣｒＣｂ ４：４：４)が生成され得る。変換後に、記憶するために、余分なＣｂ値およびＣｒ値は捨てられ得る。発明者によって行われた試験では、ＲＧＢ画像の処理結果と、ＹＣｂＣｒおよびＹＣｒＣｂフォーマットにおける同じ画像の処理結果との間に、視覚的に知覚可能な差は示されなかった。
【００５８】
図２６は、ディジタルカメラ202を備えた移動電話200の実施形態を示している。移動電話200およびそのディジタルカメラ202は、図１の関心領域画定機構24と、変換デバイス26、または本明細書に記載されている画像変換を行うための他の機構とを含んでいる。一般的な使用において、ユーザは、移動電話200のディジタルカメラ202を使用して、ディジタル写真を撮り、次に、移動電話200の処理能力を使用して、変換を行う。図２６に示されているように、ディジタル画像204は、移動電話200のディスプレイスクリーン206上に表示される。（通常、ディスプレイスクリーン206は、グラフィックスエンティティ20によって駆動される比較的に小型の液晶ディスプレイであるが、他のタイプのディスプレイスクリーン206が使用されることもある）。図示されているように、画像204は、関心領域208の局部的な拡大によって変換されている。画像204に一時的に重ねられたオーバーレイまたはプルダウンメニュー214は、変換のタイプおよび大きさを変更するための命令を与え得る。例えば、ユーザは、移動電話204の矢印キー210を使用して、関心領域208を動かすように命令され得る。（関心領域208が動かされると、方法100のような方法を再び行うことによって、変換が繰り返され、新しい焦点に中心が置かれる。ユーザは、数字／文字キー212の幾つかの組合せを使用して、拡大／ピンチレベルを変更したり、拡大とピンチとを切り換えたり、または同じ画像204に対して両者を使用することができるように命令され得る。（何れの場合においても、方法100のような方法は、新しいパラメータを使用して、繰り返される）。実施によって、ユーザは、パラメータａ、ｋ、およびｍの値を直接的に変更できるときと、できないときがある。幾つかの実施形態において、ユーザは、“拡大因数”のような設定を簡単に変更でき、その値は、個々のパラメータ値にマップされる。
【００５９】
実施によって、例えば、変換が、常に、同じ所定の点のまわりに、変換の同じ半径で拡大されることになるように、変換パラメータは、ハードコード化されるか、またはデバイスにプリセットされ得る。これは、多数の類似の画像に関する画像解析の応用において有益であり得る。
【００６０】
図２６に示されている実施の長所は、ユーザが、画像のコンテキスト（context）を全体として保つ一方で、細部を提示されることである。従来の線形変換の拡大方式では、ユーザは、通常、スクリーン上の画像の一部分のみを見て、スクロールして、可視部分を変更するので、全画像の視界を失うのに対して、局部的な拡大では、全画像204が見えるようにしておく一方で、所望の領域208が拡大される。これは、ユーザが、全画像を見るために、画像の拡大率を変更し、スクロールするのに費やす時間量を低減することによって、ユーザ効率を高め得る。
【００６１】
変換は、芸術的効果を生成するために、画像に適用されることもある。さらに加えて、示されている変換は、これらの目的のために、移動電話200のようなポータブルデバイスに対して実施され得る。例えば、図２７ないし２９は、顔の画像に対するこれらの変換方法の結果を示している。図２７は、元の修正されていない顔の画像である。図２８は、パラメータａ＝２、ｋ＝３、およびｍ＝０を使用して、口のまわりの局部に制限された半径６０画素の円形領域を拡大した後の図２７の画像を示している。図２９は、パラメータａ＝２、ｋ＝１、およびｍ＝１を使用して、鼻のまわりの局部に制限された半径７０画素の円形領域をピンチングした後の図２７の画像を示している。同じ画像に対して行われた変換の組合せは、付加的な効果を生み得る。
【００６２】
上述の各要素は、コンピュータメモリを備え、ソフトウェアを実行するハードウェアプロセッサで、または同じ機能を行う専用ハードウェアで実施され得る。このような処理で取り扱われるか、またはこのような処理の結果として生成されるデータは、熟練工（artisan）にとって使用可能な任意のタイプのメモリに記憶されることができる。例示的に、このようなデータは、ランダムアクセスメモリ(random access memory, RAM)のような、一時記憶装置に記憶され得る。さらに加えて、またはその代わりに、このようなデータは、例えば、磁気ディスク、書き換え可能光ディスク、等のような、より長期の記憶デバイスに記憶され得る。本開示の目的において、コンピュータ読み出し可能媒体は、任意の形式のデータ記憶機構、例えば、このような異なるメモリ技術、並びにこのような構造およびこのようなデータのハードウェアまたは回路表現を含み得る。
【００６３】
ある特定の示された実施形態が開示されたが、本明細書に使用されている文章（words）は、制限の文章ではなく、説明の文章である。例えば、請求項の範囲内で、変更が行われ得る。
【図面の簡単な説明】
【００６４】
【図１】画像に対して変換を行うことができる例示的な埋め込まれたデバイスのブロック図。
【図２】変換するための識別された関心領域をもつ画像の模式図。
【図３】示されている方法を使用する変換前の元のサイズの５２０×３９０画素の画像を示す図。
【図４】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図５】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図６】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図７】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図８】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図９】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１０】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１１】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１２】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１３】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１４】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１５】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１６】変換のための種々のパラメータを使用して、示されている実施形態にしたがって変換された図３の画像を示す図。
【図１７】従来技術の画像変換方法によって変換された図３の画像を示す図。
【図１８】従来技術の画像変換方法によって変換された図３の画像を示す図。
【図１９】従来技術の画像変換方法によって変換された図３の画像を示す図。
【図２０】従来技術の画像変換方法によって変換された図３の画像を示す図。
【図２１】従来技術の画像変換方法によって変換された図３の画像を示す図。
【図２２】従来技術の画像変換方法によって変換された図３の画像を示す図。
【図２３】画像に対して変換を行うことができる整数マイクロプロセッサを備えた例示的な埋め込まれたデバイスのブロック図。
【図２４】画像に対して変換を行うことができる浮動小数点マイクロプロセッサを備えた例示的な埋め込まれたデバイスのブロック図。
【図２５】変換方法の実施に関与するタスクを示す概略的なフローチャート。
【図２６】ポータブルデバイスにおける変換方法の使用を示す、ディジタルカメラを備えた移動電話を示す図。
【図２７】示されている実施形態にしたがう変換方法を使用する前の元のサイズの５２０×３９０画素の顔の画像を示す図。
【図２８】種々のパラメータを使用して、変換方法によって変換された図２７の画像を示す図。
【図２９】種々のパラメータを使用して、変換方法によって変換された図２７の画像を示す図。
【符号の説明】
【００６５】
19・・・インターフェース、50・・・画像、52・・・ｙ軸、54・・・ｘ軸、56,208・・・関心領域、100・・・方法、200・・・移動電話、202・・・ディジタルカメラ、204・・・ディジタル画像、206・・・ディスプレイスクリーン、212・・・数字／文字キー、214・・・プルダウンメニュー。
【図１】
2008515353.tif 000020
【図２】
2008515353.tif 000021
【図３】
2008515353.tif 000022
【図４】
2008515353.tif 000023
【図５】
2008515353.tif 000024
【図６】
2008515353.tif 000025
【図７】
2008515353.tif 000026
【図８】
2008515353.tif 000027
【図９】
2008515353.tif 000028
【図１０】
2008515353.tif 000029
【図１１】
2008515353.tif 000030
【図１２】
2008515353.tif 000031
【図１３】
2008515353.tif 000032
【図１４】
2008515353.tif 000033
【図１５】
2008515353.tif 000034
【図１６】
2008515353.tif 000035
【図１７】
2008515353.tif 000036
【図１８】
2008515353.tif 000037
【図１９】
2008515353.tif 000038
【図２０】
2008515353.tif 000039
【図２１】
2008515353.tif 000040
【図２２】
2008515353.tif 000041
【図２３】
2008515353.tif 000042
【図２４】
2008515353.tif 000043
【図２５】
2008515353.tif 000044
【図２６】
2008515353.tif 000045
【図２７】
2008515353.tif 000046
【図２８】
2008515353.tif 000047
【図２９】
2008515353.tif 000048
【国際調査報告】
2008515353.tif 000049
2008515353.tif 000050
2008515353.tif 000051