(57)【特許請求の範囲】
【請求項１】
傾斜画像の社会的な基準の補正のためのコンピュータ実装方法であって、
（ａ）  画像を受信することと、
（ｂ）  該画像をランダムな角度で回転させることと、
（ｃ）  少なくとも１人のユーザが該画像を回転させて該画像を水平にすることを要求することであって、該回転は、個別のユーザ提案角度を表す、ことと、
（ｄ）  各ユーザの該個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定することと、
（ｅ）  通信ネットワークを介して、補正角度に対応する信号を伝送することであって、該補正角度は、該ランダムな角度および該集合的なユーザ提案角度に基づく、ことと
を含む、コンピュータ実装方法。
【請求項２】
（ｆ）  ステップ（ｂ）の後、かつステップ（ｃ）の前に、前記画像をマスキングすることをさらに含む、請求項１に記載のコンピュータ実装方法。
【請求項３】
ステップ（ｆ）は、前記画像の丸い切り抜きを作成することを含み、該丸い切り抜きは、該画像の各境界線およびエッジを隠す、請求項２に記載のコンピュータ実装方法。
【請求項４】
ステップ（ｄ）は、
（ｉ）  共通角度を決定することであって、前記少なくとも１人のユーザは、前記画像を、角度の範囲内の個別のユーザ提案角度で回転させ、該共通角度は、該範囲内である、ことと、
（ｉｉ）  該共通角度および前記ランダムな角度を合計することと、
（ｉｉｉ）  該合計がゼロでない場合、前記集合的なユーザ提案角度を該共通角度に設定することと
を含む、請求項１に記載のコンピュータ実装方法。
【請求項５】
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させたユーザの数に基づいて、前記共通角度を決定することを含み、該数は、所定の閾値を超える、請求項４に記載のコンピュータ実装方法。
【請求項６】
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させた前記ユーザの過半数に基づいて、前記共通角度を決定することを含む、請求項４に記載のコンピュータ実装方法。
【請求項７】
前記補正角度は、前記ランダムな角度および前記集合的なユーザ提案角度の合計である、請求項１に記載のコンピュータ実装方法。
【請求項８】
画像を受信するように構成され、該画像をランダムな角度で回転させるように構成されている画像回転装置と、
該画像を表示するように構成され、少なくとも１人のユーザが該画像を回転させて該画像を水平にすることを要求するように構成されている、該画像回転装置に連結される画像表示装置であって、該回転は、個別のユーザ提案角度を表す、画像表示装置と、
各ユーザの該個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定するように構成され、該集合的なユーザ提案角度および該ランダムな角度に基づいて、補正角度を計算するように構成されている、該画像表示装置および該画像回転装置に連結される画像角度計算機と
を備えている、システム。
【請求項９】
前記補正角度による前記画像の回転を提案するように構成されている、前記画像角度計算機に連結される画像レポジトリをさらに備えている、請求項８に記載のシステム。
【請求項１０】
前記画像をマスクするように構成されている、前記画像回転装置および前記画像表示装置に連結される画像マスク装置をさらに備えている、請求項８に記載のシステム。
【請求項１１】
前記画像マスク装置は、前記画像の丸い切り抜きを作成するように構成され、該丸い切り抜きは、該画像の各境界線およびエッジを隠す、請求項１０に記載のシステム。
【請求項１２】
前記画像角度計算機は、
共通角度を決定するように構成されている角度分析装置であって、前記少なくとも１人のユーザのうちの少なくとも１人は、前記画像を、該共通角度の境界を示す所定範囲内の個別のユーザ提案角度で回転させる、角度分析装置と、
該共通角度および前記ランダムな角度を合計するように構成されている、該角度分析装置に連結される角度合計装置と、
該合計がゼロでない場合、前記集合的なユーザ提案角度を該共通角度に設定するように、かつ補正角度を計算するように構成されている、該角度合計装置に連結される補正角度計算機であって、該補正角度は、該ランダムな角度および該集合的なユーザ提案角度の合計である、補正角度計算機と
を備えている、請求項８に記載のシステム。
【請求項１３】
前記角度分析装置は、前記角度の範囲内で前記画像を回転させたユーザの数に基づいて、前記共通角度を決定するように構成され、該数は、所定の閾値を超える、請求項１２に記載のシステム。
【請求項１４】
前記角度分析装置は、前記角度の範囲内で前記画像を回転させたユーザの過半数に基づいて、前記共通角度を決定するように構成されている、請求項１２に記載のシステム。
【請求項１５】
傾斜画像を自動的に水平にするための、コンピュータ実装方法であって、
（ａ）  画像を受信することと、
（ｂ）  該画像をランダムな角度で回転させることと、
（ｃ）  少なくとも１人のユーザが該画像を回転させて該画像を水平にすることを要求することであって、該回転は、個別のユーザ提案角度を表す、ことと、
（ｄ）  各ユーザの該個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定することと、
（ｅ）  補正角度を計算することであって、該補正角度は、該ランダムな角度および該集合的なユーザ提案角度に基づく、ことと
（ｆ）  該補正角度を使用して該画像を自動的に水平にすることであって、該水平画像は、画像レポジトリに表示される、ことと
を含む、コンピュータ実装方法。
【請求項１６】
（ｇ）  ステップ（ｂ）の後、かつステップ（ｃ）の前に、前記画像をマスキングすることをさらに含む、請求項１５に記載のコンピュータ実装方法。
【請求項１７】
ステップ（ｇ）は、前記画像の丸い切り抜きを作成することを含み、該丸い切り抜きは、前記画像の各境界線およびエッジを隠す、請求項１６に記載のコンピュータ実装方法。
【請求項１８】
ステップ（ｄ）は、
（ｉ）  共通角度を決定することであって、前記ユーザのうちの少なくとも１人は、前記画像を、角度の範囲内の個別のユーザ提案角度で回転させて、前記共通角度は、該範囲内である、ことと、
（ｉｉ）  該共通角度および前記ランダムな角度を合計することと、
（ｉｉｉ）  該合計がゼロでない場合、前記集合的なユーザ提案角度を該共通角度に設定することと
を含む、請求項１５に記載のコンピュータ実装方法。
【請求項１９】
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させたユーザの数に基づいて、前記共通角度を決定することを含み、該数は、所定の閾値を超える、請求項１８に記載のコンピュータ実装方法。
【請求項２０】
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させたユーザの過半数に基づいて、前記共通角度を決定することを含む、請求項１８に記載のコンピュータ実装方法。
【請求項２１】
前記補正角度は、前記ランダムな角度および前記集合的なユーザ提案角度の合計である、請求項１５に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（発明の分野）
本発明は、デジタル画像処理に関する。
【背景技術】
【０００２】
（背景）
ユーザは、あらゆるズームレベルで、かつあらゆるアングルからデジタル写真を撮影する。時には、これらのデジタル写真は、対象物が直立して見えるように撮影される。ある場合には、これは意図的であり、他の場合には、これは意図的ではない。ユーザはまた、デジタルソフトコピーを作成するために、アナログおよび／またはデジタルアイテムをスキャンする。ここでも、時には意図せず、アナログおよび／またはデジタルアイテムは、わずかに傾斜してスキャンされる。
【０００３】
ユーザによって所望される場合、これらの傾斜デジタル画像を自動的に水平にするように、画像処理技術が使用できる。しかしながら、場合によっては、画像処理技術は、どれが直立しているか、または直立すべきかを解釈することが困難であるため、これらの傾斜デジタル画像を水平にすることができない。例として、画像処理技術を使用するコンピュータは、花およびその花弁の接写写真を水平にする手順を決定することが困難である場合がある。
【発明の概要】
【課題を解決するための手段】
【０００４】
（簡単な概要）
本発明の実施形態は、傾斜画像を水平にすることに関する。本発明のシステムの実施形態は、傾斜画像の社会的な基準の（ｓｏｃｉａｌｌｙ−ｂａｓｅｄ）補正を提供する。システムの実施形態は、画像回転装置と、画像表示装置と、画像角度計算機とを含む。画像回転装置は、画像を受信するように構成され、かつ画像をランダムな角度で回転させるように構成される。画像回転装置に連結される画像表示装置は、画像を表示するように構成され、かつ少なくとも１人のユーザが画像を水平にするように画像を回転させることを要求するように構成される。回転は、個別のユーザ提案角度を表す。そして最後に、画像表示装置および画像回転装置に連結される画像角度計算機は、各ユーザの個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定するように構成され、かつ集合的なユーザ提案角度およびランダムな角度に基づいて、補正角度を計算するように構成される。
【０００５】
本発明の方法の実施形態は、傾斜画像の社会的な基準の補正を提供する。方法の実施形態は、画像を受信するステップと、画像をランダムな角度で回転させるステップと、少なくとも１人のユーザが画像を水平にするように画像を回転させることを要求するステップであって、回転は個別のユーザ提案角度を表す、ステップと、各ユーザの個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定するステップと、通信ネットワーク上で補正角度を伝送するステップとを含み、補正角度は、ランダムな角度および集合的なユーザ提案角度に基づく。
【０００６】
この方式において、傾斜画像を水平にする手順に関する提案は、傾斜画像の所有者に与えられ得る。提案は、さらにコンピュータまたは画像処理技術が、画像が直立しているかどうかを解釈できないような画像に対して与えられ得る。
【０００７】
本発明は、例えば、以下の項目も提供する。
（項目１）
傾斜画像の社会的な基準の補正のためのコンピュータ実装方法であって、
（ａ）  画像を受信することと、
（ｂ）  該画像をランダムな角度で回転させることと、
（ｃ）  少なくとも１人のユーザが該画像を回転させて該画像を水平にすることを要求することであって、該回転は、個別のユーザ提案角度を表す、ことと、
（ｄ）  各ユーザの該個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定することと、
（ｅ）  通信ネットワークを介して、補正角度に対応する信号を伝送することであって、該補正角度は、該ランダムな角度および該集合的なユーザ提案角度に基づく、ことと
を含む、コンピュータ実装方法。
（項目２）
（ｆ）  ステップ（ｂ）の後、かつステップ（ｃ）の前に、前記画像をマスキングすることをさらに含む、項目１に記載のコンピュータ実装方法。
（項目３）
ステップ（ｆ）は、前記画像の丸い切り抜きを作成することを含み、該丸い切り抜きは、該画像の各境界線およびエッジを隠す、項目２に記載のコンピュータ実装方法。
（項目４）
ステップ（ｄ）は、
（ｉ）  共通角度を決定することであって、前記少なくとも１人のユーザは、前記画像を、角度の範囲内の個別のユーザ提案角度で回転させ、該共通角度は、該範囲内である、ことと、
（ｉｉ）  該共通角度および前記ランダムな角度を合計することと、
（ｉｉｉ）  該合計がゼロでない場合、前記集合的なユーザ提案角度を該共通角度に設定することと
を含む、項目１に記載のコンピュータ実装方法。
（項目５）
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させたユーザの数に基づいて、前記共通角度を決定することを含み、該数は、所定の閾値を超える、項目４に記載のコンピュータ実装方法。
（項目６）
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させた前記ユーザの過半数に基づいて、前記共通角度を決定することを含む、項目４に記載のコンピュータ実装方法。
（項目７）
前記補正角度は、前記ランダムな角度および前記集合的なユーザ提案角度の合計である、項目１に記載のコンピュータ実装方法。
（項目８）
画像を受信するように構成され、該画像をランダムな角度で回転させるように構成されている画像回転装置と、
該画像を表示するように構成され、少なくとも１人のユーザが該画像を回転させて該画像を水平にすることを要求するように構成されている、該画像回転装置に連結される画像表示装置であって、該回転は、個別のユーザ提案角度を表す、画像表示装置と、
各ユーザの該個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定するように構成され、該集合的なユーザ提案角度および該ランダムな角度に基づいて、補正角度を計算するように構成されている、該画像表示装置および該画像回転装置に連結される画像角度計算機と
を備えている、システム。
（項目９）
前記補正角度による前記画像の回転を提案するように構成されている、前記画像角度計算機に連結される画像レポジトリをさらに備えている、項目８に記載のシステム。
（項目１０）
前記画像をマスクするように構成されている、前記画像回転装置および前記画像表示装置に連結される画像マスク装置をさらに備えている、項目８に記載のシステム。
（項目１１）
前記画像マスク装置は、前記画像の丸い切り抜きを作成するように構成され、該丸い切り抜きは、該画像の各境界線およびエッジを隠す、項目１０に記載のシステム。
（項目１２）
前記画像角度計算機は、
共通角度を決定するように構成されている角度分析装置であって、前記少なくとも１人のユーザのうちの少なくとも１人は、前記画像を、該共通角度の境界を示す所定範囲内の個別のユーザ提案角度で回転させる、角度分析装置と、
該共通角度および前記ランダムな角度を合計するように構成されている、該角度分析装置に連結される角度合計装置と、
該合計がゼロでない場合、前記集合的なユーザ提案角度を該共通角度に設定するように、かつ補正角度を計算するように構成されている、該角度合計装置に連結される補正角度計算機であって、該補正角度は、該ランダムな角度および該集合的なユーザ提案角度の合計である、補正角度計算機と
を備えている、項目８に記載のシステム。
（項目１３）
前記角度分析装置は、前記角度の範囲内で前記画像を回転させたユーザの数に基づいて、前記共通角度を決定するように構成され、該数は、所定の閾値を超える、項目１２に記載のシステム。
（項目１４）
前記角度分析装置は、前記角度の範囲内で前記画像を回転させたユーザの過半数に基づいて、前記共通角度を決定するように構成されている、項目１２に記載のシステム。
（項目１５）
傾斜画像を自動的に水平にするための、コンピュータ実装方法であって、
（ａ）  画像を受信することと、
（ｂ）  該画像をランダムな角度で回転させることと、
（ｃ）  少なくとも１人のユーザが該画像を回転させて該画像を水平にすることを要求することであって、該回転は、個別のユーザ提案角度を表す、ことと、
（ｄ）  各ユーザの該個別のユーザ提案角度に基づいて、集合的なユーザ提案角度を決定することと、
（ｅ）  補正角度を計算することであって、該補正角度は、該ランダムな角度および該集合的なユーザ提案角度に基づく、ことと
（ｆ）  該補正角度を使用して該画像を自動的に水平にすることであって、該水平画像は、画像レポジトリに表示される、ことと
を含む、コンピュータ実装方法。
（項目１６）
（ｇ）  ステップ（ｂ）の後、かつステップ（ｃ）の前に、前記画像をマスキングすることをさらに含む、項目１５に記載のコンピュータ実装方法。
（項目１７）
ステップ（ｇ）は、前記画像の丸い切り抜きを作成することを含み、該丸い切り抜きは、前記画像の各境界線およびエッジを隠す、項目１６に記載のコンピュータ実装方法。
（項目１８）
ステップ（ｄ）は、
（ｉ）  共通角度を決定することであって、前記ユーザのうちの少なくとも１人は、前記画像を、角度の範囲内の個別のユーザ提案角度で回転させて、前記共通角度は、該範囲内である、ことと、
（ｉｉ）  該共通角度および前記ランダムな角度を合計することと、
（ｉｉｉ）  該合計がゼロでない場合、前記集合的なユーザ提案角度を該共通角度に設定することと
を含む、項目１５に記載のコンピュータ実装方法。
（項目１９）
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させたユーザの数に基づいて、前記共通角度を決定することを含み、該数は、所定の閾値を超える、項目１８に記載のコンピュータ実装方法。
（項目２０）
ステップ（ｉ）は、前記角度の範囲内で前記画像を回転させたユーザの過半数に基づいて、前記共通角度を決定することを含む、項目１８に記載のコンピュータ実装方法。
（項目２１）
前記補正角度は、前記ランダムな角度および前記集合的なユーザ提案角度の合計である、項目１５に記載のコンピュータ実装方法。
本発明のさらなる実施形態、特徴、および利点、ならびに本発明の種々の実施形態の構造および操作を、添付図面を参照して以下で詳細に説明する。
【０００８】
本発明の実施形態を、添付図面を参照して説明する。図面中、類似参照番号は、同一または機能的に同様の要素を示し得る。要素が最初に現れる図面は、概して、対応する参照番号における最も左の数字によって示される。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施形態による、傾斜画像を水平にするためのシステムの設計図である。
【図２】図２は、本発明の実施形態による、図１のシステムの構成要素の詳細図である。
【図３】図３は、本発明の実施形態による、図１のシステムの構成要素がどのように相互作用し得るかを示す図である。
【図４】図４は、本発明の実施形態による図１のシステムの詳細図である。
【図５】図５は、本発明の実施形態による、傾斜画像を水平にするための方法のフローチャートである。
【図６】図６は、本発明の実施形態による、例示的な画像表示装置である。
【図７】図７は、本発明の実施形態による、別の例示的な画像表示装置である。
【図８Ａ】図８Ａ〜Ｃは、本発明の実施形態による、３つの画像に対して収集された個別のユーザ提案角度に基づいて描かれたグラフの例である。
【図８Ｂ】図８Ａ〜Ｃは、本発明の実施形態による、３つの画像に対して収集された個別のユーザ提案角度に基づいて描かれたグラフの例である。
【図８Ｃ】図８Ａ〜Ｃは、本発明の実施形態による、３つの画像に対して収集された個別のユーザ提案角度に基づいて描かれたグラフの例である。
【図９】図９は、本発明の実施形態によるコンピュータシステムである。
【発明を実施するための形態】
【００１０】
（実施形態の詳細な説明）
本発明の実施形態は、傾斜画像を水平にすることに関する。これは、傾斜画像の社会的な基準の補正を含み得る。本発明は、本明細書においては特定の用途に対する例示的実施形態に関して説明されるが、本発明はそれに限定されないことを理解されたい。本明細書に提供される教示が入手可能な当業者は、その範囲内の追加の修正、用途、および実施形態、ならびに本発明が重要な有用性となる追加の分野を認識するであろう。以下の項では、傾斜画像を水平にするためのシステムおよび方法を説明する。
【００１１】
（システム）
本項は、傾斜画像を水平にするために好適なシステムを説明する。本明細書では、「傾斜画像」という用語は、水平軸に沿って整列された水平方向の境界線と、縦軸に沿って整列された縦方向の境界線とを有するが、水平軸または縦軸に沿って明確に整列されていないかもしれない景色を含有する、画像を言う。図１は、本発明の実施形態による、傾斜画像を水平にするためのシステムの基本設計概念図である。図１は、システム１００を示す。システム１００は、１つ以上のネットワーク１２０によって連結される、クライアント１１０ａ〜ｎ、クライアント１１４、サーバ１５０、サーバ１５１、および画像データベース１６０を含む。本明細書では、「データベース」という用語は、表データベース、階層データベース、ネットワークデータベース、関係型データベース、次元型データベース、および／またはオブジェクトデータベースを含むが、これらに限定されない。
【００１２】
クライアント１１０ａ〜ｎおよび１１４、サーバ１５０および１５１、ならびに画像データベース１６０の各々は、コンピューティングデバイス上に実装され得る。そのようなコンピューティングデバイスとして、パーソナルコンピュータ、携帯電話機等のモバイルデバイス、ワークステーション、埋め込み型システム、ゲーム機、テレビ、セットトップボックスが挙げられ得るが、これらに限定されない。そのようなコンピューティングデバイスとして、命令の実行および格納のためのプロセッサおよびメモリを有するデバイスが挙げられてもよいが、これに限定されない。そのようなコンピューティングデバイスは、ソフトウェア、ファームウェア、ハードウェア、またはこれらの組み合わせを含み得る。ソフトウェアは、１つ以上のアプリケーションおよびオペレーティングシステムを含み得る。ハードウェアは、プロセッサ、メモリ、およびグラフィカルユーザインターフェースディスプレイを含み得るが、これらに限定されない。
【００１３】
クライアント１１０ａ〜ｎおよび１１４、サーバ１５０および１５１、ならびに画像データベース１６０は、同じまたは異なる場所にある１つ以上のコンピューティングデバイス上に実装され得る。例えば、クライアント１１０ａ〜ｎおよび１１４、サーバ１５０および１５１、ならびに画像データベース１６０は、ネットワーク１２０等のネットワークに連結される異なるコンピューティングデバイス上にあって相互に遠隔であり得る。さらに別の実施例において、サーバ１５０および１５１、ならびに画像データベース１６０は、共通の場所にある１つ以上のコンピューティングデバイス上に実装され、ネットワーク１２０上で遠隔のクライアント１１０ａ〜ｎおよび１１４に連結され得る。この説明を所与として当業者には明らかであるように、クライアント１１０ａ〜ｎおよび１１４、サーバ１５０および１５１、ならびに画像データベース１６０を配置するための他の組み合わせおよび構成が使用され得る。
【００１４】
ネットワーク１２０は、データ通信を担うことができる任意のネットワークまたはネットワークの組み合わせであり得る。そのようなネットワーク１２０は、ローカルエリアネットワーク、中域ネットワーク、およびインターネット等の広域ネットワークを含み得るが、それらに限定されない。ネットワーク１２０は、ワールドワイドウェブプロトコルおよび／またはサービスを含むがそれらに限定されない、プロトコルおよび技術をサポートすることができる。特定の用途または環境に応じて、中間ウェブサーバ、ゲートウェイ、または他のサーバが、システム１００の構成要素の間に提供され得る。
【００１５】
一つの例示的な実施形態において、クライアント１１０ａ〜ｎおよび１１４は、それぞれ、ブラウザ１１１ａ〜ｎおよび１１５を含む。例えば、ブラウザ１１１ａ〜ｎおよび１１５は、コンテンツを閲覧するためのウェブブラウザまたは他の種類のブラウザであり得る。ブラウザ１１１ａ〜ｎおよび１１５は、リクエストをネットワーク１２０上でサーバ１５０および１５１等のサーバのうちの１つ以上へ送信し、サーバ１５０および１５１等のサーバのうちの１つ以上から応答を受信することができる。例としてであって限定ではなく、リクエストは、ハイパーテキスト転送プロトコル（ＨＴＴＰ）リクエストであり得る。ＨＴＴＰリクエストは、ユーザインターフェースを使用して、ユーザによって入力されるパラメータを含み得る。応答は、ＨＴＴＰ応答であり得る。ＨＴＴＰ応答は、ハイパーテキストマークアップ言語（ＨＴＭＬ）、画像、ビデオまたはマルチメディアコンテンツ等のウェブコンテンツを含み得る。
【００１６】
サーバ１５０および１５１の各々は、ウェブサーバを含んでもよく、または、同じまたは異なる場所にあるウェブサーバと通信するように連結され得る。ウェブサーバは、ＨＴＴＰ応答を用いてＨＴＴＰリクエストに応答する、ソフトウェアコンポーネントである。例示的な実施例として、ウェブサーバは、アパッチＨＴＴＰサーバ、アパッチトムキャット、ＭＩＣＲＯＳＯＦＴインターネットインフォメーションサーバ、ＪＢＯＳＳアプリケーションサーバ、ＷＥＢＬＯＧＩＣアプリケーションサーバ、またはＳＵＮ  ＪＡＶＡ（登録商標）システムウェブサーバであり得るが、これらに限定されない。ウェブサーバは、ＨＴＴＰリクエストに応答してコンテンツを生成する、ウェブアプリケーションを含み得る。ウェブサーバは、生成されたコンテンツをパッケージ化し、コンテンツをＨＴＴＰ応答の形でクライアントにサービスし得る。そのようなコンテンツは、ＨＴＭＬ、拡張可能マークアップ言語（ＸＭＬ）、ドキュメント、ビデオ、画像、マルチメディア機能、またはこれらの任意の組み合わせを含み得る。これらの例は、厳密に説明のためであって、本発明を制限しない。
【００１７】
実施形態によると、サーバ１５０は、画像整列装置１７０を含む。自動的に、またはユーザが要求したときに、画像整列装置１７０は、画像データベース１６０から選択された画像の傾斜を水平にするために必要な角度を計算する。
【００１８】
実施形態によると、サーバ１５１は、画像レポジトリ１８０を含む。画像レポジトリ１８０は、例えば、選択された画像等の画像を共有、表示、および／または格納するために使用される任意のウェブベースまたはデスクトップベースのアプリケーションであり得る。例としてであって、限定ではなく、画像レポジトリ１８０は、Ｇｏｏｇｌｅによるピカサウェブアルバムであり得る。図３を参照して以下に詳細を説明するように、画像整列装置１７０は、画像レポジトリ１８０によって管理されるいずれの傾斜画像をも水平にするよう角度を提供するように、画像レポジトリ１８０と通信し得る。
【００１９】
画像データベース１６０は、デジタル画像および／またはデジタルビデオを格納する。画像データベース１６０は、デジタル画像および／またはデジタルビデオを画像整列装置１７０および／または画像レポジトリ１８０へ供給し得る。実施形態において、画像整列装置１７０および／または画像レポジトリ１８０は、必要に応じて画像データベース１６０内のデジタル画像および／またはデジタルビデオを修正するように構成され得る。
【００２０】
ブラウザ１１１ａ〜ｎおよび１１５、画像整列装置１７０、ならびに画像レポジトリ１８０は、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせとして実装され得る。
【００２１】
図２は、本発明の実施形態による、図１のシステム１００の構成要素の詳細図である。図２に示されるように、クライアント１１０ａ〜ｎは、サーバ１５０と通信してもよく、サーバ１５０は、画像データベース１６０と通信し得る。代替実施形態において、図示されないが、画像データベース１６０は、サーバ１５０の中のメモリ内に存在する。前述のように、この通信は、インターネット等の１つ以上のネットワーク１２０上で発生し得る。
【００２２】
画像整列装置１７０は、画像回転装置２１０、画像マスク装置２２０、画像表示装置２３０、および画像角度計算機２４０を含む。画像回転装置２１０は、デジタル画像またはデジタルビデオのフレームを取り込み、ランダムに選択された角度でそれを回転させるように構成される。デジタル画像またはフレームは、ゼロと３６０度との間で時計回りまたは反時計回りに回転させられてもよい。実施形態において、選択されたデジタル画像またはフレームは、未知の角度で以前に傾斜されている。デジタル画像またはフレームは、ランダムに選択された角度でさらに傾斜される。未知の角度で本来傾斜していたデジタル画像またはフレームを識別するように、画像処理技術が使用され得ることに注意する。
【００２３】
画像マスク装置２２０は、回転デジタル画像またはフレームを取り込み、それをマスクするように構成される。実施形態において、このマスキングは、デジタル画像またはフレームの丸い切り抜きを作成するステップを含んでもよく、丸い切り抜きは、デジタル画像またはフレームの境界線およびエッジを隠す。この方式において、マスク付きデジタル画像またはフレームを視認するユーザは、デジタル画像またはフレームを水平にする、または整列するように求められた場合、本来の境界によって影響されることがない。本明細書では、「水平にする」という用語は、画像を正しく配向することを言う。代替実施形態において、マスクは、楕円形または任意の多角形形状であり得る。画像マスク装置２２０は、デジタル画像またはフレームの寸法に基づいて、デジタル画像またはフレームの切り抜きを作成するために使用されるマスクのサイズを決定し得る。本来のデジタル画像またはフレームは永久的にクロップされないことに注意する。また、マスキングは、画像回転装置２１０がデジタル画像またはフレームを回転させる前に実施され得ることに注意する。以下に詳細を説明するように、マスキングは一時的である。
【００２４】
画像表示装置２３０は、１つ以上の、回転され、マスクされたデジタル画像および／またはフレームを１人以上のユーザに表示するように構成される。画像表示装置２３０は、デジタル画像および／またはフレームを表示する能力を有する任意のアプリケーションに組み込まれてもよい。画像表示装置２３０はまた、デジタル画像および／またはフレームを表示する能力を有するスタンドアロン型アプリケーションであり得る。代替実施形態において、図示されないが、画像表示装置２３０は、１つ以上のクライアント１１０ａ〜ｎの中に存在するデスクトップ型アプリケーションであり得る。いずれの実施形態においても、画像表示装置２３０は、各ユーザが、どの傾斜も排除するように、各表示されたデジタル画像またはフレームを回転させることを要求する。画像表示装置２３０は、各ユーザが各デジタル画像またはフレームを回転させる角度を記録する。画像表示装置２３０の実施例は、図６を参照して以下に提供する。
【００２５】
画像角度計算機２４０は、デジタル画像またはフレームに対して画像表示装置２３０によって記録される角度、および画像回転装置２１０によって選択されるランダムな角度を使用して、本来の傾斜デジタル画像またはフレームを水平にするために使用される補正角度を計算するように構成される。画像角度計算機２４０は、図４を参照して以下に詳細を説明する。
【００２６】
実施形態において、画像レポジトリ１８０は、画像角度計算機２４０によって計算される角度を使用して、本来のデジタル画像またはフレームに１つ以上の補正を提案し得る。この提案は、例えば、ネットワーク１２０等の任意の通信ネットワーク上で、デジタル画像またはフレームの所有者へ送信され得る。同様に、所有者が、デジタル画像またはフレームにアクセスするとき、補正が通知され得る。別の実施形態において、画像レポジトリ１８０は、画像角度計算機２４０によって計算される角度を使用して、本来のデジタル画像またはフレームを自動的に水平にし得る。
【００２７】
この方式において、画像整列装置１７０は、傾斜デジタル画像またはフレームを水平にする手順に関する提案を提出し、適切な補正が行われたかどうかを示すように、複数のユーザからのフィードバックを使用することができる。画像整列装置１７０はまた、傾斜デジタル画像および／またはフレームの自己補正を導くように、フィードバックを使用することができる。
【００２８】
画像回転装置２１０、画像マスク装置２２０、画像表示装置２３０、および画像角度計算機２４０は、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせとして実装され得る。
【００２９】
代替実施形態において、図示されないが、画像整列装置１７０は、クライアント１１４等のクライアントの中に含まれ得る。
【００３０】
図３は、本発明の実施形態による、図１のシステム１００の構成要素がどのように相互作用し得るかを示す図である。実施形態において、自動的に、またはクライアント１１０ａ〜ｎのうちのいずれかのリクエストの際に、画像回転装置２１０は、画像データベース１６０から本来の画像３０２を受信する。本来の画像３０２は、デジタル画像またはデジタルビデオのフレームであり得る。本来の画像３０２は、画像回転装置２１０によって未知の角度で傾斜し得る。
【００３１】
画像回転装置２１０は、本来の画像３０２をランダムな角度３０４で回転させる。実施形態において、ランダムな角度３０４は、ゼロ以上３６０度以下である。回転画像３０６を表す、この本来の画像３０２の回転は、画像マスク装置２２０へ送信され、一方で、ランダムな角度３０４は、画像角度計算機２４０へ送信される。
【００３２】
画像マスク装置２２０は、図２を参照して上述したように、回転画像３０６を取り込み、マスキングを実施する。マスク画像３０８によって表される、マスク付き回転画像３０６は、画像表示装置２３０へ送信される。
【００３３】
代替実施形態において、図示されないが、本来の画像３０２は、画像マスク装置２２０へ送信される。上述のように、画像マスク装置２２０は、そのマスキングを実施し、マスク付き画像を画像回転装置２１０へ送信するので、マスク付き画像が回転し得る。画像回転装置２１０は、次いで、マスク付き回転画像を画像表示装置２３０へ送信する。
【００３４】
画像回転装置２１０および画像マスク装置２２０は、いくつかの画像を回転およびマスクしてもよく、同時に画像表示装置２３０は、各回転してマスクされた画像を集積し、表示する。簡素化のために、システム１００は、本明細書では、１つの画像が分析される場合において説明される。図２を参照して上述したように、画像表示装置２３０は、ブラウザ１１１ａ〜ｎを通して、画像を水平にするリクエスト３１０を１つ以上のクライアント１１０ａ〜ｎへ送信し、ユーザがマスク付き画像３０８を回転することを可能にするために必要なツールを提供する。実施形態において、各ブラウザ１１１ａ〜ｎは、個別のユーザ提案角度３１２を画像表示装置２３０へ送信する。個別のユーザ提案角度３１２は、個別のユーザがマスク付き画像３０８を回転させる角度を表す。例として、ブラウザ１１１ａ〜ｎとサーバ１５０との間で、個別のユーザ提案角度３１２は、ブラウザ１１１ａ〜ｎによって生成されるＨＴＴＰパラメータであり得る。実施例において、各ユーザは、マスク付き画像３０８を回転させる適切な角度を選択し、提出ボタンを押し得る。これによって、各ブラウザ１１１ａ〜ｎが、ＨＴＴＰパラメータとして個別のユーザ提案角度３１２を含む、ＨＴＴＰリクエストを生成するように起動する。この実施例は、例示に過ぎず、制限を目的としない。
【００３５】
実施形態において、画像表示装置２３０は、個別のユーザ提案角度３１２を画像角度計算機２４０へ送信する。加えて、画像角度計算機２４０は、画像回転装置２１０からランダムな角度３０４を受信し得る。個別のユーザ提案角度３１２およびランダムな角度３０４を使用して、画像角度計算機２４０は、本来の画像３０２が補正角度３１４で回転させられている場合、本来の画像３０２を水平にする補正角度３１４を計算する。補正角度３１４を決定するために必要な計算および条件は、図４を参照して以下に詳細を説明する。
【００３６】
補正角度３１４は、ネットワーク１２０を経由して伝送される１つ以上の信号の形で、画像レポジトリ１８０へ送信される。上述のように、画像レポジトリ１８０は、本来の画像３０２を補正角度３１４で回転させられることを、本来の画像３０２の所有者に提案し得る。代替実施形態において、画像レポジトリ１８０は、本来の画像３０２を補正角度３１４で自動的に回転し得る。
【００３７】
次項では、画像角度計算機２４０の動作を詳細に説明する。
【００３８】
図４は、画像角度計算機２４０の詳細図である。図４に示されるように、画像角度計算機２４０は、角度分析装置４１０、角度合計装置４２０、および補正角度計算機４３０を含む。画像角度計算機２４０は、本明細書ではいくつかの別個の構成要素を含むとして説明されるが、構成要素は組み合わされてもよく、例えば、３つの構成要素の機能は、単一の構成要素またはプログラム内部に存在する。このように、図４に示される個別の構成要素は、例示であって、本発明を制限することを目的としない。
【００３９】
角度分析装置４１０は、画像表示装置２３０から、個別のユーザ提案角度３１２を受信する。実施形態において、角度分析装置４１０は、個別のユーザ提案角度３１２を以前の個別のユーザ提案角度３１２に比較する。第１の実施形態において、個別のユーザ提案角度３１２が、他の以前の個別のユーザ提案角度３１２と共に、中央の角度の所定範囲内にある場合、角度分析装置４１０は、中央の角度を共通角度４０２として角度合計装置４２０へ送信する。例として、個別のユーザ提案角度３１２が、３５から４０度の範囲内にあり、他の以前の個別のユーザ提案角度３１２の少なくとも５０％が同じ範囲内にある場合、角度分析装置４１０は、３７．５度の角度を角度合計装置４２０へ送信し得る。
【００４０】
代替実施形態は、他の閾値および範囲を使用し得る。第２の実施形態において、個別のユーザ提案角度３１２が、他の以前の個別のユーザ提案角度３１２の過半数と共に、中央の角度の所定範囲内にある場合、かつ以前の個別のユーザ提案角度３１２の数が所定の値を超える場合、角度分析装置４１０は、中央の角度を共通角度４０２として角度合計装置４２０へ送信する。例として、個別のユーザ提案角度３１２が、５５から５６度の範囲内にあり、かつ他の以前の個別のユーザ提案角度３１２の少なくとも５０％が同じ範囲内にあり、５５から５６度の範囲内の他の以前の個別のユーザ提案角度３１２の数が１００を超える場合、角度分析装置４１０は、５５．５度の角度を角度合計装置４２０へ送信し得る。
【００４１】
第３の実施形態において、個別のユーザ提案角度３１２と共に、以前の個別のユーザ提案角度３１２の少なくとも所定のパーセントが、中央の角度の所定範囲内にある場合、角度分析装置４１０は、中央の角度を共通角度４０２として角度合計装置４２０へ送信する。例として、個別のユーザ提案角度３１２が、他の以前の個別のユーザ提案角度３１２の少なくとも３５％と共に、３５から４０度の範囲内にある場合、角度分析装置４１０は、３７．５度の角度を角度合計装置４２０へ送信し得る。
【００４２】
代替実施形態において、角度分析装置４１０は、所定範囲内の任意の角度を共通角度４０２として送信し得ることに注意する。また、上記の条件のうちのどれもが満たされない場合、角度分析装置４１０は、共通角度４０２を出力する前に、特定の条件が選択されるまで待機し得ることに注意する。さらに、共通角度４０２は、さらなる変更が本来の画像３０２に行われるかどうかのさらなる結果が受信されるにつれて変化し得る。
【００４３】
代替実施形態において、角度分析装置４１０は、個別のユーザ提案角度３１２を以前の個別のユーザ提案角度に比較し、最も頻度の高い個別のユーザ提案角度を角度合計装置４２０へ送信する。例えば、６０の受信された個別のユーザ提案角度のうち５６が３７．５度である場合、角度分析装置４１０は、３７．５度の値を角度合計装置４２０へ送信し得る。
【００４４】
別の代替実施形態において、角度分析装置４１０は、全ての個別のユーザ提案角度を分析し、標準偏差を計算して共通角度４０２を決定し得る。例えば、標準偏差を取ることによって、個別のユーザ提案角度が、個別のユーザ提案角度の中央値に近似する場合、中央値が共通角度４０２として設定され得る。いくつかの実施形態において、中央値から標準偏差の１倍を超える個別のユーザ提案角度は、個別のユーザ提案角度の外れ値が共通角度４０２を決定するために使用されないように、削除され得る。他の統計分析もまた、共通角度４０２を決定するために使用され得る。
【００４５】
いくつかの実施形態において、個別のユーザ提案角度の数は、共通角度４０２を決定するために必要である。そのような数は、統計的検定に基づいて計算され得る。例えば、一実施形態において、画像を補正するために収集される個別のユーザ提案角度の数を決定するために、ｔ検定が使用される。ｔ検定は、当技術分野では周知の統計的仮説検定で、集団の標本サイズを決定するために適用され得る。標本サイズを決定するための他の統計的アルゴリズムもまた使用され得る。
【００４６】
角度合計装置４２０は、共通角度４０２およびランダムな角度３０６を受信する。実施形態において、角度合計装置４２０は、共通角度４０２およびランダムな角度３０６を合計して、角度合計４０４を得る。角度合計装置４２０は、角度合計４０４を補正角度計算機４３０へ送信し得る。
【００４７】
補正角度計算機４３０は、角度合計４０４を受信し、分析する。実施形態において、補正角度計算機４３０は、角度合計４０４がゼロでないかどうかを決定する。角度合計４０４がゼロでない場合、補正角度計算機４３０は、集合的なユーザ提案角度を共通角度４０２として設定し得る。補正角度計算機４３０は、合計を補正角度３１４として画像レポジトリ１８０へ送信し得る。角度合計４０４がゼロである場合、ランダムな角度３０６は、共通角度４０２によって相殺されたので、本来の画像３０２は全く傾斜していなかったことを示し得る。この場合、補正角度計算機４３０は、補正角度３１４を全く送信しない場合がある。さらなる実施形態において、補正角度計算機４３０は、角度合計４０４が、ゼロ周辺の所定範囲内にあるかどうかを決定する。角度合計４０４が、所定範囲内である場合、補正角度計算機４３０は、角度合計４０４がゼロであるように作動する。例として、所定範囲は、５度であり得る。
【００４８】
いずれの角度も正または負の値であり得ることに注意する。実施形態において、画像が回転する方向は、角度の符号を決定する。実施形態において、画像を時計回りに回転させると、正の角度値であり得る。同様に、画像を反時計回り様式に回転させると、負の角度値であり得る。代替実施形態において、時計回りおよび反時計回りに回転させると、それぞれ、正および負の値であり得る。
【００４９】
この方式において、１人以上のユーザから収集されたデータは、画像の所有者に画像を水平にする手順に関する提案を受信することを可能にし得る。具体的には、画像の所有者は、画像の傾斜を水平にする手順に関して、社会的な基準の提案を受信し得る。これは、コンピュータまたは画像処理技術がデジタル画像またはフレームが直立しているかどうかを解釈できない場合に、特に有用であり得る。
【００５０】
（方法）
本項では、傾斜画像を水平にするために使用される方法を説明する。図５は、本発明の実施形態による、傾斜画像を水平にするための方法５００のフローチャートである。方法５００は、本発明の実施形態に関して説明されるが、方法５００は限定を目的とせず、他の用途において使用され得る。実施例において、方法５００は、図１〜３の画像レポジトリ１８０等の画像レポジトリに格納された画像に対する傾斜補正を提案するために使用され得る。しかしながら、方法５００は、画像レポジトリ１８０に制限されることを目的としない。
【００５１】
図５に示されるように、方法５００は、工程５０２で開始し、傾斜画像が受信される。実施形態において、傾斜画像は、複数の画像を格納する画像データベースから受信される。工程５０２が完了すると、方法５００は、工程５０４へ進む。
【００５２】
工程５０４で、傾斜画像は、ランダムな角度で回転させられる。工程５０４が完了すると、方法５００は、引き続き工程５０６へ進む。
【００５３】
工程５０６で、画像はマスクされる。実施形態において、このマスキングは、画像の隅を覆うステップを含む。これは、円状マスクを介して達成され得る。さらなる実施形態において、円状マスクは、本来の画像のサイズに応じてサイズが決定される。工程５０６が完了すると、方法５００は、工程５０８へ進む。
【００５４】
代替実施形態において、図示されないが、工程５０２が完了すると、方法５００は、工程５０６へ進む。そのような実施形態において、方法５００は、工程５０６が完了すると、工程５０４に続き、次いで、工程５０４が完了すると、工程５０８へ進む。
【００５５】
工程５０８で、１人以上のユーザは、画像を水平にするように求められる。実施形態において、これは、図２〜３の画像表示装置２３０等の画像表示装置を介して達成され得る。画像表示装置は、１人以上のユーザが、画像と共に他の画像を回転させることを要求し得る。工程５０８が完了すると、方法５００は、工程５１０へ進む。
【００５６】
工程５１０で、共通角度が決定される。実施形態において、共通角度は、１人以上のユーザのうちの過半数が、共通角度の所定範囲内にある角度で画像を回転させる、角度であり得る。別の実施形態において、共通角度は、１人以上のユーザのうちの所定の人数が、共通角度の所定範囲内にある角度で画像を回転させる、角度であり得る。また別の実施形態において、共通角度は、画像を回転させるためにほとんどのユーザによって使用される角度であり得る。工程５１０が完了すると、方法５００は、引き続き工程５１２へ進む。
【００５７】
工程５１２で、共通角度およびランダムな角度が合計される。工程５１２が完了すると、方法５００は、工程５１４へ進む。
【００５８】
工程５１４で、合計がゼロに等しいかどうかを決定するための確認が実施される。合計がゼロである場合、方法５００は工程５０８に戻る。合計がゼロでない場合、方法５００は工程５１６に続く。
【００５９】
工程５１６で、補正角度は、合計に等しく設定される。実施形態において、補正角度は、画像の傾斜が補正され得る角度を画像の所有者に提案するために使用され得る。工程５１６が完了すると、方法５００は終了する。
【００６０】
工程５０２、５０４、５０６、５０８、５１０、５１２、５１４、および５１６は、ソフトウェア、ハードウェア、ファームウェア、またはこれらの任意の組み合わせとして実装され得る。
【００６１】
（例）
図６は、本発明の実施形態による例示的な画像表示装置である。図６に示されるように、画像表示装置６００は、画像６０２ａ〜ｃおよびスライダ６０４ａ〜ｃを含み得る。画像表示装置は、図２〜３の画像表示装置２３０の例であり得ることに注意する。画像表示装置６００は、クライアント上のブラウザ内に表示し得る。実施形態において、画像６０２ａ〜ｃは、既にマスクされ、ランダムに回転されている。円形状のマスクが使用されているが、任意の種類の多角形状マスクが好適であっても良いことに注意する。
【００６２】
スライダ６０４ａ〜ｃは、各画像６０２ａ〜ｃそれぞれを回転させるために使用され得る。実施形態において、各スライダ６０４ａ〜ｃは、左から右へゼロから３６０度の範囲で、各画像６０２ａ〜ｃは、時計回りに回転する。代替実施形態において、各画像６０２ａ〜ｃは、反時計回りに回転し得る。さらなる代替実施形態において、画像６０２ａ〜ｃのうちのいくつかは時計回りに回転してもよく、一方で他は反時計回りに回転し得る。また、図６に示される以外にさらに画像およびスライダが表示されても良いことに注意する。
【００６３】
ユーザは、各画像６０２ａ〜ｃを回転させるように要求されてもよく、画像表示装置６００は、各画像６０２ａ〜ｃが回転する角度を保存し、提出ボタンまたはその同等物が押されると、伝送する。
【００６４】
図７は、本発明の実施形態による、別の例示的な画像表示装置である。図７に示されるように、画像７１０は、モバイルデバイス７００上に表示される。ユーザは、画像自体を回転させることができる。モバイルデバイス７００を使用して、ユーザは、ディスプレイがタッチ画面である場合、自分の指を使用し、画像７１０を回転させ得る。この直接操作方法は、より直感的で、相対的運動（例えば、指でつつき、持ち上げてから、再びつつく）を可能にする。
【００６５】
図８Ａ〜Ｃは、本発明の実施形態による、３つの画像に対して収集された個別のユーザ提案角度に基づいて描かれたグラフの例である。図８Ａにおいて、傾けて撮影された画像８１２に対するグラフ８１０は、ユーザが平均で６０度の角度を推定していることを示す。標準偏差は、データが中央値（または平均角度）に近似することを示す。したがって、画像８１２は、画像８１２を６０度回転させることによって、高い信頼性をもって補正され得る。図８Ｂにおいて、画像８２２に対するグラフ８２０は、中央値の角度が正確な調整であることに対してより低い信頼性を示す。図８Ｃにおいて、画像８３２に対するグラフ８３０によると、標準偏差の２倍を超える個別のユーザ提案角度は、補正角度を決定する際に削除され得る。これは、約７０度の個別のユーザ提案角度を表すデータポイント８３４によって例示される。
【００６６】
（コンピュータシステム）
本発明は、ハードウェア、ソフトウェア、またはこれらの組み合わせを使用して実装されてもよく、コンピュータシステムまたは他の処理システムの中に実装され得る。ハードウェア、ソフトウェア、または組み合わせは、図４のモジュールのうちのいずれも、および／または図５のいずれの工程も具現化することができる。実施形態において、本発明は、本明細書において説明される機能性を実行することが可能であるコンピュータシステム上で実行するコンピュータプログラム製品に関する。これは、システム１００のサーバおよび／またはクライアントのうちのいずれにも適用する。コンピュータシステム９００の実施例は、図９に示される。コンピュータシステム９００は、プロセッサ９０４等の１つ以上のプロセッサを含む。プロセッサ９０４は、通信バス９０６へ接続される。この例示的なコンピュータシステムに関して多様なソフトウェアの実施形態が説明される。本説明を一読後、当業者には、他のコンピュータシステムおよび／またはコンピュータ基本概念設計を使用して、本発明を実装する手順が明らかであろう。
【００６７】
コンピュータシステム９００はまた、メインメモリ９０８、好ましくはランダムアクセスメモリ（ＲＡＭ）を含み、二次メモリ９１０も含み得る。二次メモリ９１０は、例えば、ハードディスクドライブ９１２および／またはフロッピー（登録商標）ディスクドライブ、磁気テープドライブ、光ディスクドライブ等を表す、取り外し可能ストレージドライブ９１４を含み得る。取り外し可能ストレージドライブ９１４は、周知の様式において、取り外し可能ストレージユニット９１８から読み取る、および／または書き込む。取り外し可能ストレージユニット９１８は、磁気テープ、光ディスク、メモリカード等を表し、取り外し可能ストレージドライブ９１４によって読み取られ、書き込まれる。明らかであるように、取り外し式ストレージユニット９１８は、その中に格納されたコンピュータソフトウェアおよび／またはデータを有するコンピュータ使用可能ストレージ媒体を含む。
【００６８】
代替実施形態において、二次メモリ９１０は、コンピュータプログラムまたは他の命令がコンピュータシステム９００にロードされることを可能にするための他の類似の手段を含み得る。そのような手段は、例えば、取り外し式ストレージユニット９２２およびインターフェース９２０を含み得る。そのような例として、取り外し式メモリチップ（ＥＰＲＯＭ、またはＰＲＯＭ等）および関連ソケット、ならびに、ソフトウェアおよびデータが取り外し式ストレージユニット９２２からコンピュータシステム９００へ転送されることを可能にする、他の取り外し式ストレージユニット９２２およびインターフェース９２０が挙げられる。
【００６９】
コンピュータシステム９００はまた、通信インターフェース９２４を含み得る。通信インターフェース９２４は、コンピュータシステム９００が外部および／または遠隔のデバイスと通信することを可能にする。例えば、通信インターフェース９２４は、ソフトウェアおよびデータが、コンピュータシステム９００と外部デバイスとの間で転送されることを可能にする。通信インターフェース９２４はまた、コンピュータシステム９００が、ＬＡＮ、ＷＡＮ、インターネット等の通信ネットワーク上で通信することも可能にする。通信インターフェース９２４は、ワイヤまたはワイヤレス接続を介して、遠隔の場所またはネットワークとインターフェースし得る。通信インターフェース９２４の実施例として、モデム、ネットワークインターフェース（イーサネット（登録商標）カード等）、通信ポート、ＰＣＭＣＩＡスロットおよびカード等が挙げられてもよい。コンピュータシステム９００は、通信ネットワーク９２４を介して、データおよび／またはコンピュータプログラム製品を受信する。通信インターフェース９２４を介して転送されるソフトウェアおよびデータは、通信インターフェース９２４によって受信されることが可能な電子、電磁、光学、または他の信号であり得る、信号９２８の形である。信号９２８は、通信経路（つまり、チャネル）９２６を介して通信インターフェース９２４に提供される。このチャネル９２６は、信号９２８を運び、ワイヤまたはケーブル、光ファイバ、電話線、携帯電話リンク、ＲＦリンクおよび他のワイヤまたはワイヤレス通信チャネルを使用して実施され得る。
【００７０】
本明細書において、「コンピュータプログラム媒体」および「コンピュータ使用可能媒体」という用語は、概して、取り外し式ストレージドライブ９１４、およびハードディスクドライブ９１２にインストールされたハードディスク等の媒体を指すために使用される。これらのコンピュータプログラム製品は、コンピュータシステム９００にソフトウェアを提供するための手段である。
【００７１】
コンピュータプログラム（コンピュータ制御ロジックとも呼ばれる）は、メインメモリ９０８および／または二次メモリ９１０内に格納される。コンピュータプログラムはまた、信号９２８および通信インターフェース９２４を介して受信され得る。そのようなコンピュータプログラムは、実行されるとき、コンピュータシステム９００が本明細書において説明される本発明の機能を実施することを可能にする。特に、コンピュータプログラムは、実行されるとき、プロセッサ９０４が本発明の機能を実施することを可能にする。したがって、そのようなコンピュータプログラムは、コンピュータシステム９００のコントローラを表す。
【００７２】
本発明がソフトウェアを使用して実装される実施形態において、ソフトウェアは、コンピュータプログラム製品の中に格納され、取り外し式ストレージドライブ９１４、ハードディスクドライブ９１２、または通信インターフェース９２４を使用して、コンピュータシステム９００内へロードされ得る。制御ロジック（ソフトウェア）は、プロセッサ９０４によって実行されるとき、プロセッサ９０４に、本明細書において説明されるような本発明の機能を実施させる。
【００７３】
コンピュータシステム９００はまた、モニタ、キーボード、ポインティングデバイス等の入力／出力表示デバイス９３２を含む。
【００７４】
本発明は、本明細書において説明された以外のソフトウェア、ハードウェア、およびオペレーティングシステム実装で有効であり得る。本明細書において説明される機能を実施するために好適な任意のソフトウェア、ハードウェア、およびオペレーティングシステム実装が使用され得る。
【００７５】
（結論）
発明の概要および要約の項は、本発明者らによって検討されるような、本発明の全てではないが１つ以上の例示的実施形態を説明してもよく、したがって、決して本発明および添付の図面を限定することを目的としない。
【００７６】
特定機能の実装およびその関係を例証する機能的構成要素を用いて、本発明を上記で説明している。これらの機能的構成要素の境界は、説明の便宜上、本明細書では任意に画定されている。特定機能およびその関係が適切に実施される限り、代替境界を画定することができる。
【００７７】
具体的実施形態の先述の説明は、本発明の一般概念から逸脱することなく、必要以上の実験を伴わずに、当技術分野内の知識を適用することによって、他者が種々の用途についてそのような具体的実施形態を容易に修正および／または適合させることができる、本発明の一般的性質を完全に明らかにする。したがって、そのような適合および修正は、本明細書で提示される教示および指導に基づいて、開示された実施形態の同等物の意味および範囲内となることを目的とする。本明細書の用語または表現が、教示および指導に照らして当業者によって解釈されるように、本明細書の表現または用語は、限定ではなく説明の目的によるものであると理解されたい。
【００７８】
本発明の幅および範囲は、上記の例示的実施形態のうちのいずれかによって決して限定されるべきではないが、以下の請求項およびそれらの同等物のみに従って定義されるべきである。
【図１】
0005497774.tif 000002
【図２】
0005497774.tif 000003
【図３】
0005497774.tif 000004
【図４】
0005497774.tif 000005
【図５】
0005497774.tif 000006
【図６】
0005497774.tif 000007
【図７】
0005497774.tif 000008
【図８Ａ】
0005497774.tif 000009
【図８Ｂ】
0005497774.tif 000010
【図８Ｃ】
0005497774.tif 000011
【図９】
0005497774.tif 000012