(57)【要約】  幾つかの実施形態において、ビデオ画像データを圧縮するための電子機器は、ハウジング、画像センサ、メモリデバイス、及び、１つ以上のプロセッサを含む。画像センサは、画像センサに入射する光から画像データを生成できる。１つ以上のプロセッサは、画像データを変換して変換係数を取得し、変換係数を量子化し、量子化変換係数を符号化し、量子化変換係数をメモリデバイスに記憶することができる。１つ以上のプロセッサは、少なくとも、１つの変換係数が含まれる複数の範囲のうちの１つの範囲を決定し、１つの変換係数が対応する範囲内の値を決定し、第１のアルゴリズムを使用して範囲を範囲コードとして符号化し、第２のアルゴリズムを使用して値を値コードとして符号化することによって、量子化変換係数を符号化できる。【選択図】図６
2020526966.tif 000002
【特許請求の範囲】
【請求項１】
ハウジングと、
画像センサであって、該画像センサに入射する光から画像データを生成するように構成される、画像センサと、
メモリデバイスと、
１つ以上のプロセッサと、
を備え、
前記プロセッサは、
前記画像データを変換して変換係数を取得し、
前記変換係数を量子化して、第１の量子化変換係数及び前記第１の量子化変換係数とは異なる第２の量子化変換係数を含む量子化変換係数を取得し、
前記量子化変換係数を符号化して符号化係数を取得する、
ように構成され、
前記量子化変換係数は、少なくとも、
前記第１の量子化変換係数が含まれる複数の範囲のうちの第１の範囲を決定し、
前記第２の量子化変換係数が含まれる前記複数の範囲のうちの第２の範囲を決定し、
前記第１の量子化変換係数が対応する前記第１の範囲内の第１の値を決定し、
前記第２の量子化変換係数が対応する前記第２の範囲内の第２の値を決定し、
第１のアルゴリズムを使用して、前記第１の範囲を第１の範囲コードとして及び前記第２の範囲を第２の範囲コードとして符号化し、及び、
前記第１のアルゴリズムとは異なる第２のアルゴリズムを使用して、前記第１の値を第１の値コードとして及び前記第２の値を第２の値コードとして符号化する、
ことによって符号化され、
前記プロセッサは、前記符号化係数を前記メモリデバイスに記憶するように構成され、前記符号化係数は、前記第１の範囲コード、前記第２の範囲コード、前記第１の値コード、及び、前記第２の値コードを含む、
電子機器。
【請求項２】
前記第１のアルゴリズムがハフマンコードであり、前記第２のアルゴリズムがゴロムコードである、請求項１に記載の電子機器。
【請求項３】
前記１つ以上のプロセッサは、前記画像データの処理中に前記第１のアルゴリズムを変更するように構成される、請求項１に記載の電子機器。
【請求項４】
前記１つ以上のプロセッサは、前記第１のアルゴリズムを前記画像データの第１のフレームを処理することから前記画像データの第２のフレームを処理することへと変更するように構成される、請求項３に記載の電子機器。
【請求項５】
前記第２のアルゴリズムは、前記１つ以上のプロセッサによる前記画像データの処理中に一定のままである、請求項３に記載の電子機器。
【請求項６】
前記量子化変換係数は、前記第１の量子化変換係数及び前記第２の量子化変換係数とは異なる第３の量子化変換係数を含み、前記１つ以上のプロセッサは、少なくとも、
前記第３の量子化変換係数が含まれる複数の範囲のうちの第３の範囲を決定し、
前記第３の量子化変換係数が対応する前記第３の範囲内の第３の値を決定せず、及び、
前記第１のアルゴリズムを使用して、前記第３の範囲を第３の範囲コードとして符号化する、
ことによって前記量子化変換係数を符号化するように構成され、前記符号化係数が前記第３の範囲コードを含む、
請求項１に記載の電子機器。
【請求項７】
前記１つ以上のプロセッサは、離散コサイン変換を使用して前記画像データを変換するように構成される、請求項１に記載の電子機器。
【請求項８】
前記離散コサイン変換が１６×１６離散コサイン変換である、請求項７に記載の電子機器。
【請求項９】
前記１つ以上のプロセッサは、少なくとも前記量子化変換係数のＤＣ係数を前記量子化変換係数のＡＣ係数とは異なって符号化することにより前記量子化変換係数を符号化するように構成される、請求項１に記載の電子機器。
【請求項１０】
前記１つ以上のプロセッサは、前記符号化係数のためのフレームヘッダに前記第１のアルゴリズムのためのパラメータを記憶するように構成される、請求項１に記載の電子機器。
【請求項１１】
前記１つ以上のプロセッサは、前記画像データの緑ピクセルのための第１の量子化テーブルと、前記画像データの赤ピクセル及び青ピクセルのための第２の量子化テーブルとを少なくとも使用することによって前記変換係数を量子化するように構成され、前記第１の量子化テーブルが前記第２の量子化テーブルとは異なる、請求項１に記載の電子機器。
【請求項１２】
前記画像データが生モザイク画像データである、請求項１に記載の電子機器。
【請求項１３】
前記ハウジングは、前記画像センサ、前記メモリデバイス、及び、前記１つ以上のプロセッサを収容するように構成され、前記ハウジングは、携帯電話に取り外し可能に取り付けるように構成される、請求項１に記載の電子機器。
【請求項１４】
前記画像データから前記１つ以上のプロセッサにより生成されるホログラフィック画像を提示するように構成されるディスプレイを更に備える、請求項１に記載の電子機器。
【請求項１５】
電子機器を使用して画像データを符号化する方法であって、
画像センサにより、前記画像センサに入射する光から画像データを生成するステップと、
１つ以上のプロセッサにより、前記画像データを変換して変換係数を取得するステップと、
前記１つ以上のプロセッサにより、前記変換係数を量子化して、第１の量子化変換係数と前記第１の量子化変換係数とは異なる第２の量子化変換係数とを含む量子化変換係数を取得するステップと、
前記１つ以上のプロセッサにより、前記第１の量子化変換係数を含む複数の範囲のうちの第１の範囲と、前記第２の量子化変換係数を含む前記複数の範囲のうちの第２の範囲とを決定するステップと、
前記１つ以上のプロセッサにより、前記第１の量子化変換係数に対応する前記第１の範囲内の第１の値と、前記第２の量子化変換係数に対応する前記第２の範囲内の第２の値とを決定するステップと、
前記１つ以上のプロセッサにより、前記第１の範囲を第１の範囲コードとして及び前記第２の範囲を第２の範囲コードとして符号化するステップと、
前記１つ以上のプロセッサにより、前記第１の値を第１の値コードとして及び前記第２の値を第２の値コードとして符号化するステップと、
前記第１の範囲コード、前記第２の範囲コード、前記第１の値コード、及び、前記第２の値コードをメモリデバイスに記憶するステップと、
を含む方法。
【請求項１６】
前記第１及び第２の範囲を符号化する前記ステップ及び前記第１及び第２の値を符号化する前記ステップがロスレス圧縮を使用して実行される、請求項１５に記載の方法。
【請求項１７】
前記第１及び第２の範囲を符号化する前記ステップ及び前記第１及び第２の値を符号化する前記ステップが可変長符号化を使用して実行される、請求項１５に記載の方法。
【請求項１８】
前記メモリデバイスから前記第１の範囲コード、前記第２の範囲コード、前記第１の値コード、及び、前記第２の値コードを検索するステップと、
前記１つ以上のプロセッサにより、前記第１の範囲コード、前記第２の範囲コード、前記第１の値コード、及び、前記第２の値コードを復号して、前記第１の範囲、前記第２の範囲、前記第１の値、及び、前記第２の値を取得するステップと、
を更に含む、請求項１５に記載の方法。
【請求項１９】
復号された前記第１の範囲、前記第２の範囲、前記第１の値、及び、前記第２の値を使用して、前記電子機器のディスプレイ上に表示するためのホログラフィックコンテンツを生成するステップを更に含む、請求項１８に記載の方法。
【請求項２０】
前記第１の範囲及び前記第２の範囲は、ハフマンコードを使用して、前記第１の範囲コード及び前記第２の範囲コードとして符号化され、前記第１の値及び前記第２の値は、ゴロムコードを使用して、前記第１の値コード及び前記第２の値コードとして符号化される、請求項１５に記載の方法。
【請求項２１】
前記画像データを変換する前記ステップが１６×１６離散コサイン変換を使用して実行される、請求項１５に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
［関連出願の相互参照］
国内優先権主張が本出願の出願データシートで特定される任意の全ての出願は、３７ＣＦＲ１．５７の下で参照により本願に組み入れられる。
【０００２】
ハイエンドビデオキャプチャ機能は進歩し続けている。プロの撮影技師及び益々多くなる消費者は、従来のデジタルビデオカメラだけでなく、携帯電話／スマートフォン、タブレットなどを含む他のビデオカメラを備えた電子機器でも、高品質のビデオ録画機能を要求している。
【発明の概要】
【０００３】
本明細書中に記載される様々な実施形態は、圧縮された生の（例えば、ベイヤーパターンカラーフィルタアレイまたは他のタイプのカラーフィルタアレイに従ってモザイク化された）、高解像度（例えば、少なくとも２ｋ、４ｋ、６ｋ、８ｋ、１０ｋ、又は、これらの解像度レベルのいずれかの間の値の範囲）ビデオ画像データの捕捉及びオンボード記憶を可能にする画像捕捉機器に関する。圧縮された生の画像データは、圧縮及び記憶の前に特定の画像処理画像改良ステップが画像データに対して実行されないように、ビデオデータが「改良」されないという意味で「生」となり得るものである。そのようなステップは、１つ以上の補間（例えば、デベイヤーリング又は他のデモザイク解除）、カラー処理、色調処理、ホワイトバランス、及び、ガンマ補正を含み得る。例えば、圧縮された生の画像データは、モザイク処理（例えば、色補間なし、モザイく解除なし）、色処理なし、色調処理なし、ホワイトバランスなし、ガンマ補正なしのうちの１つ以上となり得る。むしろ、そのようなステップは、オフボード後処理などの記憶後まで延期することができ、それにより、カメラで特定の処理決定を「ベイクイン」するのではなく、創造的な柔軟性を維持する。
【０００４】
本明細書中に記載される画像処理及び圧縮技術は、様々な因子で実装され得る。例えば、圧縮された生の画像データの圧縮及びオンボード記憶のための本明細書に記載される技術は、一体型カメラ（或いは、フロントカメラ、リアカメラ、又は、小型フォームファクタカメラを含む複数のカメラ）を有するスマートフォンなどの比較的小さなフォームファクタ機器で実装され得る。例えば、特定の実施形態に係る処理技術は、比較的限られた電力バジェット、処理能力、及び、電子部品などを組み込むための物理的面積を有する小型フォームファクタ機器での実装に合わせて調整される。他の例において、本明細書中に記載される圧縮技術は、デジタルシネマカメラを含む比較的大きなフォームファクタカメラで実装され得る。
【０００５】
特定の態様によれば、画像捕捉機器は、生のモザイク画像データを捕捉し、生の画像データを圧縮し、画像捕捉機器のオンボードメモリに画像データを記憶するように構成され得る。
【０００６】
画像捕捉機器に存在する電子機器は、圧縮の一部として、離散コサイン変換（ＤＣＴ）又は他の変換（異なる周波数で振動する関数の和に関するデータポイントの有限シーケンスを規定する変換など）を使用して生のモザイク画像データを変換して変換係数を取得するとともに変換係数を圧縮するように構成され得る。幾つかの実施形態によれば、電子機器は、処理目的でフル画像フレームを記憶する画像フレームメモリ（例えば、ダイナミックランダムアクセスメモリ（ＤＲＡＭ））を使用せずに圧縮を実行するように構成され得る。例えば、電子機器は、画像処理チップ（例えば、特定用途向け集積回路［ＡＳＩＣ］又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ］）と一体化されるオンチップの第１のメモリ（例えば、スタティックランダムアクセスメモリ［ＳＲＡＭ］）を使用して、チップ外に位置決めされる第２のＤＲＡＭ又は他のメモリは何ら使用することなく、変換係数を圧縮できる。
【０００７】
それにもかかわらず、特定の実施形態において、電子機器はＤＲＡＭ又は他の第２のメモリオフチップを含むことができる。しかしながら、そのような実施形態のオフチップメモリは、ピクセル欠陥補正、ピクセルパターンノイズの対処などのために、生のビデオ画像データの圧縮以外の目的に使用されてもよい。これは、オフチップＤＲＡＭを使用して画像圧縮を実行するスマートフォンなどの既存の画像捕捉機器とは異なる。例えば、既存の画像捕捉機器の中には、オフチップＤＲＡＭを使用してＨ．２６４圧縮の動きベクトルを計算するものがある。本明細書中に記載される特定の実施形態は、ＤＣＴ技術を使用することにより、動きベクトルを計算したりオフチップメモリを使用したりすることなく、メモリ効率の良い圧縮を促進する。
【０００８】
フルイメージフレームメモリ（例えば、オフチップＤＲＡＭ）を使用せずに圧縮を実行すると、電力効率が向上し（一部の実施では例えば約０．５ワット（Ｗ）向上し）、これは、スマートフォンなどの小型フォームファクタ機器において特に有益である。特定の態様によれば、画像捕捉機器の電子機器は、動作中に１５Ｗ未満又は約２０Ｗ未満を消費する。
【０００９】
本明細書中に開示される特徴は、特定の実施形態において、可能な限り多くのフレームをリアルタイムで解凍する手法を提供し、２４フレーム／秒（ｆｐｓ）よりも速い速度での解凍を可能にし得る。更に、幾つかの実施において、手法は、電子機器のグラフィカル処理ユニット（ＧＰＵ）を広範囲に使用し、高画質を維持できるようにしつつ動作の大幅な並列化を可能にする。
【００１０】
幾つかの態様によれば、画像捕捉機器は、生のモザイク画像データが電子回路によって処理される（例えば、圧縮される）タイミングを制御するように構成されるクロックを含み、また、電子回路は、クロックが一定時間停止しているにもかかわらず生のモザイク画像データを正しく処理するように構成される。これは、少なくとも、リフレッシュを必要としないメモリを使用して生のモザイク画像データを電子回路で処理できるからである。
【００１１】
特定の態様によれば、画像捕捉機器は、生のモザイク画像データを変換して変換係数を取得するように構成される。機器は、変換係数を量子化して量子化係数を取得し、また、以下、すなわち、各量子化係数を複数の範囲及び複数の範囲内の値に分割すること、各量子化係数が含まれる個々の範囲に従ってそれぞれの量子化係数ごとにハフマンコードを決定すること、及び、各量子化係数が含まれる個々の範囲内の個々の値に従ってそれぞれの量子化係数ごとにゴロムコードを決定すること、のうちの１つ以上を実行することにより、量子化係数の少なくとも一部を符号化する。
【００１２】
幾つかの実施形態では、電子機器が開示される。電子機器は、ハウジング、画像センサ、メモリデバイス、及び、１つ以上のプロセッサを含む。画像センサは、画像センサに入射する光から画像データを生成できる。１つ以上のプロセッサは、画像データを変換して変換係数を取得し、変換係数を量子化して、第１の量子化変換係数と第１の量子化変換係数とは異なる第２の量子化変換係数とを含む量子化変換係数を取得し、量子化変換係数を符号化して符号化係数を取得し、符号化係数をメモリデバイスに記憶する。量子化変換係数は、少なくとも、第１の量子化変換係数が含まれる複数の範囲のうちの第１の範囲を決定し、第２の量子化変換係数が含まれる複数の範囲のうちの第２の範囲を決定し、第１の量子化変換係数が対応する第１の範囲内の第１の値を決定し、第２の量子化変換係数が対応する第２の範囲内の第２の値を決定し、第１のアルゴリズムを使用して、第１の範囲を第１の範囲コードとして及び第２の範囲を第２の範囲コードとして符号化し、及び、第１のアルゴリズムとは異なる第２のアルゴリズムを使用して、第１の値を第１の値コードとして及び第２の値を第２の値コードとして符号化することによって符号化され得る。符号化係数は、第１の範囲コード、第２の範囲コード、第１の値コード、及び、第２の値コードを含むことができる。
【００１３】
前の段落の電子機器は、以下の特徴のうちの１つ以上を含むことができる。第１のアルゴリズムがハフマンコードであり、第２のアルゴリズムがゴロムコードである。１つ以上のプロセッサは、画像データの処理中に第１のアルゴリズムを変更し得る。１つ以上のプロセッサは、第１のアルゴリズムを画像データの第１のフレームを処理することから画像データの第２のフレームを処理することへと変更することができる。第２のアルゴリズムは、１つ以上のプロセッサによる画像データの処理中に一定のままとなり得る。量子化変換係数は、第１の量子化変換係数及び第２の量子化変換係数とは異なる第３の量子化変換係数を含むことができ、また、１つ以上のプロセッサは、少なくとも、第３の量子化変換係数が含まれる複数の範囲のうちの第３の範囲を決定し、第３の量子化変換係数が対応する第３の範囲内の第３の値を決定せず、及び、第１のアルゴリズムを使用して、第３の範囲を第３の範囲コードとして符号化することによって量子化変換係数を符号化することができ、符号化係数は第３の範囲コードを含む。１つ以上のプロセッサは、離散コサイン変換を使用して画像データを変換できる。離散コサイン変換は１６×１６離散コサイン変換となり得る。１つ以上のプロセッサは、少なくとも量子化変換係数のＤＣ係数を量子化変換係数のＡＣ係数とは異なって符号化することにより量子化変換係数を符号化できる。１つ以上のプロセッサは、符号化係数のためのフレームヘッダに第１のアルゴリズムのためのパラメータを記憶することができる。１つ以上のプロセッサは、画像データの緑ピクセルのための第１の量子化テーブルと、画像データの赤ピクセル及び青ピクセルのための第２の量子化テーブルとを少なくとも使用することによって変換係数を量子化することができ、第１の量子化テーブルが第２の量子化テーブルとは異なる。画像データはモザイク画像データとなり得る。画像データは生モザイク画像データとなり得る。ハウジングは携帯電話ハウジングとなり得る、及び、携帯電話ハウジングは、画像センサ、メモリデバイス、及び、１つ以上のプロセッサをサポートできる。ハウジングは、画像センサ、メモリデバイス、及び、１つ以上のプロセッサを収容でき、また、ハウジングは携帯電話に取り外し可能に取り付けることができる。電子機器は、画像データから１つ以上のプロセッサによって生成されたホログラフィック画像を提示するように構成されるディスプレイを更に含むことができる。
【００１４】
幾つかの実施形態では、電子機器を使用して画像データを符号化する方法が開示される。方法は、画像センサにより、画像センサに入射する光から画像データを生成するステップと、１つ以上のプロセッサにより、画像データを変換して変換係数を取得するステップと、１つ以上のプロセッサにより、変換係数を量子化して、第１の量子化変換係数と第１の量子化変換係数とは異なる第２の量子化変換係数とを含む量子化変換係数を取得するステップと、１つ以上のプロセッサにより、第１の量子化変換係数を含む複数の範囲のうちの第１の範囲と、第２の量子化変換係数を含む複数の範囲のうちの第２の範囲とを決定するステップと、１つ以上のプロセッサにより、第１の量子化変換係数に対応する第１の範囲内の第１の値と、第２の量子化変換係数に対応する第２の範囲内の第２の値とを決定するステップと、１つ以上のプロセッサにより、第１の範囲を第１の範囲コードとして及び第２の範囲を第２の範囲コードとして符号化するステップと、１つ以上のプロセッサにより、第１の値を第１の値コードとして及び第２の値を第２の値コードとして符号化するステップと、第１の範囲コード、第２の範囲コード、第１の値コード、及び、第２の値コードをメモリデバイスに記憶するステップとを含むことができる。
【００１５】
前の段落の方法は、以下の特徴のうちの１つ以上を含むことができる。第１及び第２の範囲を符号化するステップ及び第１及び第２の値を符号化するステップがロスレス圧縮を使用して実行され得る。第１及び第２の範囲を符号化するステップ及び第１及び第２の値を符号化するステップが可変長符号化を使用して実行され得る。方法は、メモリデバイスから第１の範囲コード、第２の範囲コード、第１の値コード、及び、第２の値コードを検索するステップと、１つ以上のプロセッサにより、第１の範囲コード、第２の範囲コード、第１の値コード、及び、第２の値コードを復号して、第１の範囲、第２の範囲、第１の値、及び、第２の値を取得するステップとを更に含むことができる。第１の範囲及び第２の範囲は、ハフマンコードを使用して、第１の範囲コード及び第２の範囲コードとして符号化され得る、或いは、第１の値及び第２の値は、ゴロムコードを使用して、第１の値コード及び第２の値コードとして符号化され得る。画像データの変換は、１６×１６離散コサイン変換を使用して実行され得る。
【００１６】
特定の実施形態は、特定の解像度（例えば、少なくとも２ｋ又は少なくとも４ｋ）又はフレームレート（例えば、少なくとも２３フレーム／秒）に関して記載されるが、そのような実施形態は、それらのフレームレート又は解像度レベルに限定されない。例えば、実施形態に応じて（例えば、センササイズに応じて）、本明細書中に記載される圧縮生画像データのオンボード記憶のための技術は、少なくとも２ｋ、３ｋ、４ｋ、４．５ｋ、５ｋ、６ｋ、８ｋ、１０ｋ、１２ｋ、１５ｋ、２０ｋの解像度レベル、或いは、それ以上の解像度レベル、又は、前述の解像度レベルのいずれかを含めてそれらの間の解像度レベル（例えば、４ｋ及び１２ｋを含めてこれらの間）を達成することができる。同様に、実施形態に応じて、本明細書中に記載される圧縮生画像データのオンボード記憶のための技術は、少なくとも２３、２４、２５、１２０、１５０又は２４０或いはそれ以上のｆｐｓのフレームレートで或いは前述の解像度レベルのいずれかを含めてこれらの間のフレームレート（例えば２３ｆｐｓ及び１２０ｆｐｓを含めてこれらの間）で画像データを捕捉又は記憶することができる。
【図面の簡単な説明】
【００１７】
【図１Ａ】電話機の一例の上面、前面、及び、左側面の斜視図を示す。
【００１８】
【図１Ｂ】図１Ａの電話機の下面、後面、及び、右側面の斜視図を示す。
【００１９】
【図１Ｃ】例示的なカメラモジュールに取り付けるために位置決めされる図１Ａの電話機の側面図を示す。
【００２０】
【図１Ｄ】図１Ａの電話機と図１Ｃのカメラモジュールとを取り付けたときの斜視図を示す。
【００２１】
【図２】ビデオカメラの一例の斜視図を示す。
【００２２】
【図３Ａ】図１Ａの電話機、図１Ｃのカメラモジュール、又は、図２のビデオカメラなどの例示的な画像捕捉機器の構成要素を示す。
【図３Ｂ】図１Ａの電話機、図１Ｃのカメラモジュール、又は、図２のビデオカメラなどの例示的な画像捕捉機器の構成要素を示す。
【００２３】
【図４】図３Ａの画像捕捉機器などの画像捕捉機器によって実行可能な画像データを処理するための例示的なプロセスを示す。
【００２４】
【図５】プリエンファシス機能の一例を示すプロットである。
【００２５】
【図６】図３Ａの画像捕捉機器などの画像捕捉機器によって実行可能なビデオ画像データを圧縮するための例示的なプロセスを示す。
【００２６】
【図７】図１Ａの電話機などの例示的な電話機と通信する図３Ａの画像捕捉機器を示す。
【００２７】
【図８】図１Ａの電話機又は図１Ｃのカメラモジュールの構成要素の例を示す。
【００２８】
【図９Ａ】拡張モジュール及び図１Ｃのカメラモジュールに取り付けるために位置決めされる図１Ａの電話機の斜視図を示す。
【００２９】
【図９Ｂ】図１Ａの電話機、図９Ａの拡張モジュール、及び、図１Ｃのカメラモジュールが取り付けられたときの斜視図を示す。
【発明を実施するための形態】
【００３０】
Ｉ．前書き
この開示は、他の特徴の中でも、生のベイヤーデータなどのビデオ画像データを圧縮するための手法を説明する。特定の実施形態において、手法は、オンチップメモリの幾つかのラインを使用して、ＤＲＡＭのようなフレームメモリを使用せずに、ビデオ画像データの圧縮を可能にし得る。ビデオ画像データの圧縮サイズは、設定されて、個々のフレームの対象とされ、フレーム間で適合され得る。更に、手法は、ビデオ画像データを圧縮する機器に関してサイズ及び消費電力の削減を可能にするハードウェアに優しい実装をもたらすことができる。結果として、本開示の特定の特徴は、電力消費及びシステムサイズを制限しながら高品質のビデオを保存することが望ましい場合があるスマートフォンなどの比較的小型又は低電力のハンドヘルド機器にとって特に望ましくなり得る。幾つかの実施形態では、そのような技法を使用して、生ではなく完全に処理されたＹＵＶデータを圧縮することができる。
【００３１】
本明細書中に記載される電子機器は主にスマートフォンとの関連で説明される場合があるが、本開示は、デジタルスチル及びモーションカメラ、パーソナルナビゲーション機器、モバイルインターネット機器、携帯ゲーム機、或いは、機能又は他の機能のいずれか又は組み合わせを有する機器を含む、携帯電話機能を伴う又は伴わない様々な電子機器のいずれに適用できる。
ＩＩ．電子機器システムの概要
【００３２】
図１Ａは、本明細書中に記載される圧縮技術又は他の機能の１つ以上を実装し得る電話機１０の上面、前面、及び、左側面の斜視図を示している。電話機１０はスマートフォンであってもよい。電話機１０の前面は、ディスプレイ１１、カメラ１２（例えば、図示のように４つのカメラ）、第１のスピーカグリル１３Ａ、及び、第２のスピーカグリル１３Ｂ、並びに、１つ以上のマイクロフォン（図示せず）を含む。電話機１０の左側面は第１の入力１４を含む。
【００３３】
図１Ｂは、電話機１０の下面、後面、及び、右側面の斜視図を示している。電話機の下面は電源入力ポート１５を含む。電話機１０の左側面は第２の入力１６を含む。電話機１０の後面は、第２のカメラ１７（例えば、図示のように２つのカメラ）、フラッシュ１８、レーザフォーカス１９、及び、モジュールコネクタ２０を含む。
【００３４】
ディスプレイ１１は、様々なアプリケーション、機能、及び、情報を表示することができ、タッチスクリーン制御機能を組み込んでもよい。
【００３５】
第１のカメラ１２及び第２のカメラ１７のそれぞれは、本明細書に記載されるような様々な又は調整可能な解像度及びアスペクト比を伴ってビデオ画像データフレームを捕捉する機能を含む。第１のカメラ１２はそれぞれ一般に互いに同じ方向を向くことができ、また、第２のカメラ１７は一般に互いに同じ方向を向くことができる。
【００３６】
第１の入力１４及び第２の入力１６は、ボタンであってもよく、電話機１０のユーザからユーザ入力を受けることができる。第１の入力１４は、例えば、電話機１０の電源ボタンとして機能することができ、ユーザが電話機１０の電源を入れるか切るかを制御できるようにし得る。更に、第１の入力１４は、ユーザが電話機１０に或いは電話機１０又は電話機１０に結合される機器の１つ以上の機能に或いは電話機１０又は電話機１０に結合される機器に記憶されるファイルにアクセスする権限があるかどうかを電話機１０が決定できるようにする指紋センサなどのユーザ識別センサとしての機能を果たす。第１の入力１４は、機器ロック／ロック解除ボタン、写真の撮影を開始するボタン、ビデオの撮影を開始するボタン、又は、電話機１０の選択ボタンとして機能することができる。第２の入力１６は、電話機１０のための音量アップボタン及び音量ダウンボタンとして機能することができる。第１の入力１４及び第２の入力１６の機能は、ユーザによって構成及び変更され得る。更に、電話機１０の側面は、図１Ａに示されるように及びその開示全体が参照により本願に組み入れられる米国特許第９，９１７，９３５号に記載されるようにスカラップ状又は鋸歯状の縁部を含むことができる。特に、第１の入力１４が位置決めされるスカラップはセレーションを含まなくてもよいが、他のスカラップがセレーションを含んでもよく、これは、ユーザが電話機１０の２つの縁部を互いに区別するとともに第１の入力１４を第２の入力１６から区別するのに役立ち得る。
【００３７】
幾つかの実施形態において、電話機１０は、ディスプレイ１１を介する場合を除き、電話機１０の前面へのユーザ入力を受けなくてもよい。したがって、電話機１０の前面がボタンを含まなくてもよく、また、任意のボタンが電話機１０の１つ以上の側面に配置されてもよい。好適には、そのような形態は、特定の実施形態において、電話機１０の人間工学を改善し（例えば、ユーザがフロントボタンに手を伸ばす必要がないようにすることにより）、電話機１０のディスプレイ１１のために利用可能なスペースの大きさを増大させることができる。
【００３８】
モジュールコネクタ２０は、モジュールと交換可能に結合して、モジュール又はモジュールに結合される１つ以上の他の機器から電力又はデータを受信し或いはモジュール又はモジュールに結合される１つ以上の他の機器に電力又はデータを送信することができる。モジュールは、カメラ、ディスプレイ、ビデオゲームコントローラ、スピーカ、バッテリ、入出力拡張器、ライト、レンズ、プロジェクタ、及び、それらの組み合わせなどを含むことができる。更に、モジュールは、その開示全体が参照により本願に組み入れられる米国特許出願公開第２０１７／０１７１３７１号に記載されるような電話機１０に結合される一連の接続モジュールを形成するために１つ以上の他のモジュールに積み重ねられてもよい。
【００３９】
モジュールコネクタ２０は、モジュールの対応するコネクタ上の接点と係合してデータを電子的に通信する複数の接点（例えば、他の可能性の中でも特に、３列の４４個の接点又は１列の１３個の接点）を含むことができる。複数の接点は、バネ荷重コネクタ又はモジュールの接点と係合できる。幾つかの実装形態において、電話機１０は、モジュールに磁気的に取り付けられ又はモジュールを支持することができ、また、電話機１０及びモジュールはそれぞれ、電話機１０を引き付けて強固に結合させる磁石を含むことができる。電話機１０及びモジュールは、電話機１０の１つ以上の部分とモジュールの１つ以上の部分との間の摩擦嵌合、インターロック構造、締結具、機械的スナップ表面構造、機械的ラッチ表面構造、機械的締まり嵌め表面構造などを介して部分的に更に結合され得る。
【００４０】
機器と１つ以上のモジュールとの間のデータの結合及び通信に関する更なる情報は、米国特許出願公開第２０１７／０１７１３７１号及び米国特許出願公開第２０１６／００４４１４８号及び米国特許第９，５６８，８０８号において見出すことができ、これらの特許の開示内容は、その全体が参照により本願に組み入れられる。
【００４１】
電話機１０の寸法は特定の実施形態に応じて異なり得る。例えば、電話機１０は、おおよそ、高さが１００ｍｍ、幅が５０ｍｍ、厚さが１５ｍｍとすることができる。他の例において、電話機１０は、おおよそ、高さが１５０ｍｍ、幅が７０ｍｍ、厚さが１０ｍｍとすることができる。更なる他の例において、電話機１０は、おおよそ、高さが１３０ｍｍ、幅が７０ｍｍ、厚さが１０ｍｍとすることができる。更に別の例において、電話機１０は、おおよそ、高さが１２０ｍｍ、幅が６０ｍｍ、厚さが１０ｍｍとすることができる。ディスプレイ１１は、例えば、４インチ、４．５インチ、５インチ、５．５インチ、５．７インチ、６インチ、６．５インチ、７インチ、又は、７．５インチのディスプレイとすることができる。
【００４２】
図１Ｃは、カメラモジュール３０に取り付けるように位置決めされる電話機１０の側面図を示し、また、図１Ｄは、電話機１０とカメラモジュール３０とを取り付けたときの斜視図を示す。カメラモジュール３０は、単独で又は電話機１０と組み合わせて、本明細書中に記載される１つ以上の圧縮技術又は他の機能を実装することができる。カメラモジュール３０は、磁石３４Ａ，３４Ｂと入力３６とを支持するハウジングを含むことができる。磁石３４Ａ，３４Ｃは、電話機１０に対するハウジングの結合を容易にすることができる。入力３６は、カメラモジュール３０へのユーザ入力を受けてモードの変更又はビデオの捕捉開始のようなカメラモジュール３０の動作を制御するために使用され得る。図１Ｃ及び図１Ｄには示されないが、カメラモジュール３０は、カメラモジュール３０のハウジングの図１Ｃに示される側とは反対の側に磁石を含み、その反対の側を電話機１０のハウジングに結合することもできる。
【００４３】
カメラモジュール３０は、１つ以上の他の光学モジュールと交換可能であってもよい光学モジュール３８に更に結合され得る。光学モジュール３８は、例えば、目標位置に物体の画像を形成するために、レンズ、シャッター、プリズム、ミラー、アイリスなどの１つ以上の光学素子を含むことができる。カメラモジュール及び光学モジュールの実施形態並びにカメラモジュール及び光学モジュールを結合するための手法は、その開示全体が参照により本願に組み入れられる米国特許出願公開第２０１７／０１７１３７１号に更に記載される。
【００４４】
光学モジュール３８は取り外し可能なレンズ３９及びレンズマウント４１を含むことができ、この場合、レンズ３９は、レンズマウント４１の開口（図示せず）に挿入された後、レンズを所定位置に固定するべく回転されてもよい。１つの実施形態において、レンズマウント４１は、レンズ３９の取り外しを可能にするボタン又は他のタイプの制御器を含むことができる。例えば、ユーザは、ユーザがレンズ３９を反対方向に回転させてレンズ３９をレンズマウント４１の開口部から取り外すことができるようにするインタフェース要素を押す又はさもなければインタフェース要素と相互作用することができる。幾つかの実施形態において、レンズマウント４１自体は、穴４５Ａ、４５Ｂ、４５Ｃ、４５Ｄを介して、例えば各穴に取り付けネジを挿通することにより取り外し可能及び再取り付け可能である。レンズマウント４１又はレンズ３９は、例えば、参照によりその全体が本願に組み入れられる米国特許第９，５６８，８０８号に記載されているものの１つとすることができる。
【００４５】
カメラモジュール３０は、モジュールコネクタ２０と同様又は同じモジュールコネクタ３１を含むことができ、このモジュールコネクタ３１は、更なるモジュールと交換可能に結合（例えば、更なるモジュールの対応するコネクタの接点と係合）できるとともに、モジュール又はモジュールに結合される１つ以上の他の機器から電力又はデータを受ける或いはモジュール又はモジュールに結合される１つ以上の他の機器に電力又はデータを送ることができる。更なるモジュールは、カメラ、ディスプレイ、ビデオゲームコントローラ、スピーカ、バッテリ、入出力拡張器、ライト、レンズ、プロジェクタ、又は、それらの組み合わせなどを含むことができる。１つの例において、モジュールコネクタ３１に接続される更なるモジュールは、入出力拡張器であってもよく、ユーザがカメラモジュール３０の動作を制御できるようにする１つ以上の更なる入力を含むことができる。更なるモジュールは、更なるモジュールがレンズマウント４１の配置又は使用を妨げることなく或いはカメラモジュール３０内のイメージセンサからのレンズ３９を通じた視界を妨げることなくモジュールコネクタ３１に対する更なるモジュールの対応するコネクタの結合を可能にする形状因子を更に有してもよい（例えば、更なるモジュールは、モジュールコネクタ３１を含むカメラモジュール３０の表面全体を覆わなくてもよい）。幾つかの実施において、更なるモジュールは、カメラモジュールに磁気的に取り付けることができ又はカメラモジュールによって支持され得るとともに、更なるモジュール及びカメラモジュール３０はそれぞれ、これらの２つを引き付けて強固に結合させる磁石を含むことができる。それに加えて又は代えて、少なくとも摩擦嵌合、インターロック構造、締結具、機械的スナップ表面構造、機械的ラッチ表面構造、機械的締まり嵌め表面構造などを介して結合を達成することができる。
【００４６】
図２は、ビデオカメラ４０の斜視図を示す。ビデオカメラ４０は、ブレインモジュール４２、レンズマウントモジュールインタフェース４４、及び、レンズ４６を含むことができる。ビデオカメラ４０は、本明細書中に記載される圧縮技術又は他の特徴のうちの１つ以上を実装することができる。ビデオカメラ４０及びその構成要素の実施形態は、その全体の開示が参照により本願に組み入れられる米国特許出願公開第２０１６／０２９５０９６号及び米国特許出願公開第２０１７／０１７１３７１号により詳細に記載されている。
【００４７】
図３Ａは、本明細書中に記載される圧縮技術又は他の特徴のうちの１つ以上を実装できる画像捕捉機器５０を示す。画像捕捉機器５０は、幾つかの実施形態において、電話機１０、カメラモジュール３０、又は、ビデオカメラ４０の一部であってもよく或いはこれらの一部として組み込まれ得る。画像捕捉機器５０は、光学素子５１、画像センサ５２（又は複数の画像センサ）、画像処理システム５３、圧縮システム５４、及び、メモリデバイス５５を支持するように構成されるハウジングを含むことができる。幾つかの実施において、画像捕捉機器５０はマルチメディアシステム５６を更に含むことができる。画像センサ５２、画像処理システム５３、圧縮システム５４、及び、マルチメディアシステム５６は、画像捕捉機器５０の動作中にハウジング内に収容されてもよい。メモリデバイス５５も、ハウジング内に収容又は装着され得る、ハウジングの外部に装着され得る、又は、画像捕捉機器５０の外部の有線又は無線通信により接続され得る。
【００４８】
光学素子５１は、入ってくる画像を画像センサ５２に収束させるように構成される少なくとも１つのレンズを有するレンズ系の形態と成すことができる。幾つかの実施形態において、光学素子５１は、可変ズーム、絞り、及び、焦点をもたらすマルチレンズ系の形態を成すことができる。光学素子５１は、ハウジングによって支持されるレンズソケットの形態を成して、例えば複数の異なるタイプのレンズ系を受けることができるが、制限なく、光学素子５１は、５０−１００ミリメートル（Ｆ２．８）ズームレンズ、１８−５０ミリメートル（Ｆ２．８）ズームレンズ、３００ミリメートル（Ｆ２．８）レンズ、１５ミリメートル（Ｆ２．８）レンズ、２５ミリメートル（Ｆ１．９）レンズ、３５ミリメートル（Ｆ１．９）レンズ、５０ミリメートル（Ｆ１．９）レンズ、８５ミリメートル（Ｆ１．９）レンズ、又は、任意の他のレンズを含む様々なサイズのレンズ系を受けるように構成されるソケットを含むことができる。前述のように、光学素子５１は、それに対してレンズが取り付けられるにもかかわらず、画像を画像センサ５２の感光面上に収束させることができるように構成され得る。そのようなレンズ系に関する更なる情報は、その開示全体が参照により本願に組み入れられる米国特許第９，５６８，８０８号において見出すことができる。
【００４９】
画像センサ５２は、例えば、ＣＣＤ、ＣＭＯＳ、Ｆｏｖｅｏｎ（登録商標）センサなどの垂直に積み重ねられたＣＭＯＳ機器、又は、光をセンサ間で分割するためにプリズムを使用するマルチセンサアレイを含むがこれらに限定されない任意のタイプのビデオ感知機器となり得る。画像センサ５２は、画像センサ５２の個々のフォトセルによって検出される赤、緑、又は、青の光の大きさを表わすデータを出力するベイヤーパターンフィルタなどのカラーフィルタアレイを更に含むことができる。幾つかの実施形態において、画像センサ５２は、約１２００万個のフォトセルを有するＣＭＯＳ機器を含むことができる。しかしながら、他のサイズのセンサも使用できる。幾つかの形態において、ビデオカメラ１０は、「２ｋ」（例えば、２０４８×１１５２ピクセル）、「４ｋ」（例えば、４，０９６×２，５４０ピクセル）、「４．５ｋ」、「５ｋ」、「６ｋ」、「８ｋ」、又は、「１６ｋ」以上の解像度でビデオを出力するように構成され得る。本明細書中で使用される「ｘｋ」（上記の「２ｋ」及び「４ｋ」など）の形式で表現される用語では、「ｘ」量がおおよその水平解像度を指す。したがって、「４ｋ」解像度は約４０００以上の水平ピクセルに対応し、「２ｋ」解像度は約２０００以上のピクセルに対応する。現在市販されているハードウェアを使用すると、画像センサ５２は、約０．５インチ（８ｍｍ）程度に小さくすることができるが、約１．０インチ以上にすることができる。更に、画像センサ５２は、画像センサ５２の所定の部分のみを選択的に出力することによって可変解像度をもたらすことができる。例えば、画像センサ５２又は画像処理システム５３は、ユーザがビデオデータ出力の解像度を特定できる、設定できる、選択できる、又は、規定できるようにするべく構成され得る。センサ及びセンサからの出力に関する更なる情報は、その開示全体が参照により本願に組み入れられる米国特許第８，１７４，５６０号において見出すことができる。
【００５０】
画像処理システム５３は、画像センサ５２からのデータストリームをフォーマットすることができる。画像処理システム５３は、例えば、緑、赤、及び、青の画像データを３つ又は４つの別個のデータ編集物に分離することができる。例えば、画像処理システム５３は、赤色データを１つの赤色チャネル又はデータ構造に分離する、青色データを１つの青色チャネル又はデータ構造に分離する、及び、緑色データを１つの緑色チャネル又はデータ構造に分離するように構成され得る。また、画像処理システム５３は、２×２ベイヤーパターンの対角線方向に隣接する緑色ピクセル間の視差を保持するために緑色を２つの別個の緑色データ構造に分離してもよい。画像処理システム５３は、画素値を処理して、画素を結合、減算、乗算、除算、或いはさもなければ、修正し、画像データのデジタル表示を生成することができる。
【００５１】
画像処理システム５３は、解像度が低減された又は低減されていない画像データをマルチメディアシステム５６に出力するように構成されるサブサンプリングシステムを更に含むことができる。例えば、そのようなサブサンプリングシステムは、６Ｋ、４Ｋ、２Ｋ、１０８０ｐ、７２０ｐ、又は、任意の他の解像度をサポートするべく画像データを出力するように構成され得る。更に、画像処理システム５３は、他のモジュールを含むことができ又はガンマ補正プロセス、ノイズフィルタリングプロセスなどの他のプロセスを実行することができる。画像処理システム５３によって与えられる機能の例は、参照によりその全体が本願に組み入れられる米国特許出願公開第２０１４／０２２６０３６号に記載される。
【００５２】
圧縮システム５４は、図７に関して説明される圧縮手法などの圧縮技術又は他の技術を使用して画像処理システム５３からの画像データを圧縮することができる。圧縮システム５４は、別個の１つ又は複数のチップ（例えば、ＦＰＧＡ、ＡＳＩＣなど）の形態を成すことができる。圧縮システム５４は、ソフトウェア及び他のプロセッサで実装され得る或いはプロセッサ、ソフトウェア、又は、専用チップの組み合わせで実装され得る。例えば、圧縮システム５４は、ＤＣＴベースのコーデックに従って圧縮技術を実行する１つ以上の圧縮チップを含むことができる
【００５３】
圧縮システム５４は、レート制御を伴うＤＣＴベースのコーデックを使用して画像処理システム５３からの画像データを圧縮することができる。幾つかの実施形態において、圧縮システム５４は、ビデオデータの圧縮中に圧縮パラメータを修正又は更新する圧縮技術を実行する。修正又は更新された圧縮パラメータは、目標の又は所望のファイルサイズ、ビデオ品質、ビデオビットレート、又は、これらの任意の組み合わせを達成するように構成され得る。幾つかの実施形態において、圧縮システム５４は、ユーザ又は他のシステムが圧縮パラメータを調整して圧縮システム５４により出力される圧縮ビデオの品質又はサイズを変更できるようにするべく構成され得る。例えば、画像捕捉機器５０は、圧縮システム５４に圧縮パラメータを変更させるコマンドをユーザが入力できるようにするユーザインタフェース（図示せず）を含むことができる。
【００５４】
圧縮システム５４は、画像処理システム５３からの画像データをリアルタイムで圧縮することができる。圧縮システム５４は、ビデオフレームを圧縮するためにシングルパスを使用して圧縮を実行することができる。これは、幾つかの圧縮システムで使用される中間フレームメモリの使用を排除して複数の圧縮パスを実行する又は中間フレームメモリに記憶される１つ以上の以前のビデオフレームからのコンテンツに基づいて現在のビデオフレームを圧縮するために使用され得る。これは、オンボードビデオ圧縮を伴うビデオカメラのコスト及び複雑さを軽減できる。圧縮システム５４は、画像データのフレームレートが少なくとも２３フレーム／秒（ｆｐｓ）、少なくとも約２４ｆｐｓ（例えば、２３．９７６ｆｐｓ）、少なくとも約２５ｆｐｓ、少なくとも約３０ｆｐｓ（例えば２９．９７ｆｐｓ）、少なくとも約４８ｆｐｓ、少なくとも約５０ｆｐｓ、少なくとも約６０ｆｐｓ（例えば５９．９４ｆｐｓ）、少なくとも約１２０ｆｐｓ、少なくとも約２４０ｆｐｓ、又は、約２４０ｆｐｓ以下であるときに画像処理システム５３からの画像データをリアルタイムで圧縮できる。圧縮されたビデオは、その後、メモリデバイス５５に送信され得る。
【００５５】
メモリデバイス５５は、例えば、これらに限定されないが、ハードディスク、フラッシュメモリ、又は、任意の他のタイプのメモリなどの任意のタイプのデジタル記憶装置の形態を成すことができる。幾つかの実施形態において、メモリデバイス５５のサイズは、１２メガピクセル解像度、１２ビットカラー解像度、及び、６０ｆｐｓでの少なくとも約３０分のビデオに対応する圧縮システム５４からの画像データを記憶するのに十分大きくなり得る。しかしながら、メモリデバイス５５は任意のサイズを有することができる。
【００５６】
マルチメディアシステム５６を含む実施形態において、マルチメディアシステム５６は、ユーザが動作中に画像センサ５２により捕捉されるビデオ画像或いは圧縮システム５４又はメモリデバイス５５から受信されるビデオ画像を見ることができるようにし得る。幾つかの実施において、画像処理システム５３は、解像度が低下した画像データをモニタシステム５６に出力するように構成されるサブサンプリングシステムを含むことができる。例えば、そのようなサブサンプリングシステムは、「２ｋ」１０８０ｐ、７２０ｐ又は任意の他の解像度をサポートするべくビデオ画像データを出力するように構成され得る。また、デモザイクのために使用されるフィルタは、ダウンサンプリング及びフィルタリングを同時に実行できるように、ダウンサンプリングフィルタリングを実行するべく適合され得る。マルチメディアシステム５６は、画像処理システム５３からのデータに対して任意のタイプの解凍プロセス又はモザイク解除プロセスを実行することができる。例えば、マルチメディアシステム５６は、本明細書中に記載されるように圧縮されたデータを解凍することができる。その後、マルチメディアシステム５６は、モザイク解除又は解凍された画像データをマルチメディアシステム５６のディスプレイ又は他のディスプレイに対して出力することができる。
【００５７】
図３Ｂは、幾つかの実施形態に係る画像捕捉機器５０の更なる構成要素を示す。特に、図３Ｂは、図３Ａよりも多くの画像捕捉機器５０の実施形態の実施の詳細を描く。図示のように、画像捕捉機器５０は更にフレームメモリ６３と通信している。フレームメモリ６３は、図４のＲＡＭ１１３などのＤＲＡＭであってもよい。
【００５８】
画像捕捉機器５０は画像処理ユニット６０を更に含む。図示のように、画像処理ユニット６０は、画像処理システム５３、圧縮システム５４、及び、オンチップメモリ６２を含むことができる。オンチップメモリは例えばＳＲＡＭであってもよい。画像処理ユニット６０の構成要素の一部又は全部は、画像捕捉機器５０によって捕捉される画像データ（例えば、圧縮生ビデオ画像データ）の処理及び記憶のための使用に専用のものとなることができ、画像捕捉機器５０と関連付けられる電話機能を実装するためなどの他の目的のために使用されなくてもよい。
【００５９】
画像処理ユニット６０は、実施に応じて、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、それらの組み合わせなどを含むことができる１つ以上の集積回路、チップ、又は、チップセットを含むことができる。特定の実施形態によれば、オンチップメモリ６２は、画像処理システム２３及び圧縮システム５４などの画像処理ユニット６０の他の構成要素と同じ機器（例えば、ＡＳＩＣ、ＦＰＧＡ、又は、他のチップ）内に配置され得る。例えば、画像処理ユニット６０は、画像処理システム５３、圧縮システム５４、及び、オンチップメモリ６２を実装するＡＳＩＣ又はＦＰＧＡを含むことができる。したがって、特定の実施形態によれば、オンチップメモリ６２を「オンチップ」メモリと称することができ、一方、フレームメモリ６３を「オフチップ」メモリと称することができる。
【００６０】
図示のように、フレームメモリ６３は、画像処理ユニット６０とは別個に実装することができ、ＤＲＡＭであってもよい。例えば、１つの実施形態において、フレームメモリ６３及び画像処理ユニット６０はそれぞれ、別個のパッケージに実装されて共通のプリント回路基板上に実装されるＡＳＩＣ及びＦＰＧＡである。フレームメモリ６３は、処理目的で画像フレーム全体（例えば、１つの画像フレームのピクセルデータの全て又はほぼ全て）を同時に記憶するために使用され得る。例えば、フレームメモリ６３は、幾つかの例としてのピクセル欠陥補正又はピクセルパターンノイズ補正などの特定の画像処理ステップ中に画像フレーム全体を記憶するために画像処理システム５３によって使用され得る。特定の実施形態によれば、フレームメモリ６３が幾つかのそのようなステップのために使用されてもよいが、画像捕捉機器５０は、圧縮のためにフレームメモリ６３を利用せずに圧縮生ビデオ画像データが処理される画像処理パイプラインを実装する。例えば、幾つかの実施形態における圧縮システム５４は、例えば図６に関して本明細書中に記載される圧縮スキームのいずれかであり得るＤＣＴベースの圧縮スキームを実装する。そのようなＤＣＴベースの圧縮スキームはメモリ要件が比較的軽量となり得るため、圧縮システム６１は、圧縮中にフレームメモリ６３又は任意の他のフレームメモリではなくオンチップメモリ６２を利用して圧縮を実行できる。
【００６１】
圧縮中にフレームメモリの使用を回避することは、消費電力を大幅に削減でき、動きベクトルの計算にフレームメモリの使用を伴う他の特定の圧縮技術とは対照的である。例えば、本明細書中に記載される特定のＤＣＴベースの圧縮技術によれば、圧縮システム５４は、任意の所定の時間にビデオ画像フレームの離散セクション（例えば、フル画像フレームよりも小さいセクション）に作用し、処理直後にビデオ画像フレームの離散セクションを破棄する。例えば、１つの実施形態において、圧縮システム５４は、一度にピクセルの３２個の水平ラインのためのデータに作用し、圧縮目的でピクセルデータの６４個のラインに対応するオンチップメモリ６２内の記憶量のみを利用する（現在圧縮されているピクセルデータ３２個のラインの画像データを保持するとともに、圧縮されるべき次の３２個のラインのための画像データを保持するため）。実施形態に応じて、電力消費量は、様々な実施形態に従って画像捕捉機器５０が動作中に約１５又は２０Ｗ未満を消費し且つ幾つかの実施形態では約１０Ｗ〜２０Ｗ、約１０Ｗ〜２５Ｗ、又は、約５Ｗ〜２５Ｗを消費するように減少され得る。例えば、幾つかの実施形態によれば、画像処理機器５０の撮像構成要素（例えば、画像処理機器５０のカメラ関連構成要素）は、約１０Ｗ又は１５Ｗ未満（例えば、約４Ｗ〜１０Ｗ又は約６Ｗ〜１０Ｗ）を消費し、一方、残りの非撮像構成要素（例えば、電話構成要素、ディスプレイ構成要素など）は、約１０Ｗ未満（例えば、約３Ｗ〜１０Ｗ又は約５Ｗ〜１０Ｗ）を消費する。
【００６２】
本明細書中に記載される圧縮技術は、復号／解凍速度の向上を可能にし得る。例えば、ＤＣＴベースの生圧縮技術は、ＤＣＴアルゴリズムが解凍中に高度に並列化された数学演算の使用を可能にするため、解凍を増進でき、それにより、グラフィックス処理ユニットを効率的に使用できる。実施形態に応じて、本明細書中に記載される生圧縮技術は、約１／２３、１／２４、１／２５、又は、１／１２０秒以下でビデオ画像フレームの解凍を可能にすることができ、それにより、フレームレートに応じたリアルアタイムな解凍を可能にし得る。
ＩＩＩ．画像データ処理
【００６３】
図４は、電話機１０、カメラモジュール３０、ビデオカメラ４０、又は、画像捕捉機器５０などの画像捕捉機器によって実行可能なビデオ画像データを処理するための例示的なプロセスを示すフローチャート４００である。フローチャート４００は、メモリデバイス５５、ＲＯＭ１１２、ＲＡＭ１１３、又は、メモリ１７５などのメモリデバイスに記憶される制御ルーチンを表わすことができる。更に、コントローラ１１０などのプロセッサが制御ルーチンを実行するように構成され得る。便宜上、フローチャート４００は、画像捕捉機器５０との関連で説明されるが、代わりに、本明細書中に記載される他のシステム又は図示されない他の適切なコンピュータシステムによって実施されてもよい。フローチャート４００は、好適には、特定の実施形態において、携帯電話のような比較的小型の又は低電力のハンドヘルド機器がビデオ画像データを処理できる手法の一例を描く。
【００６４】
ブロック４０２において、画像センサ５２は、画像センサ５２に入射する光に応じてビデオ画像データを生成することができる。例えば、画像センサ５２は、少なくとも毎秒約２３フレームで且つ少なくとも２Ｋの解像度で生のモザイク画像データとしてビデオ画像データを生成することができる。更に、１つ以上の画像センサ２０２からの出力は、幾つかの実施では、それぞれ、１５ビット出力とブラックサン効果用に設定された１ビットとを伴う少なくとも１６ビット幅となり得る。画像センサ５２は、場合によっては、３Ｄビデオ画像として処理して最終的に提示するために３Ｄビデオ画像データを生成するべく使用され得る。
【００６５】
ブロック４０４において、画像処理システム５３は、画像センサ５２によって生成されるビデオ画像データをプリエンファシスすることができる。生成されたビデオ画像データは、生成されたビデオ画像データの生のピクセルへのロッシー変換を実行することによってプリエンファシスされ得る。プリエンファシスは、特定の実施形態では、望ましくは、ブロック４０６で処理されるビデオ画像データの量を減らすことができるが、それにもかかわらず、ビデオ画像データ品質を保つ。
【００６６】
画像処理システム５３は、例えば、生のピクセルを１５ビット又は１６ビットデータから１２ビットデータに変換する区分的線形関数を実行することができる。区分的線形関数の勾配は、調和数列１、１／２、１／３、…、１／１５、１／１６に従い、２５６カウントごとに変化する。区分的線形関数の形状は、センサ特性データから画像センサ５２に合わせて調整することができ、したがって、センサごとに又はセンサ製造業者ごとに異なり得る。区分的線形関数の入力範囲は、場合によっては、適用され得るブラックオフセットを考慮するべく許容される最大値を超える場合がある。
【００６７】
図５は、生のピクセルを１５ビットデータから１２ビットデータに変換するための区分的線形関数の１つの例をグラフで示すプロット５００である。以下の表１は、プロット５００に沿ったポイントの例を与える。
【表１】
2020526966.tif 000003
【００６８】
プリエンファシスは、ビット範囲（０〜３２７６７を含む１５ビット範囲など）内の全てのビデオ画像データ値が同じ情報を伝えるわけではないという理解の下で、画像処理システム５３によって実行され得る。各ピクセルでの入射光は、各光レベルで異なるフォトンショットノイズ（ＰＳＮ）をもたらすポアソンプロセスによって制御され得る。ポアソンランダム分布は、分布の分散が分布の平均に等しい固有の特性を有することができる。これにより、標準偏差が平均の平方根に等しくなる。
2020526966.tif 000004
この関数から区分的線形関数を構成することにより、この関数の複雑さを軽減できる。この技術を使用すると、プリエンファシスによって付加される更なるノイズを例えば（最悪のシナリオの例ではフォトンショットノイズの１％のような）僅かなパーセンテージまで減らすことができる。
【００６９】
変換関数を使用して、復号後にプリエンファシスされた値を変換できる。例えば、擬似コードで表わされる以下の関数を使用して、復号後に１２ビットデータを元の１５ビットデータに変換することができる。
2020526966.tif 000005
【００７０】
場合によっては、比較的単純な逆関数を有する変換関数（時としてプリエンファシス関数とも称される）を使用することは、並列処理を使用してハードウェアで圧縮画像を復号するのに役立ち得る。例えば、変換関数の一例が比較的単純な逆関数を有する場合、Ｇｒａｐｈｉｃａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＧＰＵ）を使用して、解凍後に１２ビットデータを元の１５ビットデータ形式に比較的迅速に変換できる。
【００７１】
プリエンファシス技術に関する更なる情報は、その開示全体が参照により本願に組み入れられる米国特許第８，１７４，５６０号において見出すことができる。
【００７２】
ブロック４０６において、圧縮システム５４は、画像処理システム５３によってプリエンファシスされるビデオ画像データを圧縮することができる。例えば、圧縮システム５４は、図６に関して説明されたように又は他の圧縮アルゴリズムを使用してプリエンファシスされたビデオ画像データを圧縮することができる。圧縮システム５４は、幾つかの実施では、以下のうちの１つ以上を実行でき、すなわち、（ｉ）フル画像フレームを記憶するフレームメモリを使用せずにビデオ画像データを圧縮でき、（ｉｉ）１つのメモリデバイスを使用して且つ１つのメモリデバイスに対してチップ外に位置決めされるメモリを使用せずにビデオ画像データを圧縮でき、（ｉｉｉ）定期的に更新する必要があるダイナミックメモリではなく定期的に更新しなくてもよいスタティックメモリを使用してビデオ画像データを圧縮でき、及び、（ｉｖ）クロックのタイミングに従って動作して、５、１０、２０、又は、３０秒或いは１、２、３、５、又は、１０分などの期間にわたってクロックが停止しているにもかかわらず、ビデオ画像データを正確に圧縮できる。更に、圧縮システム５４を使用して、３Ｄビデオ画像として提示可能なビデオ画像データを圧縮することができる。
【００７３】
図６は、電話機１０、カメラモジュール３０、ビデオカメラ４０、又は、画像捕捉機器５０などの画像捕捉機器によって実行可能なビデオ画像データを圧縮するための例示的なプロセスを示すフローチャート６００である。フローチャート６００は、メモリデバイス５５、ＲＯＭ１１２、ＲＡＭ１１３、又は、メモリ１７５などのメモリデバイスに記憶される制御ルーチンを表わすことができる。更に、コントローラ１１０などのプロセッサが制御ルーチンを実行するように構成され得る。便宜上、フローチャート６００は、画像捕捉機器５０との関連で説明されるが、代わりに、本明細書中に記載される他のシステム又は図示されない他の適切なコンピュータシステムによって実施されてもよい。フローチャート６００は、好適には、特定の実施形態において、携帯電話のような比較的小型の又は低電力のハンドヘルド機器がビデオ画像データを圧縮できる手法の一例を描く。
【００７４】
ブロック６０２において、圧縮システム５４は、ビデオ画像データをシフト及び分割することができる。ビデオ画像データの値は、データのビット数に依存するビデオ画像データのための中央値に等しい量だけシフトされ得る（例えば、中央値がｎビットデータに関して０．５・２ｎとなることができ、このことは、１２ビットデータの場合に２０４８を意味する）。このシフトは、更なる処理のために０の値付近の値をシフトできる。また、値は、スライスとマクロブロックとに分割され得る。１つの実施において、スライスの最大サイズは２５６×３２ピクセルである、最大サイズのスライスは左から右へパックされる。各行の最後に未だ幾つかのピクセルが残っている場合、値０のピクセルを最後にパックすることにより、サイズ２５６×３２ピクセル、１２８×３２ピクセル、６４×３２ピクセル、３２×３２ピクセル、又は、他のサイズのスライスを作成できる。ピクセルがベイヤーパターンに従う場合、各スライスは、１２８×１６のＧｒｅｅｎ１、Ｇｒｅｅｎ２、Ｒｅｄ、及び、Ｂｌｕｅピクセルを有することができ、また、ピクセルは、Ｇｒｅｅｎ１、Ｇｒｅｅｎ２、Ｒｅｄ、及び、Ｂｌｕｅピクセルの８個のマクロブロック（１６×１６ピクセル）に更に分割され得る。
【００７５】
ブロック６０４において、圧縮システム５４は、離散コサイン変換（ＤＣＴ）又は他の変換を使用するなど、シフトされて分割されたビデオ画像データを変換することができる。１つの例において、圧縮システム５４は、１６×１６ＤＣＴを使用して、シフトされて分割されたビデオ画像データの各マクロブロックを変換することができる。１６×１６ＤＣＴは、特に、場合によっては、８×８ＤＣＴよりも高い圧縮効率をもたらすことができる。更に、２次元１６×１６ＤＣＴは、３２個の１次元の１×１６ＤＣＴ計算に分離できる。この分離可能性は、特定の実施形態において、圧縮を実行するときに、フレームメモリ（例えば、オンチップメモリ６２の複数のライン）よりも小さい容量を有するメモリの使用を有利に促進することができる。変換からの出力は、ビデオ画像データのための変換係数となり得る。
【００７６】
ブロック６０６では、圧縮システム５４が変換係数を量子化することができる。量子化は２つの構成要素を含むことができる。第１の構成要素は、１つ以上の量子化テーブルからの量子化テーブル値となり得る。例えば、１つの量子化テーブルをＧｒｅｅｎ１チャネル及びＧｒｅｅｎ２チャネルのために使用でき、また、他の量子化テーブルを青チャネル及び赤チャネルのために使用できる。１つ以上の量子化テーブルをフレームヘッダで規定できる。第２の構成要素は量子化スケール係数となり得る。量子化スケール係数は、スライス内の各値に関して同じとなり得る、最小値（例えば１）から最大値（例えば２５５）まで変化し得る、スライスヘッダで規定され得る、目標スライスサイズを達成するために使用され得る。量子化スケール係数は、少なくとも目標フレームサイズ又は参照によりその全体が本願に組み入れられる米国特許第９，８００，８７５号に記載されるような技術に基づいて決定され得る。量子化スケール係数は、場合によっては、圧縮画像サイズに関係なく特定の品質の圧縮ビデオを生成するために一定に設定されてもよい。１つの実施では、変換係数の量子化値が以下の式１を使用して決定され得る。
【数１】
2020526966.tif 000006
【００７７】
ブロック６０８において、圧縮システム５４は、符号化のために量子化変換係数をスライスごとに配置することができ、それにより、緑、赤、及び、青構成要素がスライス内で別々に符号化されてもよい。１つのスライスのマクロブロックのＤＣ係数は、左から右へ配置され得る。１つのスライスのマクロブロックのＡＣ係数は、（ｉ）スライス内の異なるマクロブロックからの１６×１６ＤＣＴテーブル内の全ての特定の位置ＡＣ係数が次々に配置されるように、及び、（ｉｉ）異なるＡＣ係数が以下の表２により示されるジグザグスキャン順序により配置されるように、配置可能であり、この場合、表２中のインデックスは、量子化された変換係数のためのシーケンス内の位置を示す。
【表２】
2020526966.tif 000007
【００７８】
ブロック６１０において、圧縮システム５４は、配置された変換係数を範囲及び範囲内の値に分割することができる。ＤＣ係数の範囲は、ＤＣ係数の想定し得る値の範囲とすることができ、また、ＡＣ係数の範囲は、ＡＣ係数の想定し得る値の範囲及び０値のグループ化のカウントとすることができる。
【００７９】
ブロック６１２において、圧縮システム５４は、配置された係数の範囲をハフマンコードとして符号化するとともに、配置された係数の範囲内の値の少なくとも幾つかをゴロムコードとして符号化することができる。範囲が１つしかない固有値を有する場合、その１つの固有値は、ゴロムコードではなくハフマンコードで符号化されてもよい。範囲が複数の固有値を有する場合、それらの値は、範囲に関するハフマンコードと範囲内の固有値に関するゴロムコードとの組み合わせによって符号化され得る。範囲及び範囲に関するゴロムコードは、製造時に設定されるなど、固定され又は事前に規定されてもよい。しかしながら、範囲に関するハフマンコードは、フレームヘッダで規定されている１つ以上のハフマンテーブルに伴ってフレームごとに異なり得る。符号器は、ハフマン符号化の適応性を使用でき、特定のビデオ画像データのための圧縮効率を最適化するべく次のフレームのために使用されるべき各フレームの終わりに１つ以上のハフマンテーブルを計算してもよい。１つの実施では、ハフマンコードの最大ビット数が１２となり得る。
【００８０】
スライス内の特定の構成要素のＤＣ係数の値は、ＤＣ係数の以前の値からの差として符号化されてもよい。この差は差分係数と称される。スライス内の特定の構成要素のためのＤＣ係数に関する初期値は０に設定され得る。個々のＤＣ係数の値を符号化するために、圧縮システム５４は、例えば、（ｉ）個々のＤＣ係数のための差分係数の絶対値を計算できる、（ｉｉ）個々のＤＣ係数の範囲に対応するハフマンコードをビットストリームに付加することができる、（ｉｉｉ）個々のＤＣ係数の範囲内の値に対応するゴロムコードをビットストリームに付加することができる、（ｉｖ）差分係数がゼロ以外の場合に符号ビット（例えば、正の場合は０、負の場合は１）をビットストリームに付加することができる。
【００８１】
以下の表３は、ＤＣ符号化テーブルの一例を与える。表のハフマンコード部分は、圧縮統計データが未知となり得る場合に圧縮の開始時にデフォルト表として使用され得る。
【表３】
2020526966.tif 000008
【００８２】
例えば、表３から分かるように、差分係数が２０となり得る場合には、ハフマンコードが１１となり得る、ハフマンビットが２となり得る、ゴロムコードがＧｏｌｏｍｂ−Ｒｉｃｅ（４、２）となり得る、及び、符号ビットが０となり得る。他の例として、差分係数が−７５となり得る場合には、ハフマンコードが０１１となり得る、ハフマンビットが３となり得る、ゴロムコードがＧｏｌｏｍｂ−Ｒｉｃｅ（１１、４）となり得る、及び、符号ビットが１となり得る。更に他の例として、差分係数が３００となり得る場合には、ハフマンコードが１０１０となり得る、ハフマンビットが４となり得る、ゴロムコードがＧｏｌｏｍｂ−Ｒｉｃｅ（４４、６）となり得る、及び、符号ビットが０となり得る。
【００８３】
ＡＣ係数の値は、ゼロの連続とそれに続くゼロ以外の値によって表わされ得る。異なるハフマンコードは、ゼロの連続により先行されるＡＣ係数の値と、ゼロの連続により先行されないＡＣ係数の値とを示すことができる。ゼロでない個々のＡＣ係数の値を符号化するために、圧縮システム５４は、例えば、（ｉ）個々のＡＣ係数に関してＥＡＣＶ＝｜ＡＣ  ｖａｌｕｅ｜−１を計算できる、（ｉｉ）個々のＡＣ係数が１つ以上のゼロによって先行されるかどうかを決定できる、（ｉｉｉ）個々のＤＣ係数に関するＥＡＣＶに対応するハフマンコードをビットストリームに付加できる、（ｉｖ）ＥＡＣＶが３を超える場合にＥＡＣＶに対応するゴロムコードをビットストリームに付加できる、及び、（ｖ）符号ビット（例えば、正の場合は０、負の場合は１）をビットストリームに付加できる。更に、ゼロの値を有する個々のＡＣ係数の値を符号化するために、圧縮システム５４は、例えば、（ｉ）ＥＡＣＲ＝ＡＣ個のゼロ−１の連続を計算でき、（ｉｉ）ＥＡＣＲに対応するハフマンコードをビットストリームに付加できる、（ｉｉｉ）ＥＡＣＲが３を超える場合にＥＡＣＲに対応するゴロムコードをビットストリームに付加できる。
【００８４】
以下の表４は、ＡＣ符号化テーブルの一例を与える。表のハフマンコード部分は、圧縮統計データが未知となり得る場合に圧縮の開始時にデフォルト表として使用され得る。
【表４】
2020526966.tif 000009
【００８５】
符号化のために表４がどのように使用され得るのかを例示するために、０、２、０、０、−１０、５０、０、０、０、０、０の１１の係数シーケンスを符号化する一例について説明する。表４から分かるように、１つのゼロの連続の場合には、「ＡＣ  Ｒｕｎ−１」が０となり得る、ハフマンコードが１となり得る、ハフマンビットが１となり得る、及び、ゴロムコードが存在しない場合がある。次に、少なくとも１つのゼロの連続によって先行される値２の場合には、「｜ＡＣ  Ｖａｌｕｅ｜−１」が１となり得る、ハフマンコードが１１１１となり得る、ハフマンビットが４となり得る、ゴロムコードが存在しない場合があり、及び、符号ビットが０となり得る。その後、２つのゼロの連続の場合には、「ＡＣ  Ｒｕｎ−１」が１となり得る、ハフマンコードが００１となり得る、ハフマンビットが３となり得る、及び、ゴロムコードが存在しない場合がある。次に、少なくとも１つのゼロの連続によって先行される−１０の値の場合には、「｜ＡＣ  Ｖａｌｕｅ｜−１」が９となり得る、ハフマンコードが００１１００１となり得る、ハフマンビットが７となり得る、ゴロムコードがＧｏｌｏｍｂ−Ｒｉｃｅ（２、１）となり得る、及び、符号ビットが１となり得る。その後、少なくとも１つのゼロの連続によって先行されない５０の値の場合には、「｜ＡＣ  Ｖａｌｕｅ｜−１」が４９となり得る、ハフマンコードが００００１００となり得る、ハフマンビットが７となり得る、ゴロムコードがＧｏｌｏｍｂ−Ｒｉｃｅ（１８、３）となり得る、及び、符号ビットが０となり得る。最後に、５つのゼロの残りの連続の場合には、「ＡＣ  Ｒｕｎ−１」が４となり得る、ハフマンコードが０１１となり得る、ハフマンビットが３となり得る、及び、ゴロムコードがＧｏｌｏｍｂ−Ｒｉｃｅ（１、０）となり得る。
【００８６】
フローチャート６００のプロセスの更なる部分として、特定の実施において適合圧縮が実行されてもよい。例えば、圧縮フレームのサイズは、その全体が参照により既に本願に組み入れられる米国特許第９，８００，８７５号に記載される技術を使用するなどして、目標バイト数付近に設定され得る。更に、その全体が参照により既に本願に組み入れられる米国特許第９，８００，８７５号に記載される技術を使用するなどして、各スライスのエントロピー指数を更に計算することができる。エントロピー指数はエントロピー乗数と共に量子化スケール係数を計算するために使用され得る。ＤＣＴ１６×１６の範囲は、同じ１２ビット入力に関するＤＣＴ８×８の範囲よりかなり高くてもよい。
【００８７】
場合によっては、生画像データの３２個のラインを一度に処理できるため、画像を８つ以上のセクションに垂直に（又は別の方法で）分割できる。個々のセクションを処理した後、これまでの圧縮画像のサイズを利用できる。その後、圧縮画像のサイズを使用して、エントロピー乗数を更新できる。フレーム圧縮の終わりに、圧縮画像のサイズを目標サイズと比較して、エントロピー乗数を更に更新できる。
【００８８】
本明細書中の幾つかの例はハフマンコード（又はアルゴリズム）及びゴロムコード（又はアルゴリズム）を使用して符号化範囲又は範囲内の値について説明するが、他のコード（又はアルゴリズム）を使用できる。例えば、ロスレスコード、ロッシーコード、可変長コード、又は、プレフィックスコードが使用されてもよい。
【００８９】
幾つかの実施形態では、範囲を符号化するために第１のアルゴリズムを使用でき、また、範囲内の値を符号化するために第２のアルゴリズムを使用できる。第１のアルゴリズムは、場合によっては、第２のアルゴリズムとは異なり得るため、範囲と範囲内の値とが異なって符号化される場合がある。他の例では、第１のアルゴリズムを第２のアルゴリズムと同じにすることができる。
ＩＶ．ビデオストリーム仕様
【００９０】
本明細書中に開示される１つ以上の手法を使用して圧縮されてもよいビデオ画像データは、ビデオストリーム仕様に従って編成され得る。ビデオストリーム仕様は、幾つかの実施では、以下の特徴のうちの１つ以上を含むことができる。
【００９１】
圧縮ファイルのフレーム構造は、ヘッダ部分とデータ部分とに分割され得る。ヘッダは、ハードウェアに優しいように設計され得る。場合によっては、圧縮が始まる前に、圧縮されたフレームのサイズ以外のヘッダ内の全ての値が知られている場合がある。ファイル形式に改正がなされた場合には、ヘッダバージョンを使用して、例えばオンカメラ又はオフカメラでの再生のために圧縮ファイルを復号してもよい。例えば、ヘッダは６００バイトを含むことができる。ヘッダの後には、左から右及び上から下に並べられたスライスが続くことができる。各スライスは整数のバイト数を含むことができる。以下の表５には、ヘッダ構造の１つの例が示される。
【表５】
2020526966.tif 000010
【００９２】
ハフマンテーブル内の個々のエントリは、２バイト（１６ビット）幅となり得る。以下の表６により示されるように、ハフマンテーブル構造の最上位ビット（例えば最初の４ビット）はハフマンコードのサイズを表わすことができ、また、ハフマンテーブル構造の最下位ビット（例えば最後の１２ビット）は、ゼロでパディングされた左右に揃えられ得るハフマンコード自体を表わすことができる。
【表６】
2020526966.tif 000011
【００９３】
各スライスはヘッダ（例えば９バイト）を有し、該ヘッダの後にはＧｒｅｅｎ１、Ｇｒｅｅｎ２、Ｒｅｄ、及びＢｌｕｅ構成要素が続く。各構成要素はバイト境界で始まり得る。構成要素が小数バイトを有し得る場合、構成要素にゼロをパディングして完全なバイトを形成できる。以下の表７は、スライス構造の一例を示す。
【表７】
2020526966.tif 000012
【００９４】
以下の表８は、スライスヘッダ構造の一例を示す。スライスヘッダ構造のビット数を指定して、パディングされたビットを値ゼロのハフマンコードと混同しないようにすることができる。構成要素のビット数が８の倍数でない場合、次の構成要素はバイト境界で始まり得る。
【表８】
2020526966.tif 000013
Ｖ．３Ｄ画像表示
【００９５】
本明細書中に記載される画像捕捉機器のディスプレイ又は画像捕捉機器に接続されるディスプレイ（例えば図１Ａの機器１０のディスプレイ１１）は、幾つかの実施では、３Ｄディスプレイとなり得る又は３Ｄディスプレイを含むことができる。３Ｄディスプレイは、３Ｄ画像（時として「多次元コンテンツ」と称される）がユーザにより観察されるように光を生成するべく構成されてもよい。例えば、立体視ディスプレイを使用して、適切な角度で見たとき又は特別に設計されたアイウェアを使用するときに３Ｄであるようにユーザに見える画像を形成してもよい。少なくとも幾つかの実施形態は、ユーザがディスプレイを動かさずに複数の方向から３Ｄ画像を見ることができるように、３Ｄ空間にあるように見える画像を生成するべく構成されるディスプレイに関する。ディスプレイは、ユーザの視野内に位置決めされる必要がない場合がある。幾つかの実施形態において、３Ｄ画像は、ディスプレイの上側で停止又は浮遊しているように見える場合がある。したがって、ユーザは３Ｄ画像を「歩き回って」、画像内のコンテンツが物理的な物体であるかのように画像の様々なビューを観察できる場合がある。
【００９６】
３Ｄディスプレイの幾つかの実施形態は、回折ライトフィールドバックライトシステムを含んでもよい。回折ライトフィールドバックライトシステムは、マルチビュー又は３Ｄディスプレイと、３Ｄディスプレイの背面照明用に構成された光源とを含んでもよい。マルチビューディスプレイは、その上に照射された光を複数の方向に向けるように構成される、それぞれが複数の回折格子を含む複数の回折要素を含んでもよい。光が向けられる方向は、回折要素の回折特性に基づいてもよい。一部の実施形態では、複数の方向が３Ｄ画像の異なるビューに対応し得る。同じ又は実質的に同様の方向に向けられた複数の光線は、３Ｄコンテンツの特定のビューに対応する画像を形成することができる。したがって、３Ｄコンテンツの複数のビューは、複数の回折要素に基づいて複数の方向に表示され得る。本明細書中の実施形態の幾つかの実施は、例えば、「マルチビーム回折格子に基づいたバックライト」と題された米国特許第９，１２８，２２６号及び「指向性バックライト」と題された米国特許第９，４５９，４６１号に詳細に記載されており、これらの特許の内容はそれぞれそれらの全体が本願に組み入れられる。３Ｄディスプレイは、２次元（２Ｄ）ディスプレイとは別個に動作可能である。３Ｄディスプレイは、例えば、２Ｄディスプレイの後ろ又は前に配置されてもよい。したがって、３Ｄディスプレイ又は２Ｄディスプレイはそれぞれ、他のディスプレイの使用に影響を与えることなくオン及びオフできる。
【００９７】
３Ｄ画像を生成するために３Ｄディスプレイの他の実施形態が想定し得る。例えば、３Ｄディスプレイは、ホログラムと関連付けられるホログラフィック干渉縞の再構成に基づいて３Ｄ画像を表示するように構成されてもよい。干渉縞は、縞模様に記憶された特徴に基づいて再構成されてもよく、また、ディスプレイは、スクリーン上の干渉縞模様を複製するように駆動されるピクセルを含んでもよい。ピクセルは、３Ｄホログラフィック画像を生成するためにピクセルの干渉縞によって変換され（例えば、位相又は透過率が変化され）得る光源によって照らされる。幾つかの実施は、例えば、「動的画像制御を伴う透明ホログラフィックディスプレイ」と題された米国特許第９，３０４，４９１号及び「ホログラフィックディスプレイ」と題された米国特許第６，７６０，１３５号において見出されてもよく、これらの特許の内容はそれぞれ、それらの全体が本願に組み入れられる。他の実施形態において、ディスプレイは、例えば、その内容が全体として本願に組み入れられる「ホログラフィックステレオグラムを使用した環境の視覚化の強化」と題された米国特許第７，１９０，４９６号に記載されるように、空間光変調器を使用して照明変調される複数のホログラフィックピクセルを含んでもよい。
【００９８】
好適には、３Ｄディスプレイは、特定の実施形態では、レンチキュラーレンズ又はアイトラッキング技術を利用する必要がない場合がある。特定の科学理論に加入することなく、本明細書中の実施形態は、レンチキュラーレンズを使用するディスプレイと比較してより高い解像度を提供でき、３Ｄディスプレイは標準の２Ｄディスプレイとは別個に動作可能であってもよく、及び、３Ｄディスプレイは複数のビューを有する多方向コンテンツを提供する。
【００９９】
更に、本明細書中に記載される画像捕捉機器は、幾つかの実施では、３Ｄディスプレイによる再生のために３Ｄ画像を捕捉することができる。例えば、第１のカメラ１２、第２のカメラ１７、カメラモジュール３０の画像センサ、又は、ビデオカメラの画像センサを使用して、３Ｄ画像を捕捉することができる。１つの例では、３Ｄ画像を捕捉するために第１のカメラ１２、第２のカメラ１７、又は、カメラモジュール３０の画像センサを使用することができ、また、電話機１０は、３Ｄ画像を記憶し、ディスプレイ１１を使用して３Ｄ画像を再生することができる。そのような設計により、３Ｄ画像のライブ又は同時の捕捉及び表示が容易になる。
【０１００】
３Ｄコンテンツ、ホログラフィックコンテンツ、又は、３Ｄディスプレイに表示される他のコンテンツは、例えば図３Ａ〜図６に関連して説明された生画像データを圧縮する技術にしたがうなど、本明細書中に記載される技術のいずれかに従って圧縮され得る。例えば、電話機１０は、２つ以上の第１のカメラ１２を使用して、第２のカメラ１７を使用して、又は、カメラモジュール３０の画像センサの１つ以上を使用して（又は、電話機１０に取り付けられる異なるカメラモジュールを使用して）、圧縮生画像データを捕捉してもよい。電話機１０は、その後、電話機１０のメモリデバイス上の１つ以上のファイル又は電話機１０に取り付けられるモジュール内のメモリデバイスに圧縮画像データを記録することができる。電話機１０は、その後、画像データにアクセスして、それを解凍し、また、必要に応じて３Ｄ、ホログラフィックコンテンツなどとしてディスプレイ１１上で再生するためにその画像データを準備することができる。電話機１０は、幾つかの実施形態によれば、更に、電話機１０が記録している間に最初にコンテンツを圧縮及び記憶することなくリアルタイムで３Ｄ、ホログラフィック、又は、他のコンテンツを再生できる。
ＶＩ．更なる実施形態及び用語
【０１０１】
図７は、電話機１００と通信する画像捕捉機器５０を示す。画像捕捉機器５０は、例えば、カメラモジュール３０の実施形態となり得る、及び、電話機１００は、例えば、電話機１０の実施形態となり得る。電話機１００は、モジュール式であり、本明細書中に記載されるように１つ以上のモジュールに結合され得る。例えば、電話機は、電源６０、メモリデバイス６２、又は入出力（Ｉ／Ｏ）機器６４、並びに、画像捕捉機器５０又は１つ以上の他のモジュール６６に機械的又は電気的に接続され得る。更に、電話機１００は、電源６０、メモリデバイス６２、入出力（Ｉ／Ｏ）機器６４、及び、画像捕捉機器５０を介して、１つ以上の他のモジュール６１、６３、６５、６７のそれぞれと電気的に通信することができ、また、１つ以上の他のモジュール６１、６３、６５、６７はそれぞれ、電源６０、メモリデバイス６２、入出力（Ｉ／Ｏ）機器６４、及び、画像捕捉機器５０に結合することができる。モジュラーフォン及びカメラモジュールの実施形態及び特徴は、その開示全体が参照により本願に組み入れられる米国特許出願公開第２０１７／０１７１３７１号に更に記載される。
【０１０２】
図８は、電話機１００の構成要素を示す。電話機１００は、サブ通信モジュール１３０、コネクタ１６５、及び、イヤホン接続ジャック１６７などの外部接続機器を使用することにより、外部機器に接続されてもよい。「外部機器」としては、電子機器から取り外し可能で且つケーブルを介して接続される、イヤホン、外部スピーカ、ユニバーサルシリアルバス（ＵＳＢ）メモリ、充電器、クレードル／ドック、デジタルマルチメディアブロードキャスト（ＤＭＢ）アンテナ、電子決済関連機器、ヘルスケア機器（例えば血糖値テスター）、ゲームコンソール、車両ナビゲーション、携帯電話、スマートフォン、タブレットＰＣ、デスクトップＰＣ、サーバーなどの様々な機器を挙げることができる。
【０１０３】
電話機１００は、タッチスクリーンディスプレイ１９０及びタッチスクリーンコントローラ１９５を含む。電話機１００は、コントローラ１１０、モバイル通信モジュール１２０、サブ通信モジュール１３０、マルチメディアモジュール１４０、カメラモジュール１５０、全地球測位システム（ＧＰＳ）モジュール１５５、入出力モジュール１６０、センサモジュール１７０、メモリ１７５、及び、電源１８０も含む。サブ通信モジュール１３０は、無線ローカルエリアネットワーク（ＷＬＡＮ）１３１及び短距離通信モジュール１３２のうちの少なくとも一方を含み、また、マルチメディアモジュール１４０は、ブロードキャスト通信モジュール１４１、オーディオ再生モジュール１４２、及び、ビデオ再生モジュール１４３のうちの少なくとも１つを含む。入出力モジュール１６０は、ボタン１６１、マイクロフォン１６２、スピーカ１６３、振動モータ１６４、コネクタ１６５、及び、キーパッド１６６のうちの少なくとも１つを含む。加えて、電子機器１００は、１つの方向に面する第１の光１５３及び他の方向に面する第２の光１５４を含む１つ以上の光を含むことができる。
【０１０４】
コントローラ１１０は、中央処理装置（ＣＰＵ）１１１、電話機１００を制御するためのオペレーティングシステム（ＯＳ）などの制御プログラムを記憶するためのリードオンリーメモリ（ＲＯＭ）１１２、及び、外部ソースから入力された信号又はデータを記憶するための又は電話機１００の作業結果のためのメモリ空間として使用されるためのランダムアクセスメモリ（ＲＡＭ）１１３を含んでもよい。ＣＰＵ１１１は、シングルコア、デュアルコア、トリプルコア、又は、クアッドコアを含んでもよい。ＣＰＵ１１１、ＲＯＭ１１２、及び、ＲＡＭ１１３は、内部バスを介して相互に接続されてもよい。
【０１０５】
コントローラ１１０は、モバイル通信モジュール１２０、サブ通信モジュール１３０、マルチメディアモジュール１４０、カメラモジュール１５０、ＧＰＳモジュール１５５、入出力モジュール１６０、センサモジュール１７０、メモリ１７５、電源１８０、タッチスクリーンディスプレイ１９０、及び、タッチスクリーンコントローラ１９５を制御してもよい。
【０１０６】
モバイル通信モジュール１２０は、コントローラ１１０の制御下で、少なくとも１対１アンテナ又は１対多アンテナを使用したモバイル通信を介して電子機器１００を外部機器に接続する。モバイル通信モジュール１２０は、電話機１００に入力される電話番号を持つ電話機を用いて、携帯電話、スマートフォン、タブレットＰＣ、又は、他の機器に／から、音声通話、ビデオ会議通話、ショートメッセージサービス（ＳＭＳ）メッセージ、又は、マルチメディアメッセージサービス（ＭＭＳ）メッセージのための無線信号を送信する／受信する。
【０１０７】
サブ通信モジュール１３０は、ＷＬＡＮモジュール１３１及び短距離通信モジュール１３２の少なくとも１つを含んでもよい。例えば、サブ通信モジュール１３０は、ＷＬＡＮモジュール１３１又は短距離通信モジュール１３２のいずれか又は両方を含んでもよい。
【０１０８】
ＷＬＡＮモジュール１３１は、コントローラ１１０の制御下で、無線アクセスポイント（ＡＰ）がある場所でインターネットに接続されてもよい。ＷＬＡＮモジュール１３１は、ＷＬＡＮ電気電子学会（ＩＥＥＥ）８０２．１１ｘ標準規格をサポートする。短距離通信モジュール１３２は、コントローラ１１０の制御下で、電話機１００と画像レンダリング機器との間の短距離通信を行なってもよい。短距離通信としては、ＢＬＵＥＴＯＯＴＨ  ＳＰＥＣＩＡＬ  ＩＮＴＥＲＥＳＴ  ＧＲＯＵＰ、ＩＮＣから市販されている２．４  ＧＨｚ帯域の短距離無線通信技術であるＢＬＵＥＴＯＯＴＨ（商標）と互換性のある通信、Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ（ＩｒＤＡ）、ＷＩ−ＦＩ（商標）ＤＩＲＥＣＴ、ＷＩ−ＦＩ  ＡＬＬＩＡＮＣＥ、ＮＦＣから市販されているコンピューターネットワークを介したデータ交換のための無線技術などを挙げることができる。
【０１０９】
電話機１００は、電話機１００の性能要件に基づいて、モバイル通信モジュール１２０、ＷＬＡＮモジュール１３１、及び、短距離通信モジュール１３２のうちの少なくとも１つを含んでもよい。例えば、電話機１００は、電話機１００の性能要件に基づいて、モバイル通信モジュール１２０、ＷＬＡＮモジュール１３１、及び、短距離通信モジュール１３２の組み合わせを含んでもよい。
【０１１０】
マルチメディアモジュール１４０は、ブロードキャスト通信モジュール１４１、オーディオ再生モジュール１４２、又は、ビデオ再生モジュール１４３を含んでもよい。ブロードキャスト通信モジュール１４１は、コントローラ１１０の制御下で放送局から放送通信アンテナを介して送信される放送信号（例えば、テレビ放送信号、ラジオ放送信号、又は、データ放送信号）及び更なる放送情報（例えば、電気番組ガイド（ＥＰＧ）又は電気サービスガイド（ＥＳＧ））を受信してもよい。オーディオ再生モジュール１４２は、コントローラ１１０の制御下で記憶又は受信されたデジタルオーディオファイル（例えば、ｍｐ３、ｗｍａ、ｏｇｇ、又は、ｗａｙなどの拡張子を有するファイル）を再生することができる。ビデオ再生モジュール１４３は、コントローラ１１０の制御下で記憶又は受信されたデジタルビデオファイル（例えば、ｍｐｅｇ、ｍｐｇ、ｍｐ４、ａｖｉ、ｍｏｖｅ、又はｍｋｖなどの拡張子を有するファイル）を再生することができる。また、ビデオ再生モジュール１４３はデジタルオーディオファイルを再生してもよい。
【０１１１】
マルチメディアモジュール１４０は、ブロードキャスト通信モジュール１４１を除いて、オーディオ再生モジュール１４２及びビデオ再生モジュール１４３を含んでもよい。マルチメディアモジュール１４０のオーディオ再生モジュール１４２又はビデオ再生モジュール１４３は、コントローラ１１０に含まれてもよい。
【０１１２】
カメラモジュール１５０は、コントローラ１１０の制御下で静止画像又はビデオ画像を捕捉するための１つ以上のカメラを含んでもよい。更に、１つ以上のカメラは、画像を捕捉するための光量を与えるための補助光源（例えばフラッシュ）を含んでもよい。１つの例では、１つ以上のカメラが電話機１００の前面に配置されてもよく、また、１つ以上の他のカメラが電話機１００の後面に配置されてもよい。幾つかの実施では、３次元（３Ｄ）静止画像又は３Ｄビデオ画像を捕捉する２つ以上のカメラが互いに隣接して配置されてもよい（例えば、２つ以上のカメラ間の距離がそれぞれ１ｃｍ〜８ｃｍの範囲であってもよい）。
【０１１３】
ＧＰＳモジュール１５５は、地球の周りの軌道にある複数のＧＰＳ衛星から無線信号を受信し、また、ＧＰＳ衛星から電話機１００への到着時間を使用することにより電話機１００の位置を計算してもよい。
【０１１４】
入出力モジュール１６０は、複数のボタン１６１、マイクロフォン１６２、スピーカ１６３、振動モータ１６４、コネクタ１６５、及び、キーパッド１６６のうちの少なくとも１つを含んでもよい。
【０１１５】
ボタン１６１のうちの少なくとも１つは、電話機１００のハウジングの前面、側面、又は、後面に配置されてもよく、電源／ロックボタン、音量ボタン、メニューボタン、ホームボタン、戻るボタン、検索ボタンのうちの少なくとも１つを含んでもよい。
【０１１６】
マイクロフォン１６２は、コントローラ１１０の制御下で声又は音を受信することにより電気信号を生成する。
【０１１７】
スピーカ１６３は、コントローラ１１０の制御下で、モバイル通信モジュール１２０、サブ通信モジュール１３０、マルチメディアモジュール１４０、又は、カメラモジュール１５０からの様々な信号（例えば、ラジオ信号、放送信号、デジタルオーディオファイル、デジタルビデオファイル又は写真信号）に対応する音を外部に出力してもよい。スピーカ１６３は、電子機器１００によって実行される機能に対応する音（例えば、ボタンを押す音又は呼び出し音）を出力してもよい。電話機１００のハウジング上又はハウジング内の少なくとも１つの位置に配置された１つ以上のスピーカ１６３が存在してもよい。
【０１１８】
振動モータ１６４は、コントローラ１１０の制御下で電気信号を機械的振動に変換してもよい。例えば、振動モードの電話機１００は、他の機器から音声通話を受信するときに振動モータ１６４を作動させる。電話機１００のハウジング内に少なくとも１つの振動モータ１６４が存在してもよい。振動モータ１６４は、タッチスクリーンディスプレイ１９０上でのタッチ行為又はユーザの連続タッチに応答して動作してもよい。
【０１１９】
コネクタ１６５は、電話機１００を外部機器又は電源に接続するためのインタフェースとして使用されてもよい。コントローラ１１０の制御下で、電話機１００は、コネクタ１６５に接続されたケーブルを介して電子機器１００のメモリ１７５に記憶されたデータを外部機器に送信してもよく又は外部機器からデータを受信してもよい。更に、電話機１００は、コネクタ１６５に接続されたケーブルを介して電源により給電されてもよく、又は、電源を使用してバッテリを充電してもよい。
【０１２０】
キーパッド１６６は、電話機１００を制御するためにユーザからキー入力を受けてもよい。キーパッド１６６は、電話機１００に形成される機械的キーパッド、又は、タッチスクリーンディスプレイ１９０に表示される仮想キーパッドを含む。電話機１００に形成される機械的キーパッドは、電話機１００の性能要件又は構造に応じて、電話機１００の実装から随意的に省かれてもよい。
【０１２１】
イヤホンは、イヤホン接続ジャック１６７に挿入されてもよく、したがって、電話機１００に接続されてもよい。
【０１２２】
スタイラスペン１６８は、電話機１００に挿入されて取り外し可能に保持されてもよく、引き出されて電話機１００から取り外されてもよい。
【０１２３】
スタイラスペン１６８の着脱に応じて動作するペン取り外し可能な認識スイッチ１６９は、スタイラスペン１６８が取り外し可能に保持される電話機１００内の領域に装備され、スタイラスペン１６８の着脱に対応する信号をコントローラ１１０へ送信する。スタイラスペン１６８が領域に挿入されると、ペン取り外し可能認識スイッチ１６９は、スタイラスペン１６８と直接又は間接的に接触してもよい。ペン取り外し可能認識スイッチ１６９は、直接又は間接接触に基づいてスタイラスペン１６８の取り付け又は取り外しに対応する信号を生成し、その信号をコントローラ１１０に与える。
【０１２４】
センサモジュール１７０は、電話機１００の状態を検出するための少なくとも１つのセンサを含む。例えば、センサモジュール１７０としては、電話機１００へのユーザの近接を検出するための近接センサ、電子機器１００の周囲光の量を検出するための照明センサ、電話機１００の動き（例えば、電話機１００の回転、電話機１００に加えられる加速度又は振動）を検出する動きセンサ、地磁場を使用してコンパスのポイントを検出するための地磁気センサ、重力方向を検出するための重力センサ、及び、大気圧を測定することにより高度を検出するための高度計を挙げることができる。少なくとも１つのセンサは、状態を検出して、対応する信号を生成し、コントローラ１１０に送信してもよい。センサモジュール１７０のセンサは、電話機１００の性能要件に応じて付加又は削除されてもよい。
【０１２５】
メモリ１７５は、コントローラ１１０の制御下で、モバイル通信モジュール１２０、サブ通信モジュール１３０、マルチメディアモジュール１４０、カメラモジュール１５０、ＧＰＳモジュール、入出力モジュール１６０、センサモジュール１７０、タッチスクリーンディスプレイ１９０の動作に従って入力される／出力される信号又はデータを記憶してもよい。メモリ１７５は、電話機１００又はコントローラ１１０を制御するための制御プログラム及びアプリケーションを記憶してもよい。
【０１２６】
「ストレージ」という用語は、メモリ１７５を指すことができ、また、コントローラ１１０内のＲＯＭ１１２、ＲＡＭ１１３、又は、電話機１００に組み込まれるメモリカード（例えば、セキュアデジタル（ＳＤ）カード、メモリスティックなど）を指すこともできる。また、ストレージは、不揮発性メモリ、揮発性メモリ、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）などを含んでもよい。
【０１２７】
電源１８０は、コントローラ１１０の制御下で、電話機１００のハウジング内に配置される少なくとも１つのバッテリから電力を供給してもよい。したがって、少なくとも１つのバッテリは電話機１００に給電できる。電源１８０は、コネクタ１６５に接続されたケーブルを介して外部電源から入力される電力を電話機１００に供給してもよい。電源１８０は、無線充電技術を使用して外部電源から無線電力を電話機１００に供給してもよい。
【０１２８】
タッチスクリーンコントローラ１９５は、コントローラ１１０によって処理される情報（例えば、通話、データ送信、放送、又は、写真撮影を行うために生成されるべき情報）を受信して、その情報をタッチスクリーンディスプレイ１９０に表示されるべきデータに変換するとともに、そのデータをタッチスクリーンディスプレイ１９０に与える。タッチスクリーンディスプレイ１９０は、タッチスクリーンコントローラ１９５から受信されるデータを表示する。例えば、通話モードにおいて、タッチスクリーンディスプレイ１９０は、通話に関するユーザインタフェース（ＵＩ）又はグラフィックユーザインタフェース（ＧＵＩ）を表示してもよい。タッチスクリーンディスプレイ１９０は、液晶ディスプレイ、薄膜トランジスタ−液晶ディスプレイ、有機発光ダイオード、フレキシブルディスプレイ、３Ｄディスプレイ（例えば、本明細書中に記載される３Ｄ画像を与えるため）、マルチビューディスプレイ、電気泳動ディスプレイ、又は、それらの組み合わせなどのうちの少なくとも１つを含んでもよい。タッチスクリーンディスプレイ１９０は、更に、２Ｄビデオ画像、３Ｄビデオ画像、及び、２Ｄ／３Ｄ仮想現実（ＶＲ）、拡張現実（ＡＲ）、及び、混合現実（ＭＲ）を含むなど、本明細書中に記載されるようなビデオ画像を提示するために使用され得る。幾つかの実施において、電話機１００は、タッチスクリーンディスプレイ１９０又は電話機１００の他のディスプレイ上など、提示用のホログラフィックビデオ画像を処理して出力するホログラフィックモジュールを更に含む。
【０１２９】
タッチスクリーンディスプレイ１９０は、出力機器として、また、入力機器としても使用することができ、また、後者の場合、タッチスクリーンとして動作するタッチスクリーンパネルを有することができる。タッチスクリーンディスプレイ１９０は、ＵＩ又はＧＵＩへの少なくとも１つのタッチに対応するアナログ信号をタッチスクリーンコントローラ１９５に送信してもよい。タッチスクリーンディスプレイ１９０は、ユーザの物理的接触（例えば、親指を含む指による接触）による又はタッチ可能な入力機器（例えば、スタイラスペン）による少なくとも１つのタッチを検出してもよい。また、タッチスクリーンディスプレイ１９０は、少なくとも１つのタッチのうちでタッチのドラッグ移動を受信し、ドラッグ移動に対応するアナログ信号をタッチスクリーンコントローラ１９５に送信してもよい。タッチスクリーンディスプレイ１９０は、例えば、抵抗方式、容量方式、赤外線方式、音波方式などで少なくとも１つのタッチを検出するように実装されてもよい。
【０１３０】
「タッチ」という用語は、ユーザの物理的な接触又はタッチ可能な入力機器との接触による物理的なタッチに限定されず、タッチレス近接を含んでもよい（例えば、タッチスクリーンディスプレイ１９０とユーザの身体又はタッチ可能な入力機器との間で１ｍｍ未満の検出可能な距離を維持する）。タッチスクリーンディスプレイ１９０からの検出可能な距離は、電話機１００の性能要件又は電話機１００の構造に応じて変化する場合があり、より詳細には、タッチスクリーンディスプレイ１９０は、タッチ検出及びホバリング検出のための異なる値（例えば、現在の値）を出力して、ユーザの身体又はタッチ可能な入力機器及び非接触入力との接触によって発生したタッチイベント（例えばホバリングイベント）を区別して検出してもよい。更に、タッチスクリーンディスプレイ１９０は、ホバリングイベントが発生する場所からの距離にわたってホバリング検出のための異なる値（例えば、現在の値）を出力してもよい。
【０１３１】
タッチスクリーンコントローラ１９５は、タッチスクリーンディスプレイ１９０から受信されるアナログ信号をデジタル信号に変換し（例えば、タッチパネル上又はディスプレイスクリーン上のＸＹ座標で）、そのデジタル信号をコントローラ１１０に送信する。コントローラ１１０は、タッチスクリーンコントローラ１９５から受信されるデジタル信号を使用することによりタッチスクリーンディスプレイ１９０を制御してもよい。例えば、タッチイベント又はホバリングイベントに応じて、コントローラ１１０は、タッチスクリーンディスプレイ１９０に表示されるショートカットアイコンを選択又は実行できるようにしてもよい。タッチスクリーンコントローラ１９５はコントローラ１１０に組み込まれてもよい。
【０１３２】
更に、タッチスクリーンコントローラ１９５は、タッチスクリーンディスプレイ１９０を介して出力される値（例えば、現在の値）を検出することにより、ホバリングイベントが発生する場所とタッチスクリーンディスプレイ１９０との間の距離を決定して、決定された距離をデジタル信号（例えば、Ｚ座標）に変換し、そのデジタル信号をコントローラ１１０に与えてもよい。
【０１３３】
電話機１００の構成要素又はモジュールのうちの１つ以上は、電話機１００のハウジングに取り外し可能に結合され得る。この結合を説明するのに役立てるべく、電話機１００のハウジングが電話機１０であると理解されてもよいが、構成要素又はモジュールの１つ以上は、電話機１０の機能を付加する又は削除するためにモジュールコネクタ２０を介して電話機１０に取り外し可能に結合され得る。１つの例として、電話機１０にカメラモジュール３０の一部又は全部の機能を与えるために、カメラモジュール３０の一部又は全部を電話機１０に取り外し可能に結合することができる。
【０１３４】
本明細書中で示されて説明される特定の電子機器は携帯電話であるが、他のハンドヘルド電子機器の実施形態は、携帯電話ではなく、電話機能を含まない。例えば、幾つかの実施形態は、本明細書中に記載される電子機器と同じ又は同様の外観を有するが、タブレットコンピュータ機器又はデジタルカメラの場合のような電話機能を含まない。それにもかかわらず、そのような実施形態は、本明細書中に記載される非電話構成要素及び機能の任意の組み合わせ、例えば、以下、すなわち、コントローラ１１０、タッチスクリーンディスプレイ１９０及びタッチスクリーンコントローラ１９５、カメラモジュール１５０、マルチメディアモジュール１４０、サブ通信モジュール１３０、第１のライト１５３、第２のライト１５４、ＧＰＳモジュール１５５、Ｉ／Ｏモジュール１６０、及び、メモリ１７６、又は、これらの一部のうちの１つ以上を含んでもよい。
【０１３５】
図９Ａは、拡張モジュール９００及びカメラモジュール３０に取り付けるように位置決めされる電話機１０の斜視図を示し、また、図９Ｂは、電話機１０、拡張モジュール９００、及び、カメラモジュール３０を取り付けたときの斜視図を示す。拡張モジュール９００は、電話機１０の容量を増強するためにメモリデバイス、バッテリ、又は、他の構成要素を含むことができる。拡張モジュール９００は、磁石を支持するハウジングを含むことができ、磁石は、図１Ｃ及び図１Ｄのカメラモジュール３０のものと構造及び機能が類似し得る。磁石は、一方側の電話機１０及び他方側のカメラモジュール３０に対するハウジングの結合を容易にし得る。それに加えて又は代えて、少なくとも摩擦嵌合、インターロック構造、締結具、機械的スナップ表面構造、機械的ラッチ表面構造、機械的締まり嵌め表面構造などを介して結合を達成することができる。
【０１３６】
拡張モジュール９００は、モジュールと交換可能に結合できるとともにモジュール又はモジュールに結合される１つ以上の他の機器から電力又はデータを受信する又はモジュール又はモジュールに結合される１つ以上の他の機器に電力又はデータを送信することができる、モジュールコネクタ２０と同様又は同じ、モジュールコネクタ（例えば、カメラモジュール３０上の対応するコネクタ（図示せず）に結合するための１つの拡張モジュールコネクタ９１０との２つのモジュールコネクタ及びモジュールコネクタ２０に結合するための他の拡張モジュールコネクタ（図示せず））を含むこともできる。
【０１３７】
ここでは、場合により、Ｇｒｅｅｎ１及びＧｒｅｅｎ２が別々に又は異なって処理されるように記載される場合があるが、Ｇｒｅｅｎ１とＧｒｅｅｎ２とが別々に又は異なって処理されてもよく又は処理されなくてもよい。例えば、Ｇｒｅｅｎ１ピクセル及びＧｒｅｅｎ２ピクセルは、別個のＤＣＴマクロブロックに分けられ得る又は別個のＤＣＴマクロブロックに分けられなくてもよい。他の例として、Ｇｒｅｅｎ１ピクセル及びＧｒｅｅｎ２ピクセルは、別個のスキャンに分けられ得る又は別個のスキャンに分けられなくてもよい。更に他の例において、スライス構造は、Ｇｒｅｅｎ１及びＧｒｅｅｎ２のための別個の部分を有することができ又はＧｒｅｅｎ１及びＧｒｅｅｎ２のための別個の部分を有さなくてもよい。更なる例において、Ｇｒｅｅｎ１及びＧｒｅｅｎ２は、スライスヘッダ構造内で別個のサイズを有することができ又はスライスヘッダ構造内で別個のサイズを有さなくてもよい。
【０１３８】
本明細書中では、様々な画像捕捉機器（又は機器の特定の構成要素）が１つ以上の機能を果たすように「構成される」として記載される場合がある。本明細書中で使用されるように、このことは、機器が指定された機能を果たす少なくとも１つのモード（例えば、ユーザが選択可能なモード）に機器を設定できることを意味する。例えば、機器は、必ずしも全ての動作モードで指定された機能を果たすとは限らない場合がある。これらのラインに沿って、「構成された」という表現の使用は、機能を果たすように「構成される」べく機器が実際に現在動作モードに設定されなければならないことを意味するのではなく、機器をそのモードに選択的に設定（例えば設定されるようにプログラム）できることを意味するにすぎない。
【０１３９】
項目のリストの「うちの少なくとも１つ」に言及する本明細書中で使用される表現は、単一の要素を含むそれらの項目の任意の組み合わせを指す。一例として、「ａ、ｂ又はｃのうちの少なくとも１つ」は、ａ、ｂ、ｃ、ａ−ｂ、ａ−ｃ、ｂ−ｃ及びａ−ｂ−ｃを網羅するように意図される。
【０１４０】
本明細書中に開示される実装に関連して記載される様々な例示的な論理、論理ブロック、モジュール、回路、及び、アルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア又は両方の組み合わせとして実装されてもよい。ハードウェアとソフトウェアの互換性は、機能に関して一般的に説明されており、上記の様々な例示的な構成要素、ブロック、モジュール、回路、及び、ステップに示される。そのような機能がハードウェアで実装されるかソフトウェアで実装されるかは、特定の用途とシステム全体に課される設計上の制約とに依存する。
【０１４１】
本明細書中に開示される態様に関連して記載される様々な例示的なロジック、論理ブロック、モジュール、及び、回路を実装するために使用されるハードウェア及びデータ処理装置は、シングルチップ又はマルチチッププロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）又はその他のプログラマブルロジック機器、ディスクリートゲート又はトランジスタロジック、ディスクリートハードウェアコンポーネント、又は、本明細書中に記載される機能を果たすように設計されたこれらの任意の組み合わせを用いて実装又は実行されてもよい、プロセッサは、マイクロプロセッサ又は任意のプロセッサ、コントローラ、マイクロコントローラ、或いは、状態機械であってもよい。プロセッサは、ＤＳＰとマイクロプロセッサとの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアと組み合わせた１つ以上のマイクロプロセッサ、或いは、任意の他のそのような構成など、電子機器の組み合わせとして実装されてもよい。幾つかの実施において、特定のステップ及び方法は、所定の機能に固有の回路によって実行されてもよい。
【０１４２】
１つ以上の態様において、記載される機能は、この明細書中に開示される構造及びそのそれらの構造的均等物を含むハードウェア、デジタル電子回路、コンピュータソフトウェア、ファームウェアで又はそれらの任意の組み合わせで実装されてもよい。この明細書中に記載される主題の実装は、１つ以上のコンピュータプログラムとして、例えば、データ処理装置による実行のために又はデータ処理装置の動作を制御するためにコンピュータ記憶媒体で符号化されるコンピュータプログラム命令の１つ以上のモジュールとして実装することもできる。
【０１４３】
ソフトウェアで実装される場合、機能は、コンピュータ可読媒体上の１つ以上の命令又はコードに記憶され或いはそのような命令又はコードとして送信されてもよい。本明細書中に開示される方法又はアルゴリズムのステップは、コンピュータ可読媒体上に存在し得るプロセッサ実行可能ソフトウェアモジュールで実施されてもよい。コンピュータ可読媒体は、コンピュータ記憶媒体、及び、ある場所から他の場所にコンピュータプログラムを転送できるようにし得る任意の媒体を含む通信媒体の両方を含む。記憶媒体は、コンピュータによりアクセスされ得る任意の利用可能な媒体であってもよい。限定ではなく一例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ又は他の光ディスクストレージ、磁気ディスクストレージ又は他の磁気記憶デバイス、又は、命令又はデータ構造の形態を成す所望のプログラムコードを記憶するために使用されてもよく且つコンピュータによりアクセスされてもよい任意の他の媒体を含んでもよい。上記の組み合わせもコンピュータ可読媒体の範囲内に含まれ得る。加えて、方法又はアルゴリズムの動作は、コンピュータプログラムプロダクトに組み込まれ得る機械可読媒体上及びコンピュータ可読媒体上のコード及び命令のうちの１つ又は任意の組み合わせ又はセットとして存在してもよい。
【０１４４】
この開示に記載される実施に対する様々な修正は、当業者に容易に明らかであり、また、本明細書中に規定される一般的な原理は、この開示の思想又は範囲から逸脱することなく他の実施に適用され得る。したがって、特許請求の範囲は、本明細書中に示される実施に限定されるように意図されず、この開示、原理、及び、本明細書中に開示される新規の特徴と一致する最も広い範囲を与えられるべきである。
【０１４５】
別個の実施との関連においてこの仕様で記載される特定の特徴は、単一の実施で組み合わせて実施することもできる。逆に、単一の実施との関連で記載される様々な特徴は、複数の実施で別個に又は任意の適切な部分的組み合わせで実施することもできる。更に、特徴は、特定の組み合わせで作用するものとして上記で説明され、当初はそのようなものとして特許請求の範囲に記載されもするが、特許請求の範囲に記載される組み合わせからの１つ以上の特徴は、場合によっては、組み合わせから削除可能であり、また、特許請求の範囲に記載される組み合わせは、部分的組み合わせ又は部分的組み合わせの変形を対象としてもよい。
【０１４６】
文脈が別段に明確に要求しなければ、説明及び特許請求の範囲の全体にわたって、「備える」、「備えている」などの単語は、排他的又は網羅的な意味とは対照的に、包括的な意味で、つまり、「〜含むがこれに限定されない」という意味で解釈されるべきである。本明細書中で一般的に使用される「結合」という単語は、直接に接続されるか又は１つ以上の中間要素を介して接続されるかのいずれかであってもよい２つ以上の要素を指す。同様に、本明細書中で一般的に使用される「接続される」という単語は、直接に接続されるか又は１つ以上の中間要素を介して接続されるかのいずれかであってもよい２つ以上の要素を指す。更に、「本明細書中」、「上記」、「以下」という単語及び同様の意味の単語は、この出願で使用される場合、この出願の任意の特定の部分ではなくこの出願全体を指すものとする。文脈が許す場合、単数又は複数の数字を使用する上記の詳細な説明の単語はそれぞれ複数又は単数を含む場合がある。
２つ以上の項目のリストを参照する「又は」という単語は、その単語の以下の全ての解釈、すなわち、リスト内の項目のいずれか、リスト内の全ての項目、及び、リスト内の項目の任意の組み合わせを網羅する。
【０１４７】
更に、とりわけ、「できる」、「できた」、「してもよい」、「し得る」、「例えば」、「例として」、「など」のような本明細書中で使用される条件付き用語は、特に別段述べられなければ、或いは、使用される文脈内で別な態様で理解されなければ、一般に、特定の実施形態が特定の特徴、要素又は状態を含むが、他の実施形態がそれらを含まないことを伝えるべく意図される。したがって、そのような条件付き用語は、一般に、特徴、要素又は状態が１つ以上の実施形態に何らかの形で必要とされること或いは１つ以上の実施形態が著者の入力又はプロンプトの有無にかかわらずこれらの特徴、要素又は状態が任意の特定の実施形態に含まれる又は任意の特定の実施形態で実行されるかどうかを決定するためのロジックを必然的に含むことを意味するように意図されない。
【０１４８】
実施形態の上記の詳細な説明は、網羅的である又は上記で開示された正にその形態に限定しているように意図されない。例示の目的で特定の実施形態及び例が上記で説明されるが、当業者が認識するように、本明細書で説明された本発明の範囲内で様々な同等の修正が可能である。例えば、プロセス又はブロックは所定の順序で提示されるが、別の実施形態では、ステップを含むルーチンを実行したり、ブロックを含むシステムを異なる順序で使用したりすることができ、一部のプロセス又はブロックが削除、移動、追加、細分化、結合、又は変更されてもよい。これらのプロセス又はブロックはそれぞれ、様々な方法で実装されてもよい。また、プロセス又はブロックは連続して実行されるように示されている場合があるが、これらのプロセス又はブロックは代わりに並列で実行されるか、又は異なる時間に実行される場合がある。
【０１４９】
本明細書で提供される教示は、上記のシステムだけでなく、他のシステムにも適用され得る。上述の様々な実施形態の要素及び動作を組み合わせて、更なる実施形態を提供することができる。
【０１５０】
本発明の特定の実施形態を説明してきたが、これらの実施形態は例としてのみ提示されており、本開示の範囲を限定することを意図するものではない。実際に、本明細書中に記載される新規の方法及びシステムは、様々な他の形態で具現化されてもよく、更に、本開示の思想から逸脱することなく、本明細書中に記載される方法及びシステムの形態における様々な省略、置換、及び、変更を行うことができる。添付の特許請求の範囲及びそれらの同等物は、本開示の範囲及び思想に含まれるような形態又は修正を網羅することを意図している。
【図１Ａ】
2020526966.tif 000014
【図１Ｂ】
2020526966.tif 000015
【図１Ｃ】
2020526966.tif 000016
【図１Ｄ】
2020526966.tif 000017
【図２】
2020526966.tif 000018
【図３Ａ】
2020526966.tif 000019
【図３Ｂ】
2020526966.tif 000020
【図４】
2020526966.tif 000021
【図５】
2020526966.tif 000022
【図６】
2020526966.tif 000023
【図７】
2020526966.tif 000024
【図８】
2020526966.tif 000025
【図９Ａ】
2020526966.tif 000026
【図９Ｂ】
2020526966.tif 000027
【国際調査報告】
2020526966.tif 000028
2020526966.tif 000029
2020526966.tif 000030