(57)【要約】モバイル機器内のデバイス論理は、消費者向けカメラを用いてビデオなどの一連の画像を取り込み、画像を分析して、関心領域を取り込んだ一連の画像のうちのベストフォーカス画像を決定するようにプロセッサを構成する。画像は、モバイル機器ユーザの顔の皮膚などの凹凸面のものであってよい。プロセッサは、カメラの焦点距離を、画像を収集するための固定位置に設定する。プロセッサは、聴覚的合図を用いて、画像を取り込むためにモバイル機器を位置決めするようユーザを誘導することができる。画像ごとに、プロセッサは、関心領域に合わせて画像をトリミングし、輝度情報を抽出し、ラプラシアンピラミッドによって輝度の1つまたは複数のエネルギーレベルを決定する。エネルギーレベルはフィルタリングすることができ、次いで、ベストフォーカス画像を決定するためにその他の画像のエネルギーレベルと比較される。2018524623.tif 000003
2018524623.tif 000002
【特許請求の範囲】
【請求項１】
モバイル機器を用いて、被写体の皮膚表面のベストフォーカス画像を取り込む方法であって、以下の工程を含む、方法:
前記モバイル機器のカメラを固定焦点距離に設定する工程;
前記カメラを用いて、前記皮膚表面の複数の画像のうちの現在の画像を取り込む工程であって、前記複数の画像が、順序を有し、かつ、前記カメラを用いて前記現在の画像の前に取り込まれた第1の前の画像および前記カメラを用いて前記第1の前の画像の前に取り込まれた第2の前の画像を含む、現在の画像を取り込む前記工程;
前記現在の画像から修正画像を生成する工程;
ラプラシアンピラミッドを用いて、前記修正画像から複数の第1の輝度値を生成し、前記複数の第1の輝度値から複数の第2の輝度値を生成するために、前記修正画像を変換する工程;
第1のエネルギー値を生成するために、前記複数の第1の輝度値のうちの対応する第1の輝度値の二乗を各々が含む複数の第1の二乗値を平均する工程;
第2のエネルギー値を生成するために、前記複数の第2の輝度値のうちの対応する第2の輝度値の二乗を各々が含む複数の第2の二乗値を平均する工程;
前記第1のエネルギー値対前記第2のエネルギー値の第1の比率を計算する工程;
前記第1の前の画像の第1のエネルギー値の平均値として、前記第1のエネルギー値、前記第1の前の画像の対応する第1のエネルギー値、および前記第2の前の画像の対応する第1のエネルギー値の平均値を計算する工程;
前記第1の前の画像の第1の比率の平均値として、前記第1の比率、前記第1の前の画像の対応する第1の比率、および前記第2の前の画像の対応する第1の比率の平均値を計算する工程;
前記第1の前の画像は複数の有効な画像のうちの1つであると決定する工程であって、前記複数の有効な画像の各有効な画像が、前記複数の画像のうちの画像であり、
エネルギー閾値を上回る対応する第1のエネルギー値の平均値;および
1.0にほぼ等しい対応する第1の比率の平均値
を有する、工程;
前記複数の有効な画像のうちの第1の有効な画像が前記ベストフォーカス画像であると決定する工程であって、前記第1の有効な画像が、
前記第1の有効な画像の直前に取り込まれた、前の有効な画像;および
前記第1の有効な画像の直後に取り込まれた、後の有効な画像
の前記対応する第1のエネルギー値の平均値より大きい対応する第1のエネルギー値の平均値を有する、工程;ならびに
前記ベストフォーカス画像と関連付けられた動作を行う工程。
【請求項２】
前記現在の画像を取り込む前記工程が、
前記モバイル機器が前記皮膚表面から第1の距離だけ離れた第1の点と前記皮膚表面から第2の距離だけ離れた第2の点との間を連続して移動される際に、ある取り込み速度で前記複数の画像を自動的に取り込む段階であって、前記第1の距離が前記焦点距離より小さく、前記第2の距離が前記焦点距離より大きい、段階
を含み、
前記動作を行う前記工程が、
前記現在の画像が前記複数の画像のうちの最後に取り込まれた画像になるように、前記複数の画像の前記取り込みを停止する段階
を含み、
前記方法が、
前記ベストフォーカス画像を決定する前に、前記複数の有効な画像が少なくとも最小限の数の前記複数の画像を含む、と判定する工程、をさらに含む、請求項1記載の方法。
【請求項３】
前記複数の画像の取り込み時に前記被写体が前記モバイル機器を移動させている間は前記モバイル機器のディスプレイが前記被写体から見えないように前記皮膚表面が位置しており、
前記複数の画像を取り込む前記工程が、
前記モバイル機器の加速度計を用いて、前記モバイル機器が移動されている速度が所定の速度制限を超えている、と判定する段階;および
前記モバイル機器を用いて、前記モバイル機器の移動を遅くするよう前記被写体に指示する聴覚的アラートを生成する段階
を含み、
前記動作を行う前記工程が、
前記モバイル機器を用いて、前記ベストフォーカス画像が取り込まれたという聴覚的指示を生成する段階
をさらに含む、請求項2記載の方法。
【請求項４】
前記ラプラシアンピラミッドを用いて、前記複数の第2の輝度値から複数の第3の輝度値を生成するために、前記修正画像をさらに変換する工程;
第3のエネルギー値を生成するために、前記複数の第3の輝度値のうちの対応する第3の輝度値の二乗を各々が含む複数の第3の二乗値を平均する工程;
前記第1のエネルギー値対前記第3のエネルギー値の第2の比率を計算する工程;
前記第1の前の画像の第2のエネルギー値の平均値として、前記第2のエネルギー値、前記第1の前の画像の対応する第2のエネルギー値、および前記第2の前の画像の対応する第2のエネルギー値の平均値を計算する工程;
前記第1の前の画像の第3のエネルギー値の平均値として、前記第3のエネルギー値、前記第1の前の画像の対応する第3のエネルギー値、および前記第2の前の画像の対応する第3のエネルギー値の平均値を計算する工程;ならびに
前記第1の前の画像の第2の比率の平均値として、前記第2の比率、前記第1の前の画像の対応する第2の比率、および前記第2の前の画像の対応する第2の比率の平均値を計算する工程;
をさらに含み、
前記複数の有効な画像の各有効な画像が、
どちらも前記エネルギー閾値を上回る対応する第2のエネルギー値の平均値および対応する第3のエネルギー値の平均値;ならびに
1.0にほぼ等しい対応する第2の比率の平均値
をさらに有する、請求項1記載の方法。
【請求項５】
モバイル機器を用いて、凹凸面のベストフォーカス画像を決定する方法であって、以下の工程を含む、方法:
前記カメラが固定焦点距離に設定されている間に前記モバイル機器のカメラによって取り込まれた、前記凹凸面の複数の画像を受け取る工程;
前記複数の画像のうちの第1の画像にラプラシアンピラミッドを適用する工程であって、前記第1の画像に基づく第1のレベルと、前記第1のレベルに基づく第2のレベルとを有するラプラシアンピラミッドを生成する、工程;
前記第1のレベルのラプラシアンエネルギーを表す、前記第1の画像の第1のエネルギー値を決定する工程;
前記第2のレベルのラプラシアンエネルギーを表す、前記第1の画像の第2のエネルギー値を決定する工程;
前記第1のエネルギー値がエネルギー閾値を超えておりかつ前記第2のエネルギー値にほぼ等しい、と判定する工程;
前記第1の画像の前記第1のエネルギー値および複数の有効な画像の各有効な画像の対応する第1のエネルギー値に少なくとも一部は基づき、前記第1の画像は前記ベストフォーカス画像であると決定する工程であって、前記複数の有効な画像が、前記エネルギー閾値を超えておりかつ対応する第2のエネルギー値にほぼ等しい対応する第1のエネルギー値を有するすべての前記複数の画像を含む、工程;ならびに
前記ベストフォーカス画像と関連付けられた動作を行う工程。
【請求項６】
前記複数の画像を受け取る前記工程が、
前記モバイル機器が前記凹凸面から第1の距離だけ離れた第1の点と前記凹凸面から第2の距離だけ離れた第2の点との間を連続して移動される際に、ある取り込み速度で前記複数の画像を取り込むように前記カメラを制御する段階であって、前記第1の距離が前記焦点距離より小さく、前記第2の距離が前記焦点距離より大きい、段階
を含む、請求項5記載の方法。
【請求項７】
前記複数の画像を受け取る前記工程が、
前記モバイル機器の1つまたは複数の状態を判定する段階;および
前記モバイル機器を用いて、前記1つまたは複数の状態に基づく1つまたは複数の聴覚的合図を生成する段階であって、前記1つまたは複数の聴覚的合図が、前記モバイル機器のユーザが前記複数の画像のうちの1つまたは複数を取り込むために前記モバイル機器を位置決めするのを支援する、段階
をさらに含む、請求項6記載の方法。
【請求項８】
前記1つまたは複数の状態を判定する前記工程が、
前記モバイル機器の加速度計を用いて、前記モバイル機器が移動されている速度が所定の速度制限を超えている、と判定する段階
を含み、
前記1つまたは複数の聴覚的合図を生成する前記工程が、
前記モバイル機器の移動を遅くするよう前記ユーザに指示する聴覚的アラートを生成する段階
を含む、請求項7記載の方法。
【請求項９】
前記複数の画像が、前記第1の画像の直後に取り込まれた現在の画像を含み、
前記動作を行う前記工程が、
前記現在の画像が前記複数の画像の最後に取り込まれるように前記複数の画像の取り込みを停止するよう前記カメラを制御する段階
を含む、請求項6記載の方法。
【請求項１０】
前記第1の画像は前記ベストフォーカス画像であると決定する前記工程が、
前記第1の画像、前記現在の画像、および、前記第1の画像の直前に取り込まれた前記複数の画像のうちの前の画像の、対応する第1のエネルギー値から第1のエネルギー値の平均値を計算する段階;
各々が前記複数の画像のうちの対応する画像と関連付けられた、前記画像の対応する第1のエネルギー値と前記画像の対応する第2のエネルギー値とを比較する、複数の第1の比率から第1の比率の平均値を計算する段階であって、前記複数の第1の比率が、前記第1の画像、前記前の画像、および前記現在の画像の各々の対応する第1の比率を含む、段階;
前記第1のエネルギー値の平均値が前記エネルギー閾値を超えておりかつ前記第1の比率の平均値がほぼ1.0である、と判定する段階;ならびに
前記第1の画像の前記第1のエネルギー値の平均値が、
前記第1の画像の直前に取り込まれた、前記複数の有効な画像のうちの前の有効な画像;および
前記第1の画像の直後に取り込まれた、前記複数の有効な画像のうちの後の有効な画像
の各々の対応する第1のエネルギー値の平均値より大きい、と判定する段階
を含む、請求項9記載の方法。
【請求項１１】
前記ラプラシアンピラミッドを適用する前記工程が、前記ラプラシアンピラミッドの1つまたは複数のパラメータを、
前記モバイル機器が前記焦点距離より小さい第1の距離だけ前記凹凸面から離れているときに取り込まれた第1の非合焦画像に基づく第1のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーが対応する第2のレベルのラプラシアンエネルギーと比べてより高くかつほぼ等しくはない前記第1のレベルおよび前記第2のレベルを呈するように；および
前記モバイル機器が前記焦点距離より大きい第2の距離だけ前記凹凸面から離れているときに取り込まれた第2の非合焦画像に基づく第2のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーが前記エネルギー閾値を超えない前記第1のレベルを呈するように
選択する段階を含む、請求項5記載の方法。
【請求項１２】
前記動作を行う前記工程が、
前記第1の画像のぼやけがぼやけ閾値を超えている、と判定する段階;および
前記複数の画像を廃棄すべきでありかつ前記凹凸面の複数の新しい画像を取り込まなければならない、と指示する合図を、前記モバイル機器を用いて生成する段階
を含む、請求項5記載の方法。
【請求項１３】
前記凹凸面が被写体の皮膚表面であり、
前記皮膚表面が、基本外観と、前記基本外観からまたは他の1つもしくは複数の弱い特徴から各々明確に区別されない前記1つもしくは複数の弱い特徴とを有し、
前記動作を行う前記工程が、
前記ベストフォーカス画像内の前記1つまたは複数の弱い特徴を検出し、前記1つまたは複数の弱い特徴に関する情報を生成する段階
を含む、請求項5記載の方法。
【請求項１４】
前記1つまたは複数の弱い特徴が、深いしわ、しわ、および孔を含む群の中から選択される、請求項13記載の方法。
【請求項１５】
焦点距離に設定されたカメラと；
デバイス論理およびラプラシアンピラミッドを記憶するメモリと；
前記メモリおよび前記カメラと電気的に連通するプロセッサであって、前記デバイス論理を実行して、
前記カメラから関心領域の複数の画像を受け取り、
各画像に前記ラプラシアンピラミッドを適用して、前記画像に基づく第1のレベルと、前記第1のレベルに基づく第2のレベルとを有する対応するラプラシアンピラミッドを生成し、
前記対応するピラミッドの前記第1のレベルのラプラシアンエネルギーを表す対応する第1のエネルギー値を、前記複数の画像の画像ごとに決定し、
前記対応するピラミッドの前記第2のレベルのラプラシアンエネルギーを表す対応する第2のエネルギー値を、前記複数の画像の画像ごとに決定し、
前記複数の画像のうちの1つであり、エネルギー閾値を超えておりかつ第2のエネルギー値にほぼ等しい第1のエネルギー値を有する、前記ベストフォーカス画像を含む複数の有効な画像の各有効な画像の、前記対応する第1のエネルギー値に少なくとも一部は基づいて前記複数の画像のうちのベストフォーカス画像を決定し、
前記ベストフォーカス画像に基づいて動作を行う
前記プロセッサ
を含む、モバイル機器。
【請求項１６】
前記ラプラシアンピラミッドが、所定のサイズおよび所定の周波数のハイパス・フィルタリング・カーネルを含み、
前記所定のサイズおよび前記所定の周波数が、
前記モバイル機器が前記焦点距離より小さい第1の距離だけ被写体から離れているときに取り込まれた第1の非合焦画像の第1のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーが対応する第2のレベルのラプラシアンエネルギーと比べてより高くかつほぼ等しくはない前記第1のレベルおよび前記第2のレベルを呈するように；および
前記モバイル機器が前記焦点距離より大きい第2の距離だけ前記被写体から離れているときに取り込まれた第2の非合焦画像に基づく第2のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーが前記エネルギー閾値を超えない前記第1のレベルを呈するように
選択される、請求項15記載のモバイル機器。
【請求項１７】
オートフォーカスモータをさらに含み、
前記カメラの前記焦点距離が前記オートフォーカスモータによって最小焦点距離から最大焦点距離まで調整可能であり、
前記複数の画像を受け取るために、前記カメラによる前記複数の画像の取り込み時に、前記プロセッサが前記デバイス論理を実行して前記焦点距離を最小焦点距離に固定しかつ前記オートフォーカスモータを無効にする、請求項15記載のモバイル機器。
【請求項１８】
前記プロセッサと電気的に連通する距離センサをさらに含み、
前記関心領域が凹凸面を含み、
前記複数の画像を受け取るために、前記プロセッサが前記デバイス論理を実行して、
前記距離センサから信号を受け取り、
前記焦点距離より小さい第1の距離だけ前記凹凸面から離れている第1の点に前記モバイル機器が位置決めされていることを前記距離センサが検出したと前記信号が指示している、と判定し、
前記モバイル機器が、第1の点から、前記焦点距離より大きい第2の距離だけ前記凹凸面から離れている第2の点まで連続して移動される際に、ある取り込み速度で前記複数の画像を取り込むよう前記カメラを制御する、
請求項15記載のモバイル機器。
【請求項１９】
前記複数の画像が第1の順序を有し、前記複数の有効な画像が、前記複数の有効な画像のうちの1つではない前記複数の画像の各画像が除去された前記第1の順序を含む第2の順序を有するように、
前記プロセッサが、前記画像が取り込まれる際に前記複数の画像の各画像を受け取り、
前記複数の有効な画像の各有効な画像が、前記エネルギー閾値を超えておりかつほぼ等しい対応する第1のエネルギー値の平均値および対応する第2のエネルギー値の平均値をさらに有し、
前記プロセッサが前記デバイス論理を実行して、
前記有効な画像、前記第1の順序で前記有効な画像の直前に位置決めされた前の画像、および前記第1の順序で前記有効な画像の直後に位置決めされた後の画像の、前記対応する第1のエネルギー値から前記対応する第1のエネルギー値の平均値を計算し、
前記有効な画像、前記前の画像、および前記後の画像の、前記対応する第2のエネルギー値から前記対応する第2のエネルギー値の平均値を計算し、
前記対応する第1のエネルギー値の平均値が前記エネルギー閾値を超えておりかつ前記対応する第2のエネルギー値の平均値にほぼ等しい、と判定し、
前記ベストフォーカス画像を決定するために、前記プロセッサがデバイス論理を実行して、
前記複数の有効な画像の第1の画像の前記対応する第1のエネルギー値の平均値が、
前記第2の順序で前記第1の画像の直前に位置決めされた、前記複数の有効な画像のうちの、前の有効な画像;および
前記第2の順序で前記第1の画像の直後に位置決めされた、前記複数の有効な画像のうちの、後の有効な画像
の各々の前記対応する第1のエネルギー値の平均値より大きい、と判定し、
前記動作を行うために、前記プロセッサが前記デバイス論理を実行して、前記複数の画像の取り込みを停止するよう前記カメラを制御する、
請求項18記載のモバイル機器。
【請求項２０】
スピーカをさらに含み、
前記複数の画像を受け取るために、前記プロセッサが前記デバイス論理を実行して、
前記モバイル機器の1つまたは複数の状態を判定し、
前記複数の画像のうちの1つまたは複数を取り込むために前記モバイル機器のユーザが前記モバイル機器を位置決めするのを支援する、前記1つまたは複数の状態に基づく1つまたは複数の聴覚的合図を生成し、
前記スピーカを介して前記1つまたは複数の聴覚的合図を出力する、
請求項15記載のモバイル機器。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2015年5月14日に出願された、「SURFACE METROLOGY, ILLUMINATION CONTROL, AND DIALOG-DRIVEN IMAGE CAPTURE USING A SMARTPHONE-LIKE DEVICE」という名称の米国仮特許出願第62/161,318号、および2015年9月24日に出願された、「METHOD OF BEST CAPTURE OF CLOSE-UP IMAGES USING MOBILE PHONES」という名称の米国仮特許出願第62/222,897号の優先権の恩典を主張するものであり、どちらの仮特許出願も参照により全体が本明細書に組み入れられる。
【背景技術】
【０００２】
背景
健康を確保することは人生にとって重要である。画像処理が、保健医療において診断およびモニタリングにますます使用されるようになってきている。例えば、人間の皮膚は、私たちが世界に対して示す文字どおりの顔であることに加えて、個人の健康の指標となりうるものである。皮膚の物理的特性、例えば、人の肌のきめ、発疹の重症度および変化、隆起、あざ、水分レベルなどはすべて、個人の健康への洞察を提供することができる。にもかかわらず、これらの特性はまだ広く利用されていない。というのは、正確な測定には、通常、専用の特注のイメージングシステムや専門家を訪ねることが必要だからである。専用のシステムは、制御された照明、適切なカメラアングル、および関心対象物からの適切な距離の下で動作する必要があるため、高価でかさばる。専門家を訪れることは、時間を要し、費用がかさむ。これらの手法のどちらも個人の日常的な使用には適さない。
【０００３】
携帯電話を用いてこれらの画像を取り込み、同じ特徴識別機能を、例えば、化粧品のガイダンスや、診断や、製品識別のために提供することは非常に魅力的である。しかし、携帯電話は手持ち式であり、人間の手は不安定である。取り込まれた静止画像は、ぼやけていたり、焦点が合っていなかったりすることが多い。また、自分の顔を撮影する被写体は、画像の撮影時に顔の皮膚画像を見ることができず、したがって、カメラの向きが適正であり、画像の焦点が合っているかどうか判定することができない。
【発明の概要】
【０００４】
【図面の簡単な説明】
【０００５】
本開示は、添付の図に、限定としてではなく例として示されている。各図には、単独で、または組み合わせとして、本開示の1つまたは複数の態様が示されている。各図に示された要素は必ずしも縮尺通りに描かれてはいない。符号は、対応する要素または類似した要素を指示するために、各図間で繰り返し用いられる場合がある。
【０００６】
【図１】モバイル機器カメラによって取り込まれた複数のデジタル写真の中からベストフォーカスデジタル写真を識別するように構成された例示的なシステムの図である。
【図２】本開示に従ってプロセッサが実行する画像処理段階の例示的な進行の図である。
【図３】本開示に従ってプロセッサが実行する画像処理段階の別の例示的な進行の図である。
【図４】本開示による、計算された一連の画像のエネルギー値およびそれらの比率をプロットしたグラフである。
【図５】本開示による、計算された別の一連の画像のエネルギー値およびそれらの比率をプロットしたグラフである。
【図６】本開示による、複数の画像の中からベストフォーカス画像を決定する例示的な方法の流れ図である。
【図７】本開示による通信ネットワークの図である。
【図８】本開示による、仮想パーソナルアシスタントを用いてユーザの関心事を分析する例示的な方法の流れ図である。
【図９】本開示によるモバイル機器の電気的構成要素の概略図である。
【発明を実施するための形態】
【０００７】
詳細な説明
本開示の概念は、様々な改変および代替形態が可能であるが、それらの特定の態様を図面に例示し、以下で詳細に説明する。本開示の概念を開示の特定の形態だけに限定する意図はないことを理解されたい。むしろ、本開示および添付の特許請求の範囲と一致するすべての改変、均等物、および代替物をカバーすることが意図されている。
【０００８】
本開示は、消費者向けカメラを備えたスマートフォンその他のモバイル機器を用いて、ビデオまたは一連のデジタル写真の中から、凹凸面やその他の関心領域のベストフォーカス画像を決定するためのシステム、機器構成、およびプロセスを提供する。消費者向けカメラで生成される画像は、解像度は高いが、費用効果的なレンズ、イメージセンサ、処理ハードウェアその他の電子構成要素の選択のせいで品質に限界がある。画像は、対応する写真が適正な焦点距離で取り込まれた場合でさえも、往々にして焦点が合っていない。画像は、撮像アーチファクトおよび/または処理アーチファクト、例えば、付加白色ガウス雑音や、スペクトルハイライトや、画像の一部または全部の空間周波数を占める他の異常を含む可能性があり、これらは公知の焦点検出方法の動作を混乱させ、悪化させる。本開示の態様では、画像にピラミッド変換を適用すること、結果として得られるラプラシアンピラミッドにおける各レベルのラプラシアンエネルギーを決定すること、およびラプラシアンエネルギー間の比率から画像の焦点やノイズ成分といった特性を決定することについて説明する。その場合、一連の関連画像のうちのベストフォーカス画像は、画像のラプラシアンエネルギー特性を随時比較することによって決定することができる。
【０００９】
図1を参照すると、本開示の画像識別プロセスを行うように適合されたモバイル機器100は、ラップトップコンピュータ、タブレットコンピュータ、電子書籍リーダ、スマートフォン、携帯情報端末、または他のモバイル機器であってよい。他の態様では、本開示のシステムおよびプロセスは、パーソナルコンピュータ、セット・トップ・ボックス、デジタル・メディア・プレーヤ、マイクロコンソール、ホーム・オートメーション・システム、または他のコンピューティングデバイスといった、固定式の、または移動度の低いコンピューティングデバイスにおいて実装される。モバイル機器100はプロセッサ102を含んでいてよく、プロセッサ102は、中央処理装置（CPU）、マイクロプロセッサ、またはカメラ120を制御し、モバイル機器100の様々な構成要素を用いて、関心領域110の複数の写真の取り込みを可能にし、それらの写真を複数の画像114（すなわち、画像ファイル）としてデータストア112に一時的に記憶することができる他の適切なプロセッサであってよい。本明細書で用いる場合、データストアとは、モバイル機器100から自由に、または安全にアクセスでき、またはアクセス可能にすることができる任意の情報リポジトリとすることができる。適切なデータストアには、それだけに限らないが、それらは、当技術分野において公知の、または将来開発される任意の標準的な、分散された、仮想的な、またはクラスタ化された環境において、コンピュータ、クライアント、サーバ、任意の数のサーバの組み合わせ、または任意の他のデータ記憶装置および/もしくはデータ記憶媒体上に位置する、ローカルデータベース、オンラインデータベース、デスクトップデータベース、サーバ側データベース、関係データベース、階層データベース、ネットワークデータベース、オブジェクトデータベース、オブジェクト関係データベース、連想データベース、コンセプト指向データベース、エンティティ・アトリビュート・バリュー・データベース、多次元データベース、半構造化データベース、スター・スキーマ・データベース、XMLデータベース、ファイル、ファイルコレクション、スプレッドシート、または他のデータ記憶手段とすることのできる、データベースまたはデータベースシステム;ファイルシステム、ならびにウェブページ、スプレッドシート、ドキュメントといった電子ファイルが含まれる。画像ファイルは、ファイル名を有し、画像を表すデータを含み、取り込みの時刻、日付、および場所、取り込みに用いられた機器、画像が取り込まれたときの取り込み機器の設定、画像ヒストグラムなどといった他のデータも含んでいてよい。
【００１０】
プロセッサ102は、プロセッサ102内のまたは機器100のメモリ内のデバイス論理104を実行して、複数の画像114を処理し、さらに、いくつかの態様では、複数の画像114が関心領域110を含み、少なくとも、ベストフォーカスの取り込み画像116が所望の品質のものになるように、モバイル機器100のユーザがモバイル機器100を位置決めし、移動させ、それ以外に制御するのを支援する。ユーザ支援の一例では、図示のように、ユーザは被写体108自体であり、関心領域110は被写体108の頬の皮膚である。この場合、カメラ120がモバイル機器100の表示画面106と同じ側にあるにせよ反対側にあるにせよ、被写体108は撮像時にディスプレイ106を見ることができない。プロセッサ102は、スピーカ122または別の出力装置を介して被写体108に聴覚的合図を送り、そうした聴覚的合図は、それだけに限らないが、関心領域110がカメラ120視野内にないことを知らせる、被写体108によるモバイル機器100の移動が速すぎるかまたは遅すぎることを知らせる、カメラが皮膚表面に対して傾きすぎていることを知らせる、周囲光レベルが低すぎることを知らせる、ベストフォーカス画像が取り込まれ識別されたことを指示する、といった指示を提供するアラートおよび/または音声を含むことができる。
【００１１】
モバイル機器100は1つまたは複数のカメラ120を含んでいてよく、カメラ120は、モバイル機器100に組み込み、または接続することができる任意の適切な撮像装置であってよい。デジタル一眼レフカメラやミラーレス・システム・カメラを含む任意の品質レベルおよび/または精巧さのカメラ120を用いてよいが、後述するプロセスは、特に、消費者向けカメラ120がほぼ一般的に組み込まれている、消費者向けのスマートフォン（例えば、APPLE IPHONE、SAMSUNG GALAXYなど）環境およびタブレット（例えば、APPLE IPAD、AMAZON KINDLE FIREなど）環境で適用されるように構成することができる。カメラ120の焦点距離が撮像時に固定されうる例示的態様について説明する。消費者向けカメラの中には焦点距離の範囲を提供する調整可能なレンズがないものがあり、本開示の手法はそうした機器に適する。しかし、大部分の最新のスマートフォンは、調整可能なレンズを備えているのみならず、距離センサと連動するオートフォーカスモータおよび/またはソフトウェアを用いてレンズを動かし、写真撮影を簡略化する。残念ながら、オートフォーカスアルゴリズムは、皮膚のような凹凸面の精密なクローズアップ画像を取得するようにはチューニングされない。本開示の手法は、オートフォーカスを無効にし、または作動させず、焦点距離を最適な位置に固定することによってそうした機器で動作する。
【００１２】
いくつかの態様では、モバイル機器100は、有利には、複数の画像であるフレームを含むビデオとして、またはバーストや連続高速撮影モードといった固有の迅速取得モードを用いて、またはカメラシャッタの手動操作の繰り返しから、または本明細書に記載する別のカメラ制御アルゴリズムを用いて、複数の画像114を順次に（すなわち、時系列または時間順で）取り込むことができる。複数の画像114は、ユーザがモバイル機器100を、経路上を意図的に、またはモバイル機器100を落としたり、振り動かしたりすることによって偶発的に移動させている間に取り込まれてよい。距離計、加速度計その他のセンサ、カメラフラッシュ118およびその他の照明、表示画面106、全地球測位システム、ネットワーク接続、画像認識アプリケーションなどのソフトウェアモジュールといった構成要素をすべて用いて、モバイル機器100の位置決めおよび移動、シャッタの作動、被写体108の照明などを誘導することができる。
【００１３】
各システム、機器、および方法は、強く、明確に関連している複数の画像114に対して動作するものとして説明されており、ベストフォーカス画像116は記憶され、かつ/またはベストフォーカス画像116に対して動作が行われ、その他の画像は廃棄されることが予期される。各例には、上述のように時間と主題の両方において関連している一連の画像、ならびに、皮膚処置の前後の写真といった、同じ被写体であるが、異なる時刻に撮られた画像が含まれる。複数の画像114が十分に関連していない場合、またはベストフォーカス画像116でさえもがぼやけている場合に画像を再取り込みするためのプロセスについては後述する。複数の関連画像114の取り込みに成功したと想定して、次に、ベストフォーカス画像116を識別するためのプロセスを、図をさらに参照して説明する。
【００１４】
図1を再度参照すると、プロセッサ102は、画像130の画素132の一部または全部の画素データに基づいて画像130の焦点に関する判定を行う。特に、プロセッサ102は、画像130に離散ラプラス演算子を繰り返し適用し、ラプラシアンピラミッドと呼ばれるものを形成する。離散ラプラス演算子は、空間などの実変数の第1の関数を空間周波数などの第2の関数に変換する十分に確立された数学演算である。ラプラシアンピラミッド表現は、エッジ検出、ぼかし、および鮮鋭化を含む画像処理において適用されることが知られており、プロセッサは、これらのタスクを行うために、離散ラプラス演算子によって生成された画像の1つまたは複数のフィルタリングバージョンで画像を畳み込む。ラプラシアンピラミッドは、画像処理では、画像を空間領域から空間周波数領域に変換する空間バンドパスまたはハイパス表現とみなすことができる。ラプラシアンピラミッド変換は、カーネル（離散ラプラス演算子）を用いてその出力を制御し、カーネルは、フィルタサイズ（各要素が各画素を表す2次元行列、カーネルはフィルタリングされる画素およびカーネルエリア内のフィルタリングされる画素に隣接した画素に重みを与える）、遮断周波数、および任意選択で、反復回数を含むパラメータを有する。典型的には、ラプラシアンピラミッド変換は、各画素132の輝度だけを用いて、画像130のグレースケールバージョンに対して作用し、よって、ラプラシアンピラミッド変換の空間周波数成分は画像130の各エリアの明るさに関するものである。
【００１５】
離散ラプラス演算子を画像130に繰り返し適用することにより、1つまたは複数のレベルを有するラプラシアンピラミッド140が生成される。各レベルは画像130の各エリアの空間周波数情報を含む。空間周波数情報は、画像130の輝度がフィルタサイズによって設定される距離にわたって変化する量を表す。ピラミッド140の第1のレベル142（本明細書では一般にL0と呼ぶ）は、画像130の各画素132の輝度値152を含む。輝度値152はラプラシアン・ピラミッド・パラメータに照らした対応する画素132の輝度の周波数を表し、すなわち、空間周波数はフィルタ行列内の各画素132にわたって計算され、フィルタリングされる画素132は行列の中心に配置され、空間周波数は遮断周波数を超えない場合にフィルタリングされる。ピラミッド140を例示するために、第1のレベル142を空間領域に逆畳み込みすることができ、そこで第1のレベル142は元の画像130と同サイズのハイパスフィルタリング画像で表され、輝度値152はハイパスフィルタリング画像内の画素の輝度に対応する。
【００１６】
離散ラプラス演算子は各レベルの空間導関数を計算してピラミッド140の次のレベルを生成し、各後続レベルのサイズ（すなわち、輝度値の数）を半減させる。よって、第1のレベル142の複数の第1の輝度値152が、（本明細書では一般にL1と呼ぶ）第2のレベル144の1つの第2の輝度値154にダウンサンプリングされ、複数の第2の輝度値154が、（本明細書では一般にL2と呼ぶ）第3のレベル146の1つの第3の輝度値156にダウンサンプリングされ、以下同様にして、ただ1つの輝度値を含む最上位レベル148が生成される。レベル間で除外された周波数は導関数によって修正され、そのため、レベル間の各「距離」は空間バンドパスフィルタに対応し、各周波数帯域の幅は画像の解像度に依存する。レベル142〜148の数は、ラプラシアンピラミッドの最大反復回数を設定することによって制限することができる。プロセッサ102はレベルのうちの1つまたは複数の対応する輝度値を用いて焦点情報を導出する。
【００１７】
図2を参照すると、モバイル機器のプロセッサは、各段階の進行200として画像処理を実行するために、プログラム命令、ソフトウェアモジュール、ハードウェアインターフェースなどを含むデバイス論理を実行することができる。撮像段階202は、比較すべき複数の画像のうちの1つまたは複数を受け取ることを含み、画像はモバイル機器のカメラによって取り込まれる。他の態様では、画像は複数の機器によって取り込まれ、プロセッサに送られてもよい。適正な画像を取り込むようにカメラを制御するための様々な技法については後述する。特に、段階202で、プロセッサは、画像が取り込まれる前にカメラの焦点距離を固定することができる。いくつかの態様では、プロセッサは、一度に複数の画像すべてを受け取り、それらの画像を進行200によってしかるべく処理することができる。他の態様では、プロセッサは、各画像を、その画像が取り込まれる都度受け取ることができ、その画像を、後の画像がまだ取り込まれており、かつ/または受け取られている間でさえも、直ちに進行200によって処理することができる。
【００１８】
画像トリミング段階204は、画像をトリミングして小さくすることを含む。サイズは、各画像を均一にするように選択されてよい。トリミングは均一サイズであっても不均一サイズであってよく、トリミング領域は画像内の関心領域上に位置していてよい。トリミングは、画像の中心で行われてもよく、取り込み画像における明るさの程度、色相、鏡面性、飽和値といった他の要因で決定されるように空間的にオフセットされてもよい。画像トリミング段階204は、画像を回転させることおよび/または他の画像修正を行うことをさらに含んでいてよい。
【００１９】
輝度抽出段階206は、カラー画像を、ラプラシアンピラミッドによって処理するためのグレースケール画像に変換することを含む。画像内の画素の輝度だけが必要とされる。任意の適切な変換技法を用いて、画像内の輝度が保存され、色が除去されてよい。例えば、画像は、輝度チャネルとクロミナンスチャネルとで表され、チャネル情報は画素ごとに画素のRGB値から導出され、プロセッサは、輝度チャネルを抽出して新しいグレースケール画像を作成する。
【００２０】
ピラミッド生成段階208は、グレースケール画像を変換すること、反復離散ラプラス演算子を用いて、画像のラプラシアンピラミッドを生成することを含み、ピラミッドは、上述のように、少なくとも、グレースケール画像に基づく第1のレベルと、第1のレベルに基づく第2のレベルとを含む。例示的態様では、離散ラプラス演算子は5画素×5画素の行列をフィルタサイズとして用いる。このフィルタサイズは、計算上の効率とバンドパス遮断周波数の鮮鋭性との間の合理的な妥協点を生じるが、他のフィルタサイズが用いられてもよい。このように離散ラプラス演算子を適用して、グレースケール画像から複数の第1の輝度値（すなわち、L0ラプラシアン値280）が生成され、複数の第1の輝度値から複数の第2の輝度値（すなわち、L1ラプラシアン値282）が生成される。
【００２１】
エネルギー計算段階210は、ピラミッドの各レベルのラプラシアンエネルギーを表すエネルギー値（すなわち、L0の第1のエネルギー値284およびL1の第2のエネルギー値286）を決定することを含む。ラプラシアンエネルギーはレベル全体にわたる（すなわち、レベルで表される周波数帯域内の）周波数応答の測定値である。ラプラシアンエネルギーが比較的高いのは、元の輝度画像内の空間周波数成分がレベルのバンドパス領域内で大きな振幅を有する場合であり、大きな振幅は、変換画像の対応するエリアにおける大きな輝度変動に対応する。いくつかの態様では、レベルのエネルギー値は、各輝度値の二乗を計算し、次いで、中間値（すなわち、二乗値）の中央値/平均値を計算してエネルギー値を生成することによって決定される。
【００２２】
エネルギー値は、合焦画像を選択するために直接用いることができる。例えば、複数の画像において、すべてのエネルギー値がそのピーク値にある画像はベストフォーカスを有する可能性がある。しかし、この手法は近視眼的である。というのは、たとえエネルギー値がピークに達していたとしても、レベルのうちの1つのエネルギー値がその他のレベルのものより著しく高い場合も考えられる。これは、特に、「弱い」特徴を呈する皮膚表面の画像において示される。弱い特徴は、画像において、皮膚の基本外観から、かつ/または他の特徴から明確に区別されない特徴であり、すなわち、皮膚の基本外観は画像の「背景」となる色およびきめを形成し、弱い特徴、例えば、しわ、深いしわ、孔、わずかな欠点などは背景から目立たない。弱い特徴の、ぼやけた画像を含む画像では、L0の周波数変動として記録されるが後のレベルでは除外される、付加白色ガウス雑音といった画像ノイズが優勢となる場合もある。これに対応して、L0のエネルギー値はL1のエネルギー値よりも著しく高い。画像が取り込まれるのと同時に処理される場合、ベストフォーカス画像が実際にはまだ取り込まれていないときに、L0エネルギー値およびL1エネルギー値の局所ピークによって、ベストフォーカス画像としてぼやけた画像が識別される可能性がある。
【００２３】
閾値比較段階212は、そうした誤った識別に対応する。プロセッサは、エネルギー値が、ぼやけすぎている画像を除去するために設定されたエネルギー閾値を上回るかどうか判定する。またプロセッサは、L0エネルギー値対L1エネルギー値の比率がほぼ1.0であるかどうか、すなわち、エネルギー値がほぼ等しいかどうかも判定する。「ほぼ」等しい程度を決定するために約1.0の範囲を用いることができる。一例では、比率は、ほぼ1.0であるとみなすには、少なくとも0.5、多くとも1.9でなければならない。この範囲は、カメラの特性、例えば、焦点距離、画像解像度、シャッタ速度、取り込み速度などに依存しうる。画像がこれらの条件を満たす場合、プロセッサは後で処理するために画像および画像のエネルギー値を保持してよい。様々な態様では、プロセッサは、閾値を満たさない画像およびそれらの画像のエネルギー値、またはエネルギー値だけを保持してもよく、そうした画像およびエネルギー値を廃棄してもよい。
【００２４】
これらの条件は大域的ベストフォーカス画像に対応しうる。というのは、エネルギー値は周波数成分が最も多い（すなわち、画像が最も鮮鋭である）場合にピークに達し、画像はエネルギー値がほぼ等しい場合にはノイズが優勢とならないからである。これに対して、モバイル機器が被写体から焦点距離より小さい距離だけ離れているときに取り込まれた、近くがぼやけた画像は、L0エネルギー値がL1エネルギー値よりずっと高いため、比較的高い比率を有し、モバイル機器が被写体から焦点距離より大きい距離だけ離れているときに取り込まれた、遠くがぼやけた画像は、すぐにエネルギー閾値を下回るエネルギー値を有する。よって、いくつかの態様では、プロセッサは、有効な画像はエネルギー閾値を超えておりかつ画像の第2の（すなわち、L1）エネルギー値にほぼ等しい第1の（すなわち、L0）エネルギー値を有する、と判定することによって、複数の画像内のすべての「有効な」画像を識別することができる。プロセッサは、次いで、最高の第1のエネルギー値を有する有効な画像をベストフォーカス画像として識別することができる。
【００２５】
図2を再度参照すると、例示の態様は、時間フィルタリング段階214で複数の画像内の連続して受け取った画像に対応することができる。この段階214では、例えば、最後に受け取った3つの画像、すなわち、現在の（すなわち、最後に受け取った）画像；画像シーケンスにおいて現在の画像の直前に出現する、第1の前の画像；および画像シーケンスにおいて前の画像の直前に出現する、第2の前の画像、にわたってボックスカーフィルタを適用することによって、所定数の最も新しく受け取ったフレーム（すなわち、画像）のローリング平均または移動平均を計算することができる（あるいは、これらの画像を、第1の画像；画像シーケンスにおいて第1の画像の直前に出現する、前の画像；および画像シーケンスにおいて第1の画像の直後に出現する、後の画像、と呼ぶこともできる）。時間フィルタリング段階214は、前の段階212の閾値比較を拡張してボックスカーフィルタ内の画像の値の平均値に適用することができる。
【００２６】
よって、プロセッサは、現在の画像、第1の前の画像、および第2の前の画像の第1のエネルギー値から第1のエネルギー値の平均値を計算することができ、現在の画像、第1の前の画像、および第2の前の画像の第2のエネルギー値から第2のエネルギー値の平均値を計算することができる。プロセッサは、平均エネルギー値がエネルギー閾値を上回りかつほぼ等しい（すなわち、第1のエネルギー値の平均値対第2のエネルギー値の平均値の比率がほぼ1.0である）かどうか判定する。そうである場合、プロセッサは、第1の前の画像（ボックスカーフィルタの中央にある、現在の画像にはまだ後の画像がないことに留意されたい）および平均エネルギー値を、その平均エネルギー値が閾値を満たす有効な画像の待ち行列に付加することができる。待ち行列には順序があってよく、この順序は複数の画像の画像順を取るが、有効でないと判定された画像は除く。また待ち行列には、プロセッサが次の段階216に進む前に有効と識別しなければならない画像数に対応する最小待ち行列サイズもあってよい。
【００２７】
ベストフォーカス選択段階216は、待ち行列内の有効な画像の中から複数の画像のうちのベストフォーカス画像を決定することを含む。一態様では、例えば、カメラが複数の画像の取り込みを停止した場合、プロセッサは、最高の第1のエネルギー値の平均値を有する有効な画像をベストフォーカス画像として選択することができる。別の態様では、カメラが処理のための画像をまだ取り込んでいても、ベストフォーカス画像を決定することができる。プロセッサは、有効な画像のいずれかが、待ち行列で有効な画像の直前および直後の画像の第1のエネルギー値の平均値より高い第1のエネルギー値の平均値を有するかどうか判定することができる。そうである場合、プロセッサは、その有効な画像をベストフォーカス画像として選択することができる。さらに、プロセッサは、複数の画像の取り込みを停止するようカメラを制御することもできる。
【００２８】
ベストフォーカス画像はそのように選択され、プロセッサは、ベストフォーカス画像と関連付けられた1つまたは複数の動作を行うことができる。非限定的な例には、撮像を打ち切ること、ビデオまたは複数の画像のすべての他の画像を削除すること、ユーザに、または別の機器に、ベストフォーカス画像が獲得されたというアラートまたは標識を提供すること、モバイル機器のディスプレイ上にベストフォーカス画像を提示すること、ベストフォーカス画像を記憶すること、または記憶のためにリモート機器に送信することなどが含まれる。動作は、特定の所望の用途に従って画像を処理することを含んでいてよい。例えば、画像が皮膚表面のものである場合、ベストフォーカス画像は、美容、皮膚科その他の美的用途または医療用途において用いられる。そうした用途には、皮膚の状態を判定することが含まれる。一態様では、プロセッサは、画像内の皮膚特徴を分析するためにさらに別のデバイス論理を実行することができる。分析の非限定的な例には、皮膚含水率、肌のきめ、または肌色を判定すること、ざ瘡または酒さの有無を識別すること、画像を、前に取り込まれた画像と比較して、処置の進捗、外傷の治癒、しわおよび/または深いしわの進行、色変化などを推定することが含まれる。モバイル機器のベストフォーカス画像に対して動作を行う他の適切な用途には、画像検出、応用物理学用途、ロボット光学用途、および凹凸面の精密なクローズアップ画像が用いられ他の用途が含まれる。
【００２９】
図3に、各段階の進行300として画像処理を実行する別の態様を示す。プロセッサは、進行300に従ってラプラシアンピラミッドの追加レベルを利用する。これにより複雑さが増し、よって処理時間およびリソースオーバーヘッドが増えるが、図2の進行200と比較してより正確にベストフォーカス画像を生成することができる。撮像段階302、画像トリミング段階304、および輝度抽出段階306は、図2の段階202〜段階206に関連して上述したように進む。ピラミッド生成段階308で、プロセッサは、段階208に関連して上述した離散ラプラス演算子を適用してグレースケール画像のためのラプラシアンピラミッドを生成する。ラプラシアンピラミッドは、少なくとも、グレースケール画像に基づく第1のレベル、第1のレベルに基づく第2のレベル、および第2のレベルに基づく第3のレベルを含む。段階208の場合と同様に、各レベルは、対応するレベルのラプラシアン値（すなわち、L0ラプラシアン値380、L1ラプラシアン値382、およびL2ラプラシアン値384）を表す、対応する複数の輝度値を有する。
【００３０】
エネルギー計算段階310は、ピラミッドの各レベルのラプラシアンエネルギーを表すエネルギー値（すなわち、L0の第1のエネルギー値386、L1の第2のエネルギー値388、およびL2の第3のエネルギー値390）を決定することを含む。この場合もやはり、エネルギー値386〜390は、合焦画像を選択するために直接用いることができる。上述の弱い特徴に関連して、L2エネルギー値はL2エネルギー値と同様に振る舞い、近くがぼやけた画像ではL0のエネルギー値が優勢となり、遠くがぼやけた画像ではエネルギー閾値をすぐに下回る。
【００３１】
閾値比較段階312は、エネルギー値がエネルギー閾値を上回るかどうか判定することを含む。またプロセッサは、L0エネルギー値対L1エネルギー値の比率とL0エネルギー値対L2エネルギー値の比率とが、各々、ほぼ1.0であるかどうか、すなわち、エネルギー値がほぼ等しいかどうかも判定する。時間フィルタリング段階314は、所定数の最も新しく受け取ったフレーム（すなわち、画像）のローリング平均または移動平均を計算することを含んでいてよい。プロセッサは、現在の画像、第1の前の画像、および第2の前の画像の第1のエネルギー値から第1のエネルギー値の平均値を計算し、現在の画像、第1の前の画像、および第2の前の画像の第2のエネルギー値から第2のエネルギー値の平均値を計算し、現在の画像、第1の前の画像、および第2の前の画像の第3のエネルギー値から第3のエネルギー値の平均値を計算することができる。プロセッサは、平均エネルギー値がエネルギー閾値を上回り、ほぼ等しい（すなわち、第1のエネルギー値の平均値対第2のエネルギー値の平均値の比率および第1のエネルギー値の平均値対第3のエネルギー値の平均値の比率がほぼ1.0である）かどうかを判定する。そうである場合、プロセッサは、上述のように、その平均エネルギー値が閾値を満たす有効な画像の待ち行列に第1の前の画像および第1のエネルギー値の平均値を付加することができる。
【００３２】
ベストフォーカス選択段階316は、図2の段階216に関連して上述したように進む。正確さは、ラプラシアンピラミッドの第3のレベルに対応するエネルギーおよび比率の追加的な検査により、図2のより速い進行200に優って改善される。図4および図5には、37画像が取り込まれる際にカメラが皮膚の近くから皮膚の遠くへ移動された2つの例示的な撮像の、エネルギー値および比率がプロットされている。各プロットは、L0、L1、およびL2のエネルギー値が最も鮮鋭な画像402、502でピークに達し、比率L0/L1および比率L0/L2はほぼ1.0のままであることを示している。また各プロットは、カメラが被写体に非常に近いときにL0エネルギーが優勢であることも示している。
【００３３】
エネルギー値の相関的な上昇、ピーク到達、および下降は、各プロットに示すように、モバイル機器が、カメラの固定焦点距離に等しい被写体からの距離に接近し、次いでそこを通過するのに対応している。図6に、モバイル機器が、（被写体から焦点距離内にある）ある点から、（被写体から焦点距離外にある）ある点まで移動される際に複数の画像が自動的に取り込まれる場合のベストフォーカス画像を決定する方法600を示す。工程601で、プロセッサは、カメラの焦点距離を固定位置に設定することができる。有利には、固定位置はカメラが達成可能な最小焦点距離とすることができる。というのは、これにより、ベストフォーカス画像が表面の最も精密な詳細を取り込むことが確実になるからである。工程602で、プロセッサは、複数の画像のうちの1つを受け取ることができる。画像を受け取ることは、画像を取り込むようにカメラを制御することを含んでいてよい。プロセッサは、シャッタを作動させるユーザ入力、距離センサや加速度計からの信号、別の入力といった入力信号を受け取り次第、取り込みを開始することができる。プロセッサは、毎秒のフレーム数（例えば、5〜15）といった、一定の取り込み速度で画像を取り込むようカメラを制御することができ、よって、システムクロックに従って次の取り込みを自動的に作動させることができる。
【００３４】
工程604で、プロセッサは、任意選択で、画像を対象となる範囲に、または所望のサイズにトリミングすることができる。工程606で、プロセッサは、トリミング画像からグレースケール画像を生成することができる。工程608で、プロセッサは、上述のように、グレースケール画像にラプラス演算子を繰り返し適用してラプラシアンピラミッドの輝度値を生成することができる。工程610で、プロセッサは、ラプラシアンピラミッドの関連レベルごとのエネルギー値を計算することができる。工程612で、プロセッサは、直前の画像の平均エネルギー値、または前の画像がない場合には現在の画像の平均エネルギー値、もしあれば、現在の画像と1つまたは複数の前の画像との平均エネルギー値を計算することができる。工程614で、プロセッサは、前の画像が有効な画像であるかどうか、すなわち、前の画像の平均エネルギー値がエネルギー閾値を超えておりかつほぼ等しいと判定することができる。そうでない場合、工程616で、プロセッサは、画像のエネルギー値を保存し、工程602に戻って次の画像を取り込むことができる。
【００３５】
前の画像が有効な画像である場合（工程614）、工程618で、プロセッサは、前の画像を有効な画像の待ち行列にプッシュすることができる。工程620で、プロセッサは、待ち行列に最小限の数の有効な画像があるかどうか判定する。そうでない場合、プロセッサは、工程602に戻って次の画像を取り込む。そうである場合、工程622で、プロセッサは、有効なフレームのうちの1つまたは複数の第1のエネルギー値の平均値を、待ち行列内の直前の有効な画像および直後の有効な画像の対応する第1のエネルギー値の平均値と比較する。プロセッサはこれを、すべての有効な画像について行ってもよく、一部の有効な画像についてのみ行ってもよく、待ち行列内の前の画像の直前の有効な画像についてのみ行ってもよい。比較（工程622）によりベストフォーカス画像（すなわち、待ち行列内の直前および直後の有効な画像の第1のエネルギー値の平均値より高い第1のエネルギー値の平均値を有する有効な画像）が得られない場合、プロセッサは工程602に戻って次の画像を取り込む。ベストフォーカス画像が決定された場合、工程624で、プロセッサは、複数の画像の取り込みを停止するようカメラを制御し、工程626で、ベストフォーカス画像と関連付けられた追加動作を行うことができる。
【００３６】
方法600のような、ベストフォーカス決定プロセスの様々な工程には、プロセッサが、プロセスを円滑化するためにユーザと対話するようモバイル機器の構成要素を制御する部分工程または随伴工程を含んでいてよい。例えば、プロセッサは、工程602で、カメラに、毎秒8画像の取り込み速度で4.5秒間にわたって複数の画像を取り込むよう命令することができる。自動化取り込み時に、プロセッサは、モバイル機器の加速度計から信号を受け取ることができ、信号から、ユーザによるモバイル機器の移動が速すぎると判定することができる。プロセッサは、遅くするようユーザに注意喚起するために、聴覚的合図、視覚的合図、または触覚的合図を生成することができる。
【００３７】
ユーザと対話するために、モバイル機器は、ベストフォーカス画像の取り込みおよび処理に関連したドメイン固有タスクを行うように構成された仮想パーソナルアシスタント（VPA）を実装することができる。中でも特に、モバイル機器で実装され、ドメインで動作するように構成される適切なVPAアーキテクチャは、本出願人が所有する、許容される程度まで参照により本明細書に全体が組み入れられる、米国特許第9,082,402号に記載されている汎用仮想アシスタントプラットフォームである。汎用仮想アシスタントプラットフォームは、少なくとも、ドメイン固有言語モデルおよびドメイン固有タスクフローを含むプラグインシデントを受け取ることができる。言語モデルは、会話式自然言語（例えば、音声ベースの）として、ユーザに必要な動作を伝え、ユーザの問合せおよび応答を理解することに関連した語彙を提供することができる。タスクフローは、コンピューティングデバイスが行い、または開始するドメイン固有の動作を識別し、例えば、プロセッサがユーザのための合図を生成し、またはユーザから入力を受け取ることが必要になる焦点判定プロセス内のポイントや、プロセッサが、ユーザとの対話が必要であるかどうか判定するために構成要素、動作、またはデータを調べるべきであるポイントを識別する。
【００３８】
VPAは、有利には、常時利用可能とすることができる。VPAは、ユーザによって直接操作され、いくつかの態様では、いかなる外部サポートも必要とせず、よって、高度なプライバシが保証される。図7を参照すると、コンピューティングデバイス100上に完全に物理的に含まれたローカル環境が用いられているが、様々な態様を実現するために、適宜、様々な分散環境を用いることもできる。VPAの動作を円滑化するために、モバイル機器100は、通信ネットワーク702を介してリモート機器と通信することができる。ネットワーク702は、イントラネット、インターネット、セルラーネットワーク、ローカル・エリア・ネットワーク、衛星ネットワークまたは任意の他のネットワークおよび/またはそれらの組み合わせを含む任意の適切なネットワークを含むことができる。そうしたシステムに用いられる構成要素は、選択されたネットワークの種類および/または環境に少なくとも一部は依存しうる。そうしたネットワーク702を介して通信するためのプロトコルおよび構成要素は周知であり、詳述しない。ネットワーク702上の通信は、有線接続または無線接続およびそれらの組み合わせによって可能とすることができる。通信ネットワーク702は、コンピューティングデバイス100から離れたサーバ704およびデータストア706への接続を提供することによってタスクの完了を円滑化することができる。加えて、通信ネットワーク702は、コンピューティングデバイス100による他のユーザ機器708および/またはサーバ704からのメッセージまたは他のVPAデータの受信、およびコンピューティングデバイス100からのメッセージへの応答の送信などを円滑化することもできる。
【００３９】
モバイル機器100は、言語モデルおよび/またはタスクフローの更新といったVPAデータを送受信するために、1つまたは複数のサーバ704と通信することができる。特に、サーバ704のうちの1つまたは複数を、音声を構文解析し、生成するように構成することができ、モバイル機器100は、変換のためにサーバ704に入力オーディオおよび/または生成された合図を送信することができる。またモバイル機器100は、VPAデータを記憶し、取り出すために1つまたは複数のリモート・データ・ストア706に直接アクセスすることもできる。また1台または複数の他のユーザ機器708も通信ネットワーク702を介して通信することができ、VPA操作を改善するデータをモバイル機器100、サーバ704、および/またはデータストア706と共有することができる。
【００４０】
1つのサーバ704または同種もしくは様々な種類の複数の協働するサーバ704、レイヤまたは他の要素、プロセスまたは構成要素があってよく、これらは連鎖していても、それ以外の構成であってもよく、相互に、またモバイル機器100と対話して、協働サーバ704にローカルで、またはネットワーク702上でリモートでアクセスできる適切なデータストア706からデータを獲得するなどのタスクを行うことができる。サーバが用いられる場合には、ハードウェア機器や仮想コンピュータシステムなど、様々なやり方で実装されてよい。いくつかのコンテキストでは、サーバは、コンピュータシステム上で実行されているプログラミングモジュールを指す場合がある。サーバ704は、クライアントデバイスのための1つまたは複数のアプリケーションの局面を実行するのに必要とされるデータストアと対話するための任意の適切なハードウェア、ソフトウェアおよびファームウェアを含むことができ、アプリケーションのためのデータアクセスおよびビジネスロジックの一部または全部を扱う。サーバ704は、データストア706と協働してアクセス制御サービスを提供することができ、ユーザに提供するために使用できるテキスト、グラフィックス、オーディオ、ビデオおよび/または他のコンテンツを含むコンテンツを生成することができ、コンテンツは、ハイパーテキストマークアップ言語（「HTML」）、拡張可能なマークアップ言語（「XML」）、JavaScript、カスケーディング・スタイル・シート（「CSS」）、または別の適切なクライアント側構造化言語を含む任意の適切なフォーマットでモバイル機器100にサービスされてよい。モバイル機器100に転送されたコンテンツは、モバイル機器100によって、音として、視覚的に、かつ/または触覚、味覚、および/もしくは嗅覚を含む他の感覚によってユーザに知覚される形態を含む、1つまたは複数の形態でコンテンツを提供するように処理される。コンピューティングデバイス100とサーバ704との間のすべての要求および応答の処理、ならびにコンテンツの配信は、サーバ704のうちの1つ、この例では、PHP:Hypertext Preprocessor（「PHP」）、Python、Ruby、Perl、Java、HTML、XML、または別の適切なサーバ側構造化言語を用いるウェブサーバによって処理することができる。協働するサーバ1604は必須ではなく、単なる構成要素例にすぎず、前述の構造化コードは、別に論じるように、任意の適切な機器またはホストマシンで実行することができることを理解されたい。さらに、単一の機器によって行われるものとして記載されている動作は、文脈から明白でない限り、分散システムおよび/または仮想システムを形成しうる複数の機器によって集合的に行われてもよい。
【００４１】
データストア706には、いくつかの別々のデータテーブル、データベース、データドキュメント、動的データ記憶方式ならびに/または、それだけに限らないがVPAデータおよび画像データを含む、本開示の特定の局面に関連したデータを記憶するための他のデータ記憶機構および媒体が含まれうる。ユーザ情報やアクセス権限情報など、データストアに記憶する必要がある多くの局面が生じる可能性があり、これらは任意の適切な機構としてデータストア706に記憶することができることを理解されたい。データストア706は、それと関連付けられた論理によって、サーバ704から命令を受け取り、命令に応答してデータを獲得し、更新し、またはそれ以外に処理するように動作することができる。サーバ704は、受け取った命令に応答して静的データ、動的データまたは静的データと動的データの組み合わせを提供することができる。ウェブログ（ブログ）、買い物アプリケーション、ニュースサービスその他のアプリケーションで用いられるような動的データは、前述のようにサーバ側の構造化言語が生成してもよく、サーバ704上で、またはサーバ704の制御下で動作するコンテンツ管理システム（「CMS」）が提供してもよい。
【００４２】
各サーバ704は、通常、当該サーバの一般管理および動作のための実行可能プログラム命令を提供するオペレーティングシステムを含み、通常、サーバのプロセッサによって実行されると、サーバがその意図される機能を果たすことを可能にする命令を記憶したコンピュータ可読記憶媒体（例えば、ハードディスク、ランダム・アクセス・メモリ、読取り専用メモリなど）を含む。オペレーティングシステムに適した実施態様およびサーバの一般的な機能は公知であり、または市販されており、特に本開示に照らして、当業者によって容易に実施される。環境は、一態様では、1つまたは複数のコンピュータネットワークまたは直接接続を用いて、通信リンクを介して相互接続されたいくつかのコンピュータシステムおよび構成要素を利用する分散コンピューティング環境および/または仮想コンピューティング環境である。しかし、そうしたシステムは、図7に例示されるより少数または多数の構成要素を有するシステムにおいても同等に適切に動作しうるはずであることが当業者には理解されよう。よって、図7の描写は、本開示の範囲に対する限定でははく、例示的な性格のものとみなすべきである。
【００４３】
図8を参照すると、ユーザ機器上で実施されるVPAは、ユーザを助けて皮膚状態などの健康上の関心事を分析させる方法800を行うことができる。方法800は、VPAのドメイン固有モジュールを用いて、モバイル機器および本明細書に記載されるプロセスを用いて撮影することができる任意の物理的表面を分析するように適合させることができる。工程802で、VPAは、モバイル機器からの聴覚的合図および/または視覚的合図を用いて、ユーザの関心事を識別する入力を行うようユーザを促すことができる。工程804で、VPAは、ユーザから入力を受け取ることができ、工程806で、VPAは、ユーザ入力から識別された関心事を判定することができる。いくつかの態様では、VPAは、症状、現在の製品使用状況、日常の処置手順、他の日常的な習慣、バイオセンサからの読取り値などといったユーザの生物学的情報および処置情報に関連した入力のうちの1つまたはそれらの組み合わせを用いて関心事を判定することができる。例えば、ざ瘡の発生は、ホルモンの変化、年齢、油性肌、製品側の影響、ビジョンシステムによって収集された情報における特徴などを含む要因のうちの1つまたはそれらの組み合わせに起因しうる。VPAシステムは、すべての情報を活用して関心事および原因を絞り込むことができる。
【００４４】
工程808で、VPAは、評価すべき状態/関心事に基づいて、関心事に関する画像を取り込むための1つまたは複数のパラメータを決定することができる。そうしたパラメータの非限定的な例には、目標面（例えば、皮膚）、関心領域（例えば、頬）、描写されることが予期される任意の特徴または対象物（例えば、しわ、傷）など、ならびに画像内のパラメータの特性値（例えば、鮮鋭度閾値、傷のエッジを決定するための最小色ずれ）が含まれる。パラメータは、最初の情報収集と原因に基づく分析とでは異なりうる。一例として、最初のざ瘡判定は、皮膚特徴の位置、サイズ、および重症度に基づくものである。原因または状態（例えば、油性肌）が判定されると、パラメータは、その原因または状態の特性を含むように拡張される（例えば、肌はどの程度の油性か）。
【００４５】
工程810で、上述のように、VPAはパラメータを用いて、ユーザが必要なベストフォーカス画像を取り込むのを支援することができる。いくつかの態様では、VPAは、任意の物理的表面を分析する携帯電話ベースのシステムを作成するために放射分析処理ルーチンを含むことができる。ドメイン構成されたVPAは、他のタスクを行うことに加えて、ユーザを誘導して、携帯電話のカメラを位置決めさせ、カメラが正しい位置にあり、最適な撮像および分析品質を得るための物理的表面に対して正しい角度または位置にあることを保証する（合図または命令の形態の）フィードバックを提供することができる。ユーザを誘導して、頬、額、下顎などといった身体の様々な位置で携帯電話を適正に位置決めさせる一態様では、VPAは所望の位置を告知することができる。基準点から開始して、VPAは、ビープ音（例えば、速いビープ音は所望の位置に近いことを指示し、連続ビープ音は所望の位置に達したことを指示する）および/または直接命令（例えば、「携帯電話を下に傾けてください」、「約1インチ近づけてください」）でユーザを誘導することができる。これは、ユーザがモバイル機器のディスプレイを見ることができない位置を撮影しているときに特に有用である。工程812で、VPAはベストフォーカス画像を獲得し、ベストフォーカス画像は必要なパラメータを満たしていると判定することができる。いくつかの態様では、プロセッサは、決定されたベストフォーカス画像もしくはいくつかの必要な特徴/対象物が実際にはまだぼやけており、またはベストフォーカス画像は関心領域を含まないと判定することができる。VPAは、写真を撮り直さなければならないという情報を伝えることができ、ユーザを助けて上述のように写真を再度撮らせることができる。
【００４６】
ユーザと対話して画像を確保する別の態様では、VPAは、画像の分析にコンテキストおよび明確なユーザ意図を組み入れることができる。一例として、ユーザは、VPAのプロンプト（工程802）に応答して、「発疹の写真を撮る」と言い、VPAがユーザの皮膚の発疹を分析するというユーザの意図を指示することができる。ユーザが自分の意図を指定した場合（例えば、工程806の入力から判定される）、またはVPAが（例えば、工程808でキャプチャパラメータを決定する構成要素として）コンテキストに基づいて意図をアルゴリズム的に推論した場合、VPAは意図に合わせて（例えば、工程812のベストフォーカス画像の検証時に）画像分析を最適化することができる。例えば、VPAは、ベストフォーカス画像を評価して、画像内で発疹を検出できるかどうか判定することができる。意図が達成されない場合、VPAは、撮像に成功しなかったとみなし、再取り込み（工程810）のために、適宜、カメラの位置を変更するようにフィードバックをさらに調整することができる。
【００４７】
必要な品質レベルを有し、関心対象の特徴を描写する画像が獲得されると、その画像を記憶することができ、その他の画像は廃棄される（工程814）。ベストフォーカス画像はVPAによって（すなわち、モバイル機器上の、またはモバイル機器にリモートで接続されたプロセッサもしくは画像分析エンジンによって）分析することができる。分析は、描写された特徴および/または凹凸面の変化を識別するための、関心領域の過去の収集画像などの履歴データに対する画像の比較を含むことができる。よって、例えば、ユーザは、皮膚状態の処置時、または処置後の関心領域を定期的に撮影することができ、VPAは、履歴データが存在する場合、皮膚状態の変化を経時的に判定することができる。工程816で、VPAは、識別された状態、領域、または関心事に関する履歴データがあるかどうか判定することができる。例えば、VPAは、被写体の以前に取り込まれた画像を含むデータストアにアクセスすることができ、そうした画像は、取り込まれた日付、表明された関心事、描写された領域または特徴などによって（例えば、メタデータを用いて）識別される。履歴データがない場合、VPAは、他の分析を行い（例えば、工程818に進み）、または単に画像が記憶されたことをユーザに確認することができる。
【００４８】
評価されている関心事に関する履歴データがある場合、工程820で、VPAは画像を履歴データと比較することができる。例えば、VPAは、1つまたは複数の前の画像に対する新しく取り込まれた画像の画像比較を行い、それらの差異を識別することができる。差異が、評価されている関心事に関連した特徴に関するもの（例えば、関心領域内の皮膚の傷の消失、サイズの低減、色の変化）である場合、VPAはそれらの差異を状態の変化として識別することができる。変化は、変化のレベルを識別し、変化の領域を強調することができ、定量的情報と定性的情報とを重ね合わせることもできる。工程822で、VPAは、識別された変化をユーザに表示することができる。例えば、VPAは、モバイル機器のディスプレイに、前の画像と新しい画像とを含む並列画像をレンダリングすることができる。加えて、または代替として、VPAは、変化を図式的に識別する新しい画像の注釈付きバージョンをレンダリングすることもでき、変化を記述するテキストまたは音声を含むこともできる。別の態様では、工程820でアクセスされるデータストアは、VPAが関心事される状態の理想的な、または目標となる進捗を識別することを可能にするデータを含むことができ、工程822で、VPAはユーザに、理想的な、または目標となる進捗と比較した処置の進捗の評価を提示することができる。いくつかの態様では、理想的な状態を、関連業界における一般的な基準として提供することができる。これには、皮膚組成、油性レベル、肌の色、およびその他の要因を含むことができるはずである。別の態様では、新しい画像および/または比較の結果（工程820）をサーバ、医師もしくはエステティシャンのモバイル機器、または専門家の別のコンピューティングデバイスに送ることができ、次いで専門家らは結果をユーザに返すことができる。
【００４９】
工程818に戻って、いくつかの態様では、VPAは、皮膚状態を分析して、処置、薬剤または他の製品、生活様式の変更、および関心がある状態のための他の処置についての助言を決定することができる。VPAは、用いられている製品を考察することによって助言を提供し、ユーザの健康を支援することができる新しい製品を提案することができる。履歴データが分析された場合、VPAは、助言を決定するときに分析の結果を組み入れることができる。VPAは、工程830で、モバイル機器の音声および/またはビデオ出力によってユーザに助言を提示することができる。提示は、ユーザへの分析データおよび助言する理由の説明を含むことができる。またシステムは、関連情報を提供することにより製品の規則正しい使用を奨励する分身（buddy）とすることもできる。
【００５０】
図9に、例示的なモバイル機器100の一般的な構成要素セットの論理的配置を示す。上述のプロセッサ102、デバイス論理104、およびディスプレイ106に加えて、モバイル機器100はメモリ構成要素900も含むことができ、これには多くの種類のメモリ、データ記憶、または非一時的なコンピュータ可読記憶媒体、例えば、プログラム命令、画像および他のデータのためのデータストア、他の機器と情報を共有するための取り外し可能メモリなどが含まれうる。1つもしくは複数のカメラ902または他のイメージセンサは画像またはビデオコンテンツを取り込むことができる。カメラは、ユーザが機器を操作しているときにユーザの画像を取り込むために、十分な解像度、焦点距離、および/または可視領域を有するCCDやCMOSイメージセンサといった、任意の適切な技術を含み、そうした技術に少なくとも一部は基づくものとすることができる。イメージセンサは、機器の近傍において投射画像または他の対象物を画像化することができるカメラまたは赤外線センサを含むことができる。撮像は、1つの画像、複数の画像、周期的なイメージング、連続した撮像、イメージストリーミングなどを用いて行うことができることを理解されたい。さらに、機器は、例えば、ユーザ、アプリケーション、または他の機器からコマンドを受け取ったときなどに、撮像を開始でき、かつ/または停止できる機能を含むことができる。モバイル機器100は、同様に、少なくとも1つの主方向からオーディオ情報を取り込むように動作する、モノラルまたはステレオのマイクロフォンやマイクロフォンアレイなど、少なくとも1つのオーディオ構成要素904を含むことができる。マイクロフォンは、そうした機器で公知の単一指向性マイクロフォンまたは無指向性マイクロフォンとすることができる。
【００５１】
モバイル機器100は、1つまたは複数の方位センサおよび/または動きセンサ906も含むことができる。そうしたセンサには、方位および/または方位の変化を検出するように動作する加速度計またはジャイロスコープや、機器が面していると判定される方向を指示することができる電子コンパスまたはデジタルコンパスが含まれうる。それらの機構はさらに（または代替として）、モバイル機器の位置の相対座標を決定するように動作する全地球測位システム（GPS）または類似した測位要素、ならびに機器の相対的に大きい動きに関する情報も含み、または構成することができる。機器は、三角測量や別のそうした手法による位置決定を可能にするような、他の要素も含むことができる。これらの機構はプロセッサ102と通信することができ、それによって機器は、ユーザ入力として傾きを検出するなど、いくつかの動作のいずれかを行うことができる。
【００５２】
モバイル機器100は、モバイル機器に電源を提供するための当技術分野において公知の様々な電源構成要素908を含み、これにはパワーパッドや類似した装置と共に用いるための容量性充電要素が含まれうる。モバイル機器は、Wi-Fi、Bluetooth、無線周波数（RF）、有線、または無線通信システムといった、1つまたは複数の通信要素またはネットワーキングサブシステム910を含むことができる。多くの態様の機器は、インターネットなどのネットワークと通信することができ、他のそうした機器と通信することもできる。いくつかの態様では、機器は、ユーザから従来の入力を受け取ることができる少なくとも1つの追加入力要素912を含むことができる。この従来の入力には、例えば、プッシュボタン、タッチパッド、タッチスクリーン、ホイール、ジョイスティック、キーボード、マウス、キーパッド、またはユーザが機器にコマンドを入力するための任意の他のそうした構成要素もしくは要素が含まれうる。しかし、いくつかの態様では、そうした機器はいかなるボタンも含まず、視覚コマンドと聴覚コマンドの組み合わせによってのみ制御され、ユーザは機器に触れずに機器を制御することができる。
【００５３】
様々な態様をさらに多種多様な動作環境で実施することができ、これは、場合によっては、いくつかのアプリケーションのいずれかを動作させるのに用いることができる、1台または複数のユーザコンピュータ、コンピューティングデバイスまたは処理デバイスを含むことができる。ユーザ機器またはクライアント機器には、標準オペレーティングシステムを実行するデスクトップ、ラップトップまたはタブレットコンピュータや、モバイルソフトウェアを実行し、いくつかのネットワーキングプロトコルおよびメッセージングプロトコルをサポートすることができるセルラー機器、無線機器およびハンドヘルド機器といった、いくつかの汎用パーソナルコンピュータのうちのいずれかが含まれうる。またそうしたシステムには、様々な市販のオペレーティングシステムおよび開発やデータベース管理といった目的のための他の公知のアプリケーションのいずれかを実行するいくつかのワークステーションも含まれうる。またこれらの機器には、ダミー端末、シンクライアント、ゲーミングシステム、ネットワークを介して通信することができる他の機器といった他の電子機器も含まれうる。またこれらの機器には、仮想機械、ハイパーバイザ、ネットワークを介して通信することができる他の仮想機器といった仮想機器も含まれうる。
【００５４】
本開示の様々な態様は、伝送制御プロトコル/インターネットプロトコル（「TCP/IP」）、ユーザ・データグラム・プロトコル（「UDP」）、開放型システム間相互接続（「OSI」）モデルの様々な層で動作するプロトコル、ファイル転送プロトコル（「FTP」）、ユニバーサル・プラグ・アンド・プレイ（「UpnP」）、ネットワーク・ファイル・システム（「NFS」）、共通インターネット・ファイル・システム（「CIFS」）、AppleTalkといった、様々な市販のプロトコルのいずれかを用いて通信をサポートするための当業者にはよく知られたネットワークを利用する。ネットワークは、例えば、ローカル・エリア・ネットワーク、広域ネットワーク、仮想私設網、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク、衛星ネットワーク、およびそれらの任意の組み合わせとすることができる。
【００５５】
ウェブサーバを利用した態様では、ウェブサーバは、ハイパーテキスト転送プロトコル（「HTTP」）サーバ、FTPサーバ、コモン・ゲートウェイ・インターフェース（「CGI」）サーバ、データサーバ、Javaサーバ、Apacheサーバ、およびビジネス・アプリケーション・サーバを含む、様々なサーバアプリケーションまたは中間層アプリケーションのいずれかを実行することができる。またサーバは、例えば、Java（登録商標）、C、C#もしくはC++といった任意のプログラミング言語、またはRuby、PHP、Perl、PythonもしくはTCLといった任意のスクリプティング言語、およびそれらの組み合わせで書かれた1つまたは複数のスクリプトまたはプログラムとして実施されうる1つまたは複数のウェブアプリケーションを実行することによって、ユーザ機器からの要求に応答してプログラムまたはスクリプトを実行することもできる。またサーバは、Oracle（登録商標）、Microsoft（登録商標）、Sybase（登録商標）、およびIBM（登録商標）から市販されているデータベースサーバ、ならびに、MySQL、Postgres、SQLite、MongoDBといったオープンソースサーバ、構造化データまたは非構造化データを記憶し、取り出し、アクセスすることができる任意の他のサーバを含むデータベースサーバを含んでいてもよい。データベースサーバは、テーブルベースサーバ、ドキュメントベースサーバ、非構造化サーバ、関係サーバ、非関係サーバまたはこれらおよび/もしくは他のデータベースサーバの組み合わせを含んでいてよい。
【００５６】
環境は、上述のような様々なデータストアおよび他のメモリおよび記憶媒体を含むことができる。これらは、様々な位置、例えば、コンピュータのうちの1台もしくは複数にローカルな（かつ/もしくはそこに置かれた）、またはネットワーク全体のコンピュータのうちのいずれかもしくは全部からリモートな記憶媒体上に置くことができる。特定の態様では、情報は、当業者によく知られたストレージ・エリア・ネットワーク（「SAN」）に置かれていてよい。同様に、コンピュータ、サーバまたは他のネットワークデバイスに帰属する機能を果たすための任意の必要なファイルが、適宜、ローカルで、かつ/またはリモートで記憶されていてもよい。システムがコンピュータ化された機器を含む場合、そうした各機器は、バスを介して電気的に結合されうるハードウェア要素を含むことができ、要素には、例えば、中央処理装置（「CPU」または「プロセッサ」）、入力装置（例えば、マウス、キーボード、コントローラ、タッチスクリーン、キーパッド）、および出力装置（例えば、表示装置、プリンタ、スピーカ）が含まれる。そうしたシステムは、1つまたは複数の記憶装置、例えば、ディスクドライブ、光記憶装置、ランダム・アクセス・メモリ（「RAM」）や読取り専用メモリ（「ROM」）といった固体記憶装置、ならびにリムーバブル・メディア・デバイス、メモリカード、フラッシュカードなども含んでいてよい。
【００５７】
そうした機器は、上述のように、コンピュータ可読記憶媒体リーダ、通信機器（例えば、モデム、無線もしくは有線ネットワークカード、赤外線通信機器など）、および作業メモリも含むことができる。コンピュータ可読記憶媒体リーダは、リモート記憶装置、ローカル記憶装置、固定記憶装置、および/またはリムーバブル記憶装置を表すコンピュータ可読記憶媒体、ならびに、コンピュータ可読情報を一時的に、かつ/またはより永続的に含み、記憶し、送信し、取り出すための記憶媒体と接続し、またはそれらを受け取るように構成することができる。またシステムおよび様々な機器は、通常、オペレーティングシステムおよびクライアントアプリケーションやウェブブラウザなどのアプリケーションプログラムを含む、いくつかのソフトウェアアプリケーション、モジュール、サービス、または作業メモリデバイス内に位置する他の要素も含む。代替の態様は上述の態様の多数の変形を有しうることを理解されたい。例えば、カスタマイズされたハードウェアを用いることもでき、かつ/または特定の要素をハードウェア、（アプレットなどのポータブルソフトウェアを含む）ソフトウェア、またはその両方として実施することもできる。さらに、ネットワーク入力装置/ネットワーク出力装置といった他のコンピューティングデバイスへの接続も用いられてよい。
【００５８】
コード、またはコードの部分を入れるための記憶媒体およびコンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータといった情報の記憶および/または伝送のための任意の方法または技術で実施された揮発性および不揮発性、取り外し可能および取り外し不能の媒体といった、記憶媒体および通信媒体を含む、当技術分野において公知の、または当技術分野において用いられる任意の適切な媒体を含むことができ、これには、RAM、ROM、電気的消去書込み可能読取り専用メモリ（「EEPROM」）、フラッシュメモリもしくは他のメモリ技術、コンパクトディスク読取り専用メモリ（「CD-ROM」）、デジタル多用途ディスク（DVD）もしくは他の光記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくは他の磁気記憶装置、または所望の情報を記憶するのに用いることができ、システムデバイスによってアクセスすることができる任意の他の媒体が含まれる。本開示および提供される教示に基づけば、当業者は、様々な態様を実施するための他のやり方および/または方法を理解するであろう。
【００５９】
その他の例
本明細書で開示する技術の説明例を以下で提供する。これらの技術の一態様は、後述する例のうちの任意の1つまたは複数、およびそれらの組み合わせを含むことができる。
【００６０】
例1において、モバイル機器を用いて、被写体の皮膚表面のベストフォーカス画像を取り込む方法は、以下の工程を含む：
モバイル機器のカメラを固定焦点距離に設定する工程、
カメラを用いて、皮膚表面の複数の画像のうちの現在の画像を取り込む工程であって、複数の画像が、順序を有し、かつ、カメラを用いて現在の画像の直前に取り込まれた第1の前の画像およびカメラを用いて第1の前の画像の直前に取り込まれた第2の前の画像を含む、現在の画像を取り込む工程、
現在の画像からグレースケール画像を生成する工程、
ラプラシアンピラミッドを用いて、グレースケール画像から複数の第1の輝度値を生成し、複数の第1の輝度値から複数の第2の輝度値を生成するために、グレースケール画像を変換する工程、
第1のエネルギー値を生成するために、複数の第1の輝度値のうちの対応する第1の輝度値の二乗を各々が含む複数の第1の二乗値を平均する工程、
第2のエネルギー値を生成するために、複数の第2の輝度値のうちの対応する第2の輝度値の二乗を各々が含む複数の第2の二乗値を平均する工程、
第1のエネルギー値対第2のエネルギー値の第1の比率を計算する工程、
第1の前の画像の第1のエネルギー値の平均値として、第1のエネルギー値、第1の前の画像の対応する第1のエネルギー値、および第2の前の画像の対応する第1のエネルギー値の平均値を計算する工程、
第1の前の画像の第1の比率の平均値として、第1の比率、第1の前の画像の対応する第1の比率、および第2の前の画像の対応する第1の比率の平均値を計算する工程、
第1の前の画像は複数の有効な画像のうちの1つであると決定する工程であって、複数の有効な画像の各有効な画像が、複数の画像のうちの画像であり、
エネルギー閾値を上回る対応する第1のエネルギー値の平均値、および
1.0にほぼ等しい対応する第1の比率の平均値
を有する、工程、
複数の有効な画像のうちの第1の有効な画像がベストフォーカス画像であると決定する工程であって、第1の有効な画像が、
第1の有効な画像の直前に取り込まれた、前の有効な画像、および
第1の有効な画像の直後に取り込まれた、後の有効な画像
の対応する第1のエネルギー値の平均値より大きい対応する第1のエネルギー値の平均値を有する、工程、ならびに
ベストフォーカス画像と関連付けられた動作を行う工程。
【００６１】
例2は例1の主題を含み、
現在の画像を取り込む工程は、
モバイル機器が皮膚表面から第1の距離だけ離れた第1の点と皮膚表面から第2の距離だけ離れた第2の点との間を連続して移動される際に、ある取り込み速度で複数の画像を自動的に取り込む段階であって、第1の距離が焦点距離より小さく、第2の距離が焦点距離より大きい、段階
を含み、
動作を行う工程は、
現在の画像が複数の画像のうちの最後に取り込まれた画像になるように、複数の画像の取り込みを停止する段階
を含み、
本方法は、ベストフォーカス画像を決定する前に、複数の有効な画像が少なくとも最小限の数の複数の画像を含む、と判定する工程、をさらに含む。
【００６２】
例3は例1および/または例2のいずれかの主題を含み、
複数の画像の取り込み時に被写体がモバイル機器を移動させている間はモバイル機器のディスプレイが被写体から見えないように皮膚表面が位置しており、
複数の画像を取り込む工程は、
モバイル機器の加速度計を用いて、モバイル機器が移動されている速度が所定の速度制限を超えている、と判定する段階、および
モバイル機器を用いて、モバイル機器の移動を遅くするよう被写体に指示する聴覚的アラートを生成する段階
を含み、
動作を行う工程は、
モバイル機器を用いて、ベストフォーカス画像が取り込まれたという聴覚的指示を生成する段階
をさらに含む。
【００６３】
例4は例1、例2および/または例3のいずれかの主題を含み、
本方法は、
ラプラシアンピラミッドを用いて、複数の第2の輝度値から複数の第3の輝度値を生成するために、グレースケール画像をさらに変換する工程、
第3のエネルギー値を生成するために、複数の第3の輝度値のうちの対応する第3の輝度値の二乗を各々が含む複数の第3の二乗値を平均する工程、
第1のエネルギー値対第3のエネルギー値の第2の比率を計算する工程、
第1の前の画像の第2のエネルギー値の平均値として、第2のエネルギー値、第1の前の画像の対応する第2のエネルギー値、および第2の前の画像の対応する第2のエネルギー値の平均値を計算する工程、
第1の前の画像の第3のエネルギー値の平均値として、第3のエネルギー値、第1の前の画像の対応する第3のエネルギー値、および第2の前の画像の対応する第3のエネルギー値の平均値を計算する工程、ならびに
第1の前の画像の第2の比率の平均値として、第2の比率、第1の前の画像の対応する第2の比率、および第2の前の画像の対応する第2の比率の平均値を計算する工程、
をさらに含み、
複数の有効な画像の各有効な画像は、
どちらもエネルギー閾値を上回る対応する第2のエネルギー値の平均値および対応する第3のエネルギー値の平均値、ならびに
1.0にほぼ等しい対応する第2の比率の平均値
をさらに有する。
【００６４】
例5において、
モバイル機器を用いて、凹凸面のベストフォーカス画像を決定する方法は、以下の工程を含む：
カメラが固定焦点距離に設定されている間にモバイル機器のカメラによって取り込まれた、凹凸面の複数の画像を受け取る工程、
複数の画像のうちの第1の画像にラプラシアンピラミッドを適用する工程であって、第1の画像に基づく第1のレベルと、第1のレベルに基づく第2のレベルとを有するラプラシアンピラミッドを生成する、工程、
第1のレベルのラプラシアンエネルギーを表す、第1の画像の第1のエネルギー値を決定する工程、
第2のレベルのラプラシアンエネルギーを表す、第1の画像の第2のエネルギー値を決定する工程、
第1のエネルギー値がエネルギー閾値を超えておりかつ第2のエネルギー値にほぼ等しい、と判定する工程、
第1の画像の第1のエネルギー値および複数の有効な画像の各有効な画像の対応する第1のエネルギー値に少なくとも一部は基づき、第1の画像はベストフォーカス画像であると決定する工程であって、複数の有効な画像が、エネルギー閾値を超えておりかつ対応する第2のエネルギー値にほぼ等しい対応する第1のエネルギー値を有するすべての複数の画像を含む、工程、ならびに
ベストフォーカス画像と関連付けられた動作を行う工程。
【００６５】
例6は例5の主題を含み、
複数の画像を受け取る工程は、
モバイル機器が凹凸面から第1の距離だけ離れた第1の点と凹凸面から第2の距離だけ離れた第2の点との間を連続して移動される際に、ある取り込み速度で複数の画像を取り込むようにカメラを制御する段階であって、第1の距離が焦点距離より小さく、第2の距離が焦点距離より大きい、段階
を含む。
【００６６】
例7は例5および/または例6のいずれかの主題を含み、
複数の画像を受け取る工程は、
モバイル機器の1つまたは複数の状態を判定する段階、および
モバイル機器を用いて、1つまたは複数の状態に基づく1つまたは複数の聴覚的合図を生成する段階であって、1つまたは複数の聴覚的合図が、モバイル機器のユーザが複数の画像のうちの1つまたは複数を取り込むためにモバイル機器を位置決めするのを支援する、段階
をさらに含む。
【００６７】
例8は例5、例6、および/または例7のいずれかの主題を含み、
1つまたは複数の状態を判定する工程は、
モバイル機器の加速度計を用いて、モバイル機器が移動されている速度は所定の速度制限を超えていると判定する段階、
を含み、
1つまたは複数の聴覚的合図を生成する工程は、
モバイル機器の移動を遅くするようユーザに指示する聴覚的アラートを生成する段階
を含む。
【００６８】
例9は例5、例6、例7、および/または例8のいずれかの主題を含み、
複数の画像は、第1の画像の直後に取り込まれた現在の画像を含み、
動作を行う工程は、
現在の画像が複数の画像の最後に取り込まれるように複数の画像の取り込みを停止するようカメラを制御する段階
を含む。
【００６９】
例10は例5、例6、例7、例8、および/または例9のいずれかの主題を含み、
第1の画像はベストフォーカス画像であると決定する工程
第1の画像、現在の画像、および、第1の画像の直前に取り込まれた複数の画像のうちの前の画像の、対応する第1のエネルギー値から第1のエネルギー値の平均値を計算する段階、
各々が複数の画像のうちの対応する画像と関連付けられた、画像の対応する第1のエネルギー値と画像の対応する第2のエネルギー値とを比較する、複数の第1の比率の第1の比率から平均値を計算する段階であって、複数の第1の比率が、第1の画像、前の画像、および現在の画像の各々の対応する第1の比率を含む、段階、
第1のエネルギー値の平均値がエネルギー閾値を超えておりかつ第1の比率の平均値がほぼ1.0である、と判定する段階、ならびに
第1の画像の第1のエネルギー値の平均値が、
第1の画像の直前に取り込まれた、複数の有効な画像のうちの前の有効な画像、および
第1の画像の直後に取り込まれた、複数の有効な画像のうちの後の有効な画像
の各々の対応する第1のエネルギー値の平均値より大きい、と判定する段階
を含む。
【００７０】
例11は例5、例6、例7、例8、例9、および/または例10のいずれかの主題を含み、
ラプラシアンピラミッドを適用する工程は、ラプラシアンピラミッドの1つまたは複数のパラメータを、
モバイル機器が焦点距離より小さい第1の距離だけ凹凸面から離れているときに取り込まれた第1の非合焦画像に基づく第1のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーが対応する第2のレベルのラプラシアンエネルギーと比べてより高くかつほぼ等しくはない第1のレベルおよび第2のレベルを呈するように、および
モバイル機器が焦点距離より大きい第2の距離だけ凹凸面から離れているときに取り込まれた第2の非合焦画像に基づく第2のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーがエネルギー閾値を超えない第1のレベルを呈するように
選択する段階、を含む。
【００７１】
例12は例5、例6、例7、例8、例9、例10、および/または例11のいずれかの主題を含み、
動作を行う工程は、
第1の画像のぼやけがぼやけ閾値を超えている、と判定する段階、および
複数の画像を廃棄すべきでありかつ凹凸面の複数の新しい画像を取り込まなければならない、と指示する合図を、モバイル機器を用いて生成する段階
を含む。
【００７２】
例13は例5、例6、例7、例8、例9、例10、例11、および/または例12のいずれかの主題を含み、
凹凸面は被写体の皮膚表面であり、
皮膚表面は、基本外観と、基本外観から、かつ/または他の1つもしくは複数の弱い特徴から各々明確に区別されない1つもしくは複数の弱い特徴とを有し、
動作を行う工程は、
ベストフォーカス画像内の1つまたは複数の弱い特徴を検出し、1つまたは複数の弱い特徴に関する情報を生成する段階
を含む。
【００７３】
例14は例5、例6、例7、例8、例9、例10、例11、例12、および/または例13のいずれかの主題を含み、
1つまたは複数の弱い特徴は、深いしわ、しわ、および孔を含む群の中から選択される。
【００７４】
例15において、
モバイル機器は、
焦点距離に設定されたカメラと、
デバイス論理およびラプラシアンピラミッドを記憶するメモリと、
メモリおよびカメラと電気的に連通するプロセッサと
を含み、
プロセッサはデバイス論理を実行して、
カメラから関心領域の複数の画像を受け取り、
各画像に離散ラプラス演算子を適用して、画像に基づく第1のレベルと、第1のレベルに基づく第2のレベルとを有する対応するラプラシアンピラミッドを生成し、
対応するピラミッドの第1のレベルのラプラシアンエネルギーを表す対応する第1のエネルギー値を、複数の画像の画像ごとに決定し、
対応するピラミッドの第2のレベルのラプラシアンエネルギーを表す対応する第2のエネルギー値を、複数の画像の画像ごとに決定し、
複数の画像のうちの1つであり、エネルギー閾値を超えておりかつ第2のエネルギー値にほぼ等しい第1のエネルギー値を有する、ベストフォーカス画像を含む複数の有効な画像の各有効な画像の、対応する第1のエネルギー値に少なくとも一部は基づいて複数の画像のうちのベストフォーカス画像を決定し、
ベストフォーカス画像に基づいて動作を行う。
【００７５】
例16は例15の主題を含み、
離散ラプラス演算子は、所定のサイズおよび所定の周波数のハイパス・フィルタリング・カーネルを含み、
所定のサイズおよび所定の周波数は、
モバイル機器が焦点距離より小さい第1の距離だけ被写体から離れているときに取り込まれた第1の非合焦画像の第1のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーが対応する第2のレベルのラプラシアンエネルギーと比べてより高くかつほぼ等しくはない第1のレベルおよび第2のレベルを呈するように、および
モバイル機器が焦点距離より大きい第2の距離だけ被写体から離れているときに取り込まれた第2の非合焦画像に基づく第2のラプラシアンピラミッドが、対応する第1のレベルのラプラシアンエネルギーがエネルギー閾値を超えない第1のレベルを呈するように
選択される。
【００７６】
例17は例15および/または例16のいずれかの主題を含み、
オートフォーカスモータをさらに含み、
カメラの焦点距離はオートフォーカスモータによって最小焦点距離から最大焦点距離まで調整可能であり、
複数の画像を受け取るために、カメラによる複数の画像の取り込み時に、プロセッサがデバイス論理を実行して焦点距離を最小焦点距離に固定しかつ、オートフォーカスモータを無効にする。
【００７７】
例18は例15、例16、および/または例17のいずれかの主題を含み、
プロセッサと電気的に連通する距離センサをさらに含み、
関心領域は凹凸面を含み、
複数の画像を受け取るために、プロセッサはデバイス論理を実行して、
距離センサから信号を受け取り、
焦点距離より小さい第1の距離だけ凹凸面から離れている第1の点にモバイル機器が位置決めされていることを距離センサが検出したと信号が指示している、と判定し、
モバイル機器が、第1の点から、焦点距離より大きい第2の距離だけ凹凸面から離れている第2の点まで連続して移動される際、ある取り込み速度で複数の画像を取り込むようカメラを制御する。
【００７８】
例19は例15、例16、例17、および/または例18のいずれかの主題を含み、
複数の画像が第1の順序を有し、複数の有効な画像が、複数の有効な画像のうちの1つではない複数の画像の各画像が除去された第1の順序を含む第2の順序を有するように、
プロセッサは、画像が取り込まれる際に複数の画像の各画像を受け取り、
複数の有効な画像の各有効な画像は、エネルギー閾値を超えておりかつほぼ等しい対応する第1のエネルギー値の平均値および対応する第2のエネルギー値の平均値をさらに有し、
プロセッサはデバイス論理を実行して、
有効な画像、第1の順序で有効な画像の直前に位置決めされた前の画像、および第1の順序で有効な画像の直後に位置決めされた後の画像の、対応する第1のエネルギー値から対応する第1のエネルギー値の平均値を計算し、
有効な画像、前の画像、および後の画像の、対応する第2のエネルギー値から対応する第2のエネルギー値の平均値を計算し、
対応する第1のエネルギー値の平均値がエネルギー閾値を超えておりかつ対応する第2のエネルギー値の平均値にほぼ等しい、と判定し、
ベストフォーカス画像を決定するために、プロセッサはデバイス論理を実行して、
複数の有効な画像の第1の画像の対応する第1のエネルギー値の平均値は、
第2の順序で第1の画像の直前に位置決めされた、複数の有効な画像のうちの、前の有効な画像、および
第2の順序で第1の画像の直後に位置決めされた、複数の有効な画像のうちの、後の有効な画像
の各々の対応する第1のエネルギー値の平均値より大きい、と判定し、
動作を行うために、プロセッサはデバイス論理を実行して、複数の画像の取り込みを停止するようカメラを制御する。
【００７９】
例20は例15、例16、例17、例18、および/または例19のいずれかの主題を含み、
スピーカをさらに含み、
複数の画像を受け取るために、プロセッサはデバイス論理を実行して、
モバイル機器の1つまたは複数の状態を判定し、
複数の画像のうちの1つまたは複数を取り込むためにモバイル機器のユーザがモバイル機器を位置決めするのを支援する、1つまたは複数の状態に基づく1つまたは複数の聴覚的合図を生成し、
スピーカを介して1つまたは複数の聴覚的合図を出力する。
【図１】
2018524623.tif 000004
【図２】
2018524623.tif 000005
【図３】
2018524623.tif 000006
【図４】
2018524623.tif 000007
【図５】
2018524623.tif 000008
【図６】
2018524623.tif 000009
【図７】
2018524623.tif 000010
【図８】
2018524623.tif 000011
【図９】
2018524623.tif 000012
【国際調査報告】
2018524623.tif 000013