(57)【要約】カメラモジュールが、フレームバッファメモリの大きさを大幅に低減しつつ、画像データの圧縮とその画像データのサムネール画像の作成を画像の数行単位でのＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）の順序で行ない、ホストモジュールに送信することを可能とする技術に関する。これは、例えば、撮影を行なって得られたデータを送信するカメラモジュールと、データを受信するホストモジュールからなる電子機器であって、カメラモジュールが、１フレームの画像データの小部分を圧縮したデータを含む圧縮小部分と、小部分の解像度を落としたデータを含む副小部分とを、交互にホストモジュールに送信するような電子機器によって達成することができる。
2004112396.tif 000002
【特許請求の範囲】
【請求項１】
撮影を行なって得られたデータを送信するカメラモジュールと、前記データを受信するホストモジュールとからなる電子機器において、前記カメラモジュールは、１フレームの画像データの小部分を圧縮したデータを含む圧縮小部分と、前記小部分の解像度を落としたデータを含む副小部分とを、交互に前記ホストモジュールに送信することを特徴とする、電子機器。
【請求項２】
１フレームの画像データの小部分を保持し、前記小部分を圧縮したデータを含む圧縮小部分と前記小部分の解像度を落としたデータを含む副小部分とを作成し、前記圧縮小部分と前記副小部分とを順次送信する処理を、前記フレームの複数の小部分について行なうことを特徴とする画像処理装置。
【請求項３】
請求項２に記載の画像処理装置において、前記圧縮小部分は、前記小部分を圧縮したデータの一部を含む画像処理装置。
【請求項４】
請求項２に記載の画像処理装置において、前記圧縮小部分は、前記小部分を圧縮したデータの全部を含む画像処理装置。
【請求項５】
請求項２から４のいずれか１項に記載の画像処理装置において、前記画像処理装置は、前記圧縮小部分のデータ長が可変長とされている画像処理装置。
【請求項６】
請求項２から５のいずれか１項に記載の画像処理装置において、前記副小部分と前記圧縮小部分とが、互いに分離可能であるように作成される画像処理装置。
【請求項７】
請求項２から６のいずれか１項に記載の画像処理装置において、送信するデータのデータ列から特定のビットパターンを検出し、前記特定のビットパターンを保護する符号化手段を有する画像処理装置。
【請求項８】
請求項２から７のいずれか１項に記載の画像処理装置において、前記圧縮の方式は、ＪＰＥＧ方式またはＭｏｔｉｏｎＪＰＥＧ方式のいずれかである画像処理装置。
【請求項９】
請求項８に記載の画像処理装置において、前記副小部分は、前記小部分を離散コサイン変換した結果から作成されること特徴とする、画像処理装置。
【請求項１０】
請求項８又は９に記載の画像処理装置において、前記小部分を圧縮する度に、圧縮処理の初期化を行なうことを特徴とする、画像処理装置。
【請求項１１】
請求項２から１０のいずれか１項に記載の画像処理装置を備えたデータ処理装置。
【請求項１２】
請求項２から１０のいずれか１項に記載の画像処理装置を備えたカメラ装置。
【請求項１３】
受信したデータを処理する画像処理装置であって、
前記データは、１フレームの画像データを圧縮した圧縮画像データと、前記１フレームの画像データの解像度を落としたサムネールデータを含み、さらに前記データは、前記圧縮画像データの小部分と、前記サムネールデータの小部分とが、交互に現れるデータ構造を持つことを特徴とし、
前記画像処理装置は、前記データを受信し、前記受信したデータから複数の前記圧縮画像データの小部分を抽出して前記１フレーム全体の圧縮画像データを構成し、さらに前記受信したデータから複数の前記サムネールデータの小部分を抽出して前記１フレーム全体のサムネールデータを構成することを特徴とする、画像処理装置。
【請求項１４】
請求項１３に記載の画像処理装置において、前記受信したデータのデータ列から特定のビットパターンで保護されたビットパターンを検出し、前記特定のビットパターンの保護を解く復号化手段を有する画像処理装置。
【請求項１５】
請求項１３又は１４に記載の画像処理装置を備えたデータ処理装置。
【請求項１６】
請求項１３又は１４に記載の画像処理装置を備えた電子機器。
【請求項１７】
固体撮像素子から出力されたデータをＡ／Ｄ変換して作られたＲＡＷデータを取り込み、前記ＲＡＷデータから１フレームの画像データを作成する画像データ作成手段と、前記画像データの小部分を保持し、前記小部分を圧縮したデータを含む圧縮小部分と前記小部分の解像度を落としたデータを含む副小部分とを作成し、前記圧縮小部分と前記副小部分とを順次送信する処理を、前記画像データの複数の小部分について行なうデータ処理手段とを備えることを特徴とする、画像処理装置。
【請求項１８】
撮影を行なって得られたデータを送信するカメラモジュールと、主記憶装置と表示装置とを備え前記データを受信して主記憶装置へ保存するホストモジュールと、から構成される電子機器において、
前記カメラモジュールは１フレームの画像データを作成する手段を備え、さらに前記カメラモジュールは、前記画像データの小部分を圧縮したデータを含む圧縮小部分と前記小部分の解像度を落としたデータを含む副小部分とを作成し、前記圧縮小部分と前記副小部分とを順次送信する処理を、前記画像データの複数の小部分について行なうことを特徴とし、
前記ホストモジュールは、前記副小部分と前記圧縮小部分を受信して、受信した複数の前記副小部分から前記１フレームの画像データの解像度を落としたサムネールデータを作成して前記サムネールデータを表示装置に表示し、受信した複数の前記圧縮小部分から前記１フレームの画像データを圧縮した圧縮画像データを作成して前記圧縮画像データを主記憶装置に保存することを特徴とする、電子機器。
【請求項１９】
１フレームの画像データの圧縮画像データと、前記１フレームの画像データの解像度を落として作成したサムネールデータを含むデータのデータ構造であって、前記データ構造は、前記圧縮画像データの一部分と、前記サムネールデータの一部分とが、交互に現れる構造を有することを特徴とするデータ構造。
【請求項２０】
撮影を行なって得られたデータを送信するカメラモジュールと、主記憶装置と表示装置とを備え前記データを受信して主記憶装置へ保存するホストモジュールと、から構成される電子機器において、前記カメラモジュールは、送信するデータが前記カメラモジュールと前記ホストモジュールとを接続するインターフェース部における指令コードの接頭部に一致するビットパターンを含む場合に前記ビットパターンの後に保護識別子を挿入し、前記ホストモジュールは、前記ビットパターンの後に続く前記保護識別子を削除することを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】  本発明は、静止画や動画を撮影することができる撮影機構を備えた電子機器における、画像データの圧縮とサムネール画像の作成に関する構造、画像処理装置、及びデータ構造に関する。
【背景技術】  近年、パーソナルコンピューターやＰＤＡ、携帯電話等の電子機器に、カメラが内蔵される例が増えており、静止画や動画を撮影することが可能となっている。これらの電子機器は、カメラモジュールとその他の部分（ホストモジュール）から構成される。カメラモジュールは固体撮像素子を備え、この固体撮像素子に入射した光を電気信号に変換し、さらにこの電気信号に必要な画像処理を施すことによって画像データを作成する。得られた画像データはホストモジュールに送信される。ホストモジュールは電話機能やＰＤＡ機能を担当すると共に、カメラモジュールから送信された画像データを記録媒体へ保存し、またその画像データをＬＣＤ等の表示装置に表示する。静止画や動画の撮影に用いられる構成や信号処理は、従来のデジタルカメラやデジタルビデオカメラなど、撮影専用の機器の構成や信号処理が参考にされている。このような従来技術は、特開平９−１４７０９５号公報や特開平１０−１５５１３７号公報等において見ることができる。
図９に、従来の技術を用いたカメラが内蔵された電子機器の構成と信号処理の一例を模式図で示す。従来の技術によるカメラ付携帯電話２０１は、カメラモジュール２０２とホストモジュール２０３から構成される。カメラモジュール２０２で行なわれる処理を大まかに述べると、ステップ２０５でＣＣＤ等の固体撮像素子で光を電気信号に変換し、さらにその電気信号をデジタル化する。ステップ２０６で、デジタル化された固体撮像素子の出力データから画像データを構築し、ステップ２０７で画像データの出力が行なわれる。同様にホストモジュール２０３で行なわれる処理を大まかに述べると、まずステップ２０９において、カメラモジュールから出力された画像データを受信してフレームバッファメモリに一時的に保存する。次にステップ２１０において、フレームバッファメモリに保存された画像データを読み出してＪＰＥＧ等の方式で圧縮するとともに、ステップ２１１において、フレームバッファメモリに保存された画像データを読み出して、その画像データのサムネールデータを作成する。なお、サムネールとは元の画像データの解像度を大きく落として作る画像で、主に携帯電話やデジタルカメラの小さい表示画面に表示する目的で作られる。圧縮された画像データはステップ２１２でフラッシュメモリやメモリーカードのようなデータ記録媒体に保存され、サムネールデータはステップ２１３でＬＣＤ等の表示装置に表示されるほか、データ記録媒体に圧縮された画像データと共に保存される場合もある。
しかし、デジタルカメラやデジタルビデオカメラなどの撮影専用機により発展してきた技術によって、カメラ内蔵型携帯電話やカメラ内蔵型ＰＤＡなどの電子機器を作ると、独特の課題に直面する。その１つとして、カメラモジュールとホストモジュールとの間で伝送されるデータの量を、伝送路のバス幅に収めねばならないという課題がある。カメラモジュールの固体撮像素子の解像度が高くなると、カメラモジュールとホストモジュールとの間で伝送しなければならないデータ量を伝送路のバス幅に収めるため、カメラモジュールで予め画像データの圧縮を行なうことが好ましいと考えられる。高解像度の固体撮像素子の場合のみならず、動画の撮影は更に、モジュール間データ通信量の低減が必要になる。
さらに、カメラ内蔵型の電子機器においては、ホストモジュールの処理装置の負担を考えると、サムネールの作成もカメラモジュールで行なうことが好ましいと考えられる。これは特に動画の撮影において必要である。なぜなら、動画の撮影においては１秒間に１０フレームから３０フレーム程度の画像データが次々とカメラモジュールからホストモジュールに送られてくるので、ホストモジュール側でこれら全ての画像データについて圧縮、サムネール作成、記録媒体への保存、サムネール表示と行なうのでは、ホストモジュールの負担が大きくなるからである。さらにカメラ内蔵型の電子機器においては、ホストモジュールはこれら撮影に関する機能のみならず、電話機能やスケジュール機能など、ホストモジュールに特有の機能についても処理能力を割かねばならないからである。
これらの理由により、カメラ内蔵型の電子機器においては、画像データの圧縮と、その画像データのサムネール画像の作成を、カメラモジュールで行なうことが好ましいと考えられる。ところが、サムネール作成機能を単純にホストモジュールからカメラモジュールに移動して組み込むとすれば、カメラモジュールは１フレームの画像データ全体を一時的に保存するための、大きなフレームバッファメモリを持つ必要がある。このフレームバッファメモリはカメラモジュールのコストとサイズの増大要因となり、特に画像データの解像度が増すほどに大きな問題となると考えられる。
【発明の開示】
本発明では、カメラモジュールが、フレームバッファメモリの大きさを大幅に低減しつつ、画像データの圧縮とその画像データのサムネール画像の作成を画像の数行単位でのＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）の順序で行ない、ホストモジュールに送信することを可能とする技術に関連する発明を開示する。
本願第１の発明により、撮影を行なって得られたデータを送信するカメラモジュールと、前記データを受信するホストモジュールからなる電子機器において、前記カメラモジュールは、１フレームの画像データの小部分を圧縮したデータを含む圧縮小部分と、前記小部分の解像度を落としたデータを含む副小部分とを、交互に前記ホストモジュールに送信することを特徴とする、電子機器が提供される。
また上記の課題を解決するため、本願第２の発明により、１フレームの画像データの小部分を保持し、前記小部分を圧縮したデータを含む圧縮小部分と前記小部分の解像度を落としたデータを含む副小部分とを作成し、前記圧縮小部分と前記副小部分とを順次送信する処理を、前記フレームの複数の小部分について行なうことを特徴とする画像処理装置が提供される。この画像処理装置で１つのフレームを構成する全ての小部分を順次処理していけば、当該フレーム全体の画像データの圧縮とサムネール作成を行なうことができる。しかもこの本願第２の発明による画像処理装置は、１つのフレームを構成する画像データの小部分毎に圧縮処理とサムネール作成処理を行なうので、１つのフレーム全体の画像データを一度に格納するためのバッファメモリを必要としない。このような特徴により、本願第２の発明による画像処理装置は大きさと値段を大幅に低減することができる。
この画像処理装置において、前記圧縮小部分は、前記小部分を圧縮したデータの全部を含む場合もあるし、その一部のみを含む場合もある。例えば、ある小部分を圧縮したデータの長さが長い場合、まずその圧縮データの一部のみを送信し、残りの部分は次の小部分を圧縮したデータと一緒に送信しても良い。また、この画像処理装置は、前記圧縮小部分のデータ長は、様々な種類のインタフェース要求を満たすように可変長であってもよい。なお、画像データの小部分の解像度を落とす方法としては、複数のピクセルデータから１ピクセルのみ選んで残りを捨てる方法、複数のピクセルデータを平均等の計算により１ピクセルのデータで代表させる方法、等がある。また、前記圧縮小部分と前記副小部分とを送信する順番は、実施の形態によりどちらでも良い。
なお、ここでフレームとは１つの完成された画像という意味で用いており、端的には１枚の静止画や、動画を構成する１つ１つのコマを意味している。従って本願第２の発明は静止画のみならず動画の処理が可能であり、動画処理の場合に本発明の効果が最大限に見出される。なお、１フレームの画像の解像度が例えば１６００×１２００と称される場合は、１フレームを構成するＲＧＢ形式の画像データは、Ｒ（赤色）、Ｇ（緑色）、Ｂ（青色）の各色について、横方向に１６００個のデータからなるラインが、縦方向に１２００個並んで構成される。もちろん、画像データの形式は、ＲＧＢ形式ではなく、よく知られているＹＵＶ形式など他の形式の場合もある。また、このフレームの小部分の大きさについては実施の態様によって変わってくるが、例えば１フレームの画像データの８ライン分、１６ライン分、３２ライン分等とすることが考えられる。
さらに本願第２の発明による画像処理装置において、前記副小部分と前記圧縮小部分とが、互いに分離可能であるように作成されることができる。一つの実施態様では、副小部分に開始コードと終了コードを挿入する。さらに、この画像処理装置は、送信するデータのデータ列から特定のビットパターンを検出し、前記特定のビットパターンを保護する符号化手段を備えることができる。
このように本願第２の発明による画像処理装置は、フレーム１個分の画像データの圧縮データとサムネールデータとを作成して出力するために、そのフレームの画像データの小部分ごとに圧縮処理と解像度減少処理とを行ない、生成された圧縮小部分と副小部分を順次送信する処理を、当該フレームを構成する全ての小部分を処理するまで繰り返し行なうという方法を用いるため、１つのフレーム全体の画像データやフレーム全体のサムネールデータを格納するための、大きなフレームバッファを備える必要がない。その分、本願第２の発明による画像処理装置は、コストを抑えてサイズを小さく作ることが可能となる。
さらに本願第２の発明による画像処理装置は、圧縮の方式が、ＪＰＥＧ方式、ＪＰＥＧ２０００方式、ＭｏｔｉｏｎＪＰＥＧ、またはＭｏｔｉｏｎＪＰＥＧ方式のいずれかであることが好ましい。ただし他の圧縮方法を排除するものではない。しかしＪＰＥＧ方式又はＭｏｔｉｏｎＪＰＥＧ方式により圧縮を行なう場合は、圧縮過程に離散コサイン変換とハフマン符号化の２段階が現れることとなる。このとき本願第２の発明による画像処理装置は、前記副小部分を、前記小部分を離散コサイン変換した結果から作成するように構成することができる。この構成では、前記小部分の解像度を落とす処理の一部をＪＰＥＧ処理と共通化することで、処理量の低減が可能となる利点を持つ。また、前記小部分を圧縮する度に、圧縮処理の初期化を行なうように構成することができる。圧縮処理の初期化は典型的にはハフマン符号化処理の初期化により行なわれる。前記小部分を圧縮したデータのデータ長は、圧縮される小部分の内容によって変わり、圧縮後のデータのデータ長はビット単位で生成される。ところが出力は８ビット単位、すなわちバイト単位でないと行なわれない。このため、前記小部分を圧縮したデータの一部がすぐに送信されず、次の処理で作成された圧縮小部分に組み込まれて送信される場合がある。そこで、圧縮処理を各小部分を圧縮するごとに初期化し、バイト単位に満たないデータの最後の部分に０を必要な数だけ付加すると、対応する小部分に対応する圧縮データがバイト単位で過不足なく出力されることになる。ここで圧縮処理を初期化するが、圧縮処理を初期化したことを示すＲｅｓｔａｒｔ  Ｉｎｔｅｒｖａｌ  Ｍａｒｋｅｒ（ＲＳＴ）と呼ばれるＪＰＥＧの規格で定められている特定のバイト列でデータ列を終端することにより、復号時にハフマン復号処理を初期化するタイミングを復号処理に伝えることができる。このように構成すると、各小部分を圧縮したデータの全部を、当該小ブロックを処理し次の小ブロックの処理を行なう前に、すぐさま送信することができる。
本願第２の発明による画像処理装置は、さらにこの画像処理装置を備えたデータ処理装置や、この画像処理装置を備えたカメラ装置とすることができる。カメラ装置の例としては、携帯電話やＰＤＡ用のカメラモジュール、デジタルカメラ、監視用カメラ等がある。データ処理装置とは、例えば様々な機能を有するＬＳＩに、本願第２の発明による画像処理装置を組み込んで構成するものである。
この一態様として特に、本願第３の発明として、固体撮像素子から出力されたデータをＡ／Ｄ変換して作られたＲＡＷデータを取り込み、前記ＲＡＷデータから１フレームの画像データを作成する画像データ作成手段と、前記画像データの小部分を保持し、前記小部分を圧縮したデータを含む圧縮小部分と前記小部分の解像度を落としたデータを含む副小部分とを作成し、前記圧縮小部分と前記副小部分とを順次送信する処理を、前記画像データの複数の小部分について行なうデータ処理手段とを備えることを特徴とする、画像処理装置が提供される。ＲＡＷデータとは、未だ固体撮像素子から出力された形式を保持するデジタルデータであって、そのままでは画像として完成していないデータである。ＲＡＷデータの一例として、２つの緑色データと１つの赤色データと１つの青色データの単位が繰り返される、ベイヤー形式のデータがある。本願第３の発明における画像データ作成手段は、かかるＲＡＷデータから画像として完成した画像データを構築するが、これはＣＦＡ補間等、よく知られた方法で行なうことができる。また画像データの形式として一般的なものは、ＲＧＢ形式やＹＵＶ形式である。本願第３の発明による画像処理装置は、携帯電話やＰＤＡ用のカメラモジュールの処理装置として最適である。
さらに、上記課題を解決するため、本願第４の発明によって、受信したデータを処理する画像処理装置であって、前記データは、１フレームの画像データの圧縮画像データと、前記１フレームの画像データの解像度を落として作成したサムネールデータを含み、さらに前記データは、前記圧縮画像データの小部分と、前記サムネールデータの小部分とが、交互に現れるデータ構造を持つことを特徴とし、前記画像処理装置は、前記データを受信し、前記受信したデータから複数の前記圧縮画像データの小部分を抽出して前記１フレーム全体の圧縮画像データを構成し、さらに前記受信したデータから複数の前記サムネールデータの小部分を抽出して前記１フレーム全体のサムネールデータを構成することを特徴とする、画像処理装置が提供される。この画像処理装置は、前記受信したデータのデータ列から特定のビットパターンで保護されたビットパターンを検出し、前記特定のビットパターンの保護を解く復号化手段を有することができる。また本願第４の発明による画像処理装置は、この画像処理装置を備えたデータ処理装置とすることができる。かかるデータ処理装置は、カメラモジュールとホストモジュールからなる電子機器の、ホストモジュール用処理装置として有用である。また本願第４の発明による画像処理装置は、この画像処理装置を備えた電子機器とすることができる。
さらに上記課題を解決するため、本願第５の発明によって、撮影を行なって得られたデータを送信するカメラモジュールと、主記憶装置と表示装置とを備え、前記データを受信して主記憶装置へ保存するホストモジュールから構成される電子機器において、前記カメラモジュールは１フレームの画像データを作成する手段を備え、さらに前記カメラモジュールは、前記画像データの小部分を圧縮したデータを含む圧縮小部分と前記小部分の解像度を落としたデータを含む副小部分とを作成し、前記圧縮小部分と前記副小部分とを順次送信する処理を、前記画像データの複数の小部分について行なうことを特徴とし、前記ホストモジュールは、前記副小部分と前記圧縮小部分を受信して、受信した複数の前記副小部分から前記１フレームの解像度を落としたサムネールデータを作成して前記サムネールデータを表示装置に表示し、受信した複数の前記圧縮小部分から前記１フレームを圧縮した圧縮画像データを作成して前記圧縮画像データを主記憶装置に保存することを特徴とする、電子機器が提供される。
さらに上記課題を解決するため、本願第６の発明によって、１フレームの画像データの圧縮画像データと、前記１フレームの画像データの解像度を落として作成したサムネールデータを含むデータのデータ構造であって、前記データ構造は、前記圧縮画像データの小部分と、前記サムネールデータの小部分とが、交互に現れる構造を有することを特徴とするデータ構造が提供される。
さらに本願第７の発明によって、撮影を行なって得られたデータを送信するカメラモジュールと、主記憶装置と表示装置とを備え、前記データを受信して主記憶装置へ保存するホストモジュールとから構成される電子機器において、前記カメラモジュールは、送信するデータが前記カメラモジュールと前記ホストモジュールとを接続するインターフェース部における指令コードの例えば接頭部に一致するビットパターンを含む場合に前記ビットパターンの後に保護識別子を挿入し、前記ホストモジュールは、前記ビットパターンの後に続く前記保護識別子を削除することを特徴とする、電子機器が提供される。
【図面の簡単な説明】  図１は、本願発明による電子機器を、カメラ付携帯電話に応用した例である。
図２は、本願発明による画像処理装置を、カメラ用ＬＳＩに応用した例である。
図３は、本願発明による画像処理装置において行なわれるＦＳＰ符号化処理を、フローチャートで示したものである。
図４は、本願発明による電子機器において、カメラモジュールからホストモジュールに送信されるデータの構造の、一例を示した例である。
図５は、本願発明による電子機器において、カメラモジュールで行なわれる処理を、フローチャートで示したものである。
図６は、本願発明による電子機器において、ホストモジュールで行なわれる処理を、フローチャートで示したものである。
図７は、本願発明により電子機器において、ホストモジュールの記憶媒体に保存される画像データの構造を模式的に示した図である。
図８は、本願発明による電子機器において、ホストモジュールで行なわれるＦＳＰ復号化処理を、フローチャートで示したものである。
図９は、本願発明による電子機器の先行技術を示した図である。
【発明を実施するための最良の形態】  以下、本発明の理解を助けるため、図１乃至８を参照しつつ、本発明をその実施例を用いて説明する。
図１に、本発明による電子機器を、カメラ付携帯電話に応用した例を示す。本発明によるカメラ付携帯電話１は、カメラモジュール２とホストモジュール２から構成される。カメラモジュール２はレンズ４、固体撮像素子５、Ａ／Ｄ変換器６、カメラＬＳＩ１０を備え、カメラＬＳＩ１０は画像構築部１１と圧縮・サムネール作成部１２を備える。ホストモジュール３は電話機能を処理するためのベースバンド処理部７とアンテナ部８を備え、さらにアプリケーションエンジン５０を備えている。アプリケーションエンジン５０は電話機能以外の機能を処理するために搭載され、画像処理、ユーザーインターフェースの制御、ゲーム、予定表やメモ等の機能を司る。アプリケーションエンジン５０はＣＰＵ５２とデータ構築エンジン５３を備える。ＣＰＵ５２は、バス６２とインターフェース５４、５６、５８、６０を通じて、それぞれＳＤＲＡＭ５５、フラッシュメモリ（主記憶装置）５７、表示装置５９、キーボード６１等と接続されている。
撮影時おいて、カメラモジュール２のレンズ４を通過した光が固体撮像素子５で電気信号へと変換され、その電気信号はＡ／Ｄ変換器６でデジタル化される。このデジタル化されただけのデータをＲＡＷデータというが、未だＢａｙｅｒ形式等の個体撮像素子の出力そのままのデータ構造を持っており、表示装置等で表示可能な画像データにはなっていない。ＲＡＷデータは画像構築部１１で初めて表示装置等で表示可能な画像データに構築される。構築された画像データは、圧縮・サムネール作成部１２で圧縮され、ホストインターフェース１３から送信される。さらに圧縮・サムネール作成部１２ではサムネールも作成され、同様にホストインターフェース１３から送信される。後でもう一度説明するが、送信されるデータは、画像データの小部分のみを圧縮した部分と、その小部分の解像度を落とした部分、つまりサムネールデータの一部分とが、交互に現れる構造となる。
カメラモジュール２から送信されたデータは、カメラインターフェース５１を通じて、ホストモジュール３で受信される。ホストモジュール３は、圧縮部分とサムネール部分が交互に並んだデータから、１フレーム全体の圧縮画像データとサムネールデータを再構成する。そして、ホストモジュール３は、圧縮画像データをフラッシュメモリ５７へ保存し、サムネールデータを表示装置５９で表示する。
図２を参照して、本発明によるカメラ付携帯電話のカメラモジュールに搭載される、本発明によるカメラＬＳＩ１０について、詳しく説明する。上記のように、カメラＬＳＩ１０は画像構築部１１と圧縮・サムネール作成部１２を備えるが、画像構築部１１はさらに、前段処理部１５、ＣＦＡ補間部１６、後段処理部１７を備え、圧縮・サムネール作成部１２はさらに、ストライプ保持部１８、ＤＣＴ処理部２２とハフマン符号器２３を備えたＪＰＥＧ符号器１９、解像度減少部２０、データ整形部２０を備える。この他カメラＬＳＩ１０は、個体撮像素子−カメラＬＳＩ間インターフェース１４、ＦＳＰ処理部２４、ホストインターフェース１３を備える。
撮影を行なうと、レンズ４を通過した光が固体撮像素子５で電気信号へと変換され、その電気信号はＡ／Ｄ変換器６でデジタル化されてＲＡＷデータに変換され、ＲＡＷデータがカメラＬＳＩ１０に供給される。ＲＡＷデータは個体撮像素子−カメラＬＳＩ間インターフェース１４を通じて画像構築部１１に供給され、次いで画像構築部１１は以下のような処理が行なう。まず前段処理部１５において、ＲＡＷデータに対してレンズ濃淡補正、ホワイトバランス等の原画処理を行なう。次にＣＦＡ補間部１６が、原画処理が施されたＲＡＷデータから赤色（Ｒ）、緑色（Ｇ）、青色（Ｂ）の成分を抽出し、所定の補間を施して、ＲＧＢ３平面からなるＲＧＢ形式の画像データを作成する。最後に後段処理部１７が、できあがった画像データに対して、輪郭強調やガンマ補正等の処理を行なう。ここでＲＧＢ形式からＹＵＶ形式へのドメイン変換を行なう場合もある。こうして画像データが１ラインあるいは数ラインごとに順次作成されていく。作成された画像データは、作成された分ずつ順次画像構築部１１へと出力される。静止画撮影の場合は以上の処理が１フレーム全体を処理するまで続き、動画撮影の場合は以上の処理が動画を構成する多数のフレームに渡って次々と繰り返されることになる。
画像構築部１１によって作成された画像データは、次に圧縮・サムネール作成部１２で処理される。圧縮・サムネール作成部１２は１フレームの画像データ全体を一度に処理するのではなく、数ラインごとに構成された画像データが、設定されたライン数出来上がるごとに処理を行なう。この設定されたライン数分の画像データを以下ストライプと呼ぶが、まずストライプ保持部１８は、当該画像データが例えば８ライン分構成されるごとにこれを一時的にストライプ保持部１８が持つバッファメモリに保存する。次に、ＪＰＥＧ符号器１９が、ストライプ保持部１８に保存されたストライプを読み出し、ＪＰＥＧ方式による圧縮をかける。よく知られているように、ＪＰＥＧ方式の他、動画で用いられるＭｏｔｉｏｎＪＰＥＧ方式においても、圧縮には離散コサイン変換とハフマン符号化という主に２段階の処理を必要とする。これらはそれぞれＤＣＴ処理部２２とハフマン符号器２３によって行なわれる。
ハフマン符号器２３は、当該ストライプに対してＤＣＴ処理からハフマン符号化までの一連の処理を行なった後、自らを初期化する。ハフマン符号器２３の初期化処理においては、圧縮データについてバイト単位に満たない数ビットを値０で補ってバイト単位とし、当該ストライプより生成された圧縮データをバイト単位で出力できるようにする。さらに、当該圧縮データを復号する復号処理ブロックに、当該圧縮データが初期化小ブロックごとに初期化されていることを示すＲｅｓｔａｒｔ  Ｉｎｔｅｒｖａｌ  Ｍａｒｋｅｒ（ＲＳＴ）と呼ばれるバイトパターンで圧縮データを終端する。ＲＳＴで終端された圧縮データのデータ長は、当該小部分の画像内容に依存して変わり、可変長のデータとなる。またＲＳＴはＪＰＥＧの規格に含まれるハフマン符号化のリセットを示すバイトパターンであるため、ＪＰＥＧ復号の信号処理に変更を強いるものではない。
ＪＰＥＧ符号器１９による圧縮作業と並行して、解像度減少部２０がストライプ保持部１８に保存されたストライプを読み出し、その解像度を落としたサムネールデータを作成する。解像度を落とす方法は、数サンプルから１サンプルのみを選ぶ方法、数サンプルのデータから平均等の計算を行なって、新たな１サンプルのデータを作成する方法等がある。また、図２に示した実施例においては解像度減少部２０がストライプ保持部１８に保存されたデータを読み出しているが、別の実施形態では、ＪＰＥＧ符号器１９のＤＣＴ処理部の出口から離散コサイン変換の結果を読み出しても良い。最も簡単な方法としては、当該ストライプを離散コサイン変換して得られた周波数成分の、最も低周波成分のもののパワーを読み出し、当該ストライプのサムネールデータとすればよい。
ＪＰＥＧ符号器１９によって作られたストライプの圧縮データと、解像度減少部２０によって作られたストライプのサムネールデータは、データ整形部２１に送られる。データ整形部２１は、ストライプのサムネールデータに、ストライプの圧縮データとの境界を作るための標識を付加する。これらの標識は、ホストモジュールでストライプのサムネールデータとストライプの圧縮データを分離するために用いられる。これが図４の３４であるが、データの構造については後に改めて説明する。また、処理されたストライプが、そのストライプを含むフレームの最初の部分であったり、最後の部分であったりするときは、その旨を示す標識を付加する。これが図４の３１と３８であるが、これも後で改めて説明する。この他、ＪＰＥＧ方式のデータに必要なヘッダーや、シャッタースピードや絞り等の撮影データを付加することもできる。
圧縮・サムネール作成部１２から出力されたデータは、ホストインターフェース１３を通じてホストモジュールに送信される。しかし、カメラＬＳＩとホスト間で実装されるインターフェースの種類によっては、あるビットパターンを例えばフレームの始まりや終わりなどを示す特殊な指令コードと定義している場合がある。例えば０Ｘ００が２回連続するパターンが、インターフェースの受け側で、その後のデータを無視する指令であると定義されている場合などが考えられる。そこでＦＳＰ符号器２４が、圧縮・サムネール作成部１２から出力されたデータに対して、これがホストモジュールに送信される度に、かかる特殊なビットパターンに該当するビットパターンが存在するか否かの判定を行ない、これが存在する場合、このビットパターンを保護する符号化処理を施す。例えば０Ｘ００、０Ｘ００といったパターンを検出した場合、０Ｘ００と０Ｘ００の間に保護識別子である０ＸＡ５を挿入してこれを送信することで、ホスト側にて指令コードと誤解されることを防ぐ。
図３を参照して、ＦＳＰ符号化処理の流れをフローチャートを用いて説明する。ここでは、送出されたビットパターンが０Ｘ００に続いて０Ｘ００、０ＸＥＥ、０ＸＦＦが現れる場合、インターフェースの受け側が指令コードであると解釈することとして説明する。まずステップ１２１においてＦＳＰ符号器（図２の２４）に圧縮・サムネール作成部１２から出力されたデータが順次入力される。ここで入力されるデータはビット単位であってもバイト単位であってもよい。次にステップ１２２においてＦＳＰ符号器２４は、ビットまたはバイト単位に入力されたデータが２バイト分に達するとこれを一時保持し、一時保持された２バイト内に０Ｘ００のビットパターンの存在を調査する。０Ｘ００が検出されるとステップ１２３に進み、０Ｘ００に続く次のビットパターンが指令コードとして定義されている０Ｘ００、０ＸＥＥ、０ＸＦＦに相当するか否かを調べる。指令コードでない場合は、保持されている２バイトのうち、データの読み込み単位に相当するビット数またはバイト数をＦＩＦＯの順序でＦＳＰ符号化処理の出力として送出して、ステップ１２２に戻り、読み込み単位に相当する新たなビットまたはバイトを読み込んで０Ｘ００のビットパターンの検索を続行する（ステップ１２４）。指定コードが検出された場合はステップ１２５で０Ｘ００の後に０ＸＡ５を挿入し、ＦＳＢ符号化処理の出力として、データの読み込み単位に加え挿入されたバイト分だけＦＩＦＯの順序で送出し、ステップ１２１で新たなビットまたはバイトを読み込み、ステップ１２２の処理を繰り返す。ＦＳＰ符号器２４へ入力されるデータが終わると、ＦＳＰ符号化処理が終了する（ステップ１２６）。
以上に説明した圧縮・サムネール作成部１２とＦＳＰ符号器２４における処理は、１フレーム全体のデータを処理し終えるまで繰り返し行なわれる。動画撮影の場合は、そのフレームの処理を終えると、次のフレームの処理が開始される。
以上の実施例から理解できるように、本発明によるカメラＬＳＩでは、１フレーム全体の画像データを一時保管するフレームバッファメモリや、１フレーム全体のサムネールデータ全体を一時保管するサムネールバッファメモリを備える必要がない。必要なのは、１フレーム全体の小部分であるストライプを一時保管するバッファメモリと、そのストライプのサムネールデータを保存するバッファメモリのみである。例えば、ストライプのサムネールデータ用のバッファの大きさとして、サムネールデータの１ライン分のデータ容量で済ませることができる。ところで、典型的なサムネール画像のサイズはＱＱＶＧＡ（１６０ピクセル×１２０ライン）である。従って本発明によれば、例えば８ラインごとにバッファリングして処理を行なう場合、１フレームが１６００ピクセル×１２００ラインだとすると、１フレーム分の画像データを収容するフレームバッファメモリの（１６０／１６００）×（８／１２００）＝（１／１５０００）のサイズのバッファメモリ、または１フレーム分のサムネール画像を収容するサムネールバッファメモリの（１／１）×（８／１２０）＝（１／１５）のサイズのバッファメモリを備えるだけで、画像の圧縮とサムネール作成の両方を行なうカメラモジュールを提供することができる。
次に図４を参照しつつ、本発明によるカメラ付携帯電話１において、本発明によるカメラモジュール２から送信され、本発明によるホストモジュール３により受信されるデータの構造を説明する。まず、新たなフレームの開始を示すフレーム開始コード３１が送信される。次に、サムネール部開始コード３２が送信され、続いて最初のストライプから作られたサムネールデータ３３、サムネール部終了コード３４、当該ストライプのＪＰＥＧ圧縮データ３５、ＪＰＥＧ圧縮データの終了コード３６、と続く。コード３２からコード３６までのデータ４１に、１つのストライプの作られた圧縮データとサムネールデータが含まれる。１つのストライプに関するデータの送信が終わると、続いてサムネール開始コード３７（これは３２と同じものである）が送信され、次のストライプから作られた圧縮データやサムネールデータが送信される。これがこのフレームを構成する最後のストライプのＪＰＥＧ圧縮データを送信するまで続く。最後のストライプのＪＰＥＧ圧縮データ終了コードが送信されると、フレーム終了コード３８が送信される。従って、コード３１からコード３８までのデータ４２に、１つのフレームを構成する圧縮データとサムネールデータが含まれる。
動画撮影の場合は続けて新たなフレーム４３が送信される。このために、改めてフレーム開始コード３９（これは３１と同じものである）が送信され、つづけてストライプ毎に圧縮データとサムネールデータが交互に送信される。フレーム開始コードやサムネール部開始コード等にどのようなコードを用いるかは、本発明の実施をする者に依存するが、この実施例ではＪＰＥＧ圧縮データの終了コード３６として、前述のＲＳＴと呼ばれるＪＰＥＧの規格に含まれるハフマン符号化のリセットを示すバイトパターンを用いている。
なお、図４では図示していないが、静止画や動画の最初のフレームを処理するに先立ち、カメラモジュール２は撮影情報等を含むヘッダー情報を送信することもある。
このように、本発明によるカメラ付携帯電話１においては、本発明によるカメラモジュール２から送信され、本発明によるホストモジュール３により受信されるデータが、１フレームの小部分を圧縮したデータと、その小部分から作られたサムネールデータが、繰り返し現れる構造を持っている。この繰り返し構造が現れるのは、本発明によるカメラモジュール２が、大きなバッファメモリを持たずに画像データの圧縮とサムネール作成を行なうが故である。
次に、図５を参照しつつ、本発明によるカメラモジュール２において行なわれる処理を、フローチャートにより説明する。まずステップ７１では固体撮像素子５によるデータの取得が行なわれる。上に説明したように、固体撮像素子から出力された形式のままのＲＡＷデータは、未だ表示装置で表示可能な画像データではない。そこでステップ７２では、ＲＡＷデータから表示装置で表示可能なＲＧＢ形式又はＹＵＶ形式の画像データを構築する。この画像データは１または数ラインごとに構築されていくが、ステップ７３ではステップ７２で構築された画像データを順次取り込み、設定されたライン数からなるストライプ単位で保持する。そのストライプに対してＪＰＥＧ圧縮（ステップ７４）と、解像度減少によるサムネール作成（ステップ７５）の処理が行なわれる。ステップ７４では、ＪＰＥＧ圧縮後にハフマン符号器の初期化も行なわれる。ステップ７７では圧縮データとサムネールデータの区別がつくように標識が付加され、さらにフレーム開始コードやフレーム終了コードも付加される場合がある。露出情報等の状態情報を付加することもできる（ステップ７６）。ステップ７８では、ステップ７７を終えたデータを調べ、その送信時にて、ホスト側で指令コードと誤解される恐れのあるビットパターンの保護を行なう。ステップ７９では、カメラモジュール２は処理の終わったデータをホストモジュール３へ送信する。１つのフレームを構成する画像データの全ての部分を処理し終えるまで、ステップ７３からステップ７９が繰り返される（ステップ８０）。動画撮影の場合は、撮影されたフレームを全て処理するまで、ステップ７１から８０が繰り返し実行される。
このようにして送信されたデータは、図４に示すように、１つのフレームを構成する画像データの小部分を圧縮したデータと、その小部分から作られたサムネールデータが、交互に現れる構造を持っている。
次に、図６と図１を参照して、本発明によるホストモジュール３において行なわれる処理を、フローチャートにより説明する。まずステップ９１でカメラモジュール２から送信されたデータの受信が行なわれる。受信したデータは図１におけるＳＤＲＡＭ５５に一時的に保存される。このデータは引用番号８１に模式的に示すように、ヘッダー部分８２と、１つのフレームを構成する画像データの小部分（ストライプ）を圧縮したデータと、そのストライプから作られたサムネールデータが、交互に現れる構造を持つデータ部分８３とを含む。データ部分８３に含まれる各ストライプの圧縮データは、１フレーム分の画像データを圧縮した圧縮画像データの一部分を構成し、同様に各ストライプのサムネールデータは、１フレーム分のサムネールデータの一部分を構成する。従ってデータ部分８３は、１フレーム分の画像データを圧縮した圧縮画像データと当該フレームのサムネールデータを含んでいる。動画撮影の場合には、動画を構成するフレーム毎にデータ部分８３と同様な構造を持つデータが、次々とカメラモジュール２から送信され、ホストモジュール３により受信される。
次にステップ９２で、カメラモジュールのＦＳＰ符号器２４で保護されたビットパターンの保護を解く。例えば、ステップ７８で０Ｘ００と０Ｘ００の間に０ＸＡ５を付加している場合は、ステップ９２で０Ｘ００の後に０ＸＡ５が続くビットパターンを検索し、付加された０ＸＡ５をビットパターンから除くという処理を行なう。この処理は、主にデータ構築エンジン５３が担当する。
ステップ９３では、データ構築エンジン５３がＳＤＲＡＭ５５にアクセスし、一時保存されているデータ８１の中からストライプの圧縮データを抽出する。これと共にステップ９３では、データ構築エンジン５３がＳＤＲＡＭ５５にアクセスし、一時保存されているデータ８１の中から、ストライプのサムネールデータを抽出する。これらの抽出作業においては、サムネール部開始コード（図３の３２）やサムネール終了コード３４等が、ＪＰＥＧ圧縮データとサムネールデータを区別する標識になる。
ステップ９４は、ステップ９３で抽出されたストライプの圧縮データが集められて、模式的に１０１に示すようなデータ構造を持つことを示す。データ１０１は、ヘッダー部分１０２とストライプの圧縮データを複数含むデータ部分１０３を含み、データ部分１０３は１つのフレームを構成するストライプの圧縮データを全て含んでいる。データ１０１は図に示されるように、ＪＰＥＧ圧縮データの終了コード（図３の３６）を含んでいるが、これは標準のＪＰＥＧ復号器で復号する際、ハフマン符号化器の初期化位置を把握する必要があるため、これを除くことはできない。ただし標準のＪＰＥＧ復号器で対応できるコードであるため、復号時に問題は起きない。なお動画撮影時は、動画を構成するフレーム毎に、データ部分１０３と同様なデータ構造が次々と作られていく。
ステップ９６は、ステップ９３で抽出されたストライプのサムネールデータが集められて、模式的に９７に示すようなデータ構造を持つことを示す。なおこの際に、ストライプのサムネール部開始コード（図３の３２）やサムネール部終了コード（図３の３４）は取り除かれる。データ９７は、１つのフレームのサムネールを構成する、全てのストライプのサムネールデータを含んでいる。
ステップ９８では、ステップ９６で作成した１フレームのサムネールデータ９７を、表示装置（図１の５９）に表示する。表示のための処理は、主にＣＰＵ５２が担当する。動画撮影時には、動画を構成するフレーム毎にデータ９７と同様のデータが次々と作成され、表示される。
ステップ９９では、フレーム毎に構成された圧縮データとサムネールデータをデータ記録媒体（図１のフラッシュメモリ５７）に保存する。データ記録媒体に記録されるデータの構造例を、静止画の場合を図７の引用番号１０５に、動画の場合を図７の引用番号１１０に示す。データ記録媒体に記録されるデータ構造１０５やデータ構造１１０においては、圧縮データもサムネールデータも、もはや１つのフレームの画像データの小部分が交互に現れるという構造を有せず、フレーム全体の圧縮データやサムネールデータがまとまって保存される。データ１０５はヘッダー１０６、フレームのサムネールデータ１０７、フレームのＪＰＥＧ圧縮データ１０８を含む。また動画撮影に記録されるデータ１１０は、ヘッダー１１１、最初のフレームのＪＰＥＧ圧縮データ１１２、次のフレームの圧縮データ１１３、・・・Ｎ番目のフレームの圧縮データ１１４・・・と続く。なお、データ１１０は通常のＭｏｔｉｏｎＪＰＥＧによる圧縮によって得られるデータの構造と、同様の構造を有する。ステップ９９におけるデータ記録処理は、データ構築エンジン５３とＣＰＵ５２とにより制御される。
次に図８を参照して、図６のステップ９２で行なわれるＦＳＰ復号化処理の流れをフローチャートを用いて説明する。ＦＳＰ符号化処理はカメラＬＳＩとホストモジュール間でのデータ転送のインターフェースにのっとって設計されているが、データ転送およびその高機能化のみのために行われているため、ホストモジュールではこれを取り外す復号処理が行われる。ここでは前記のＦＳＰ符号化処理の説明に合わせ、ＦＳＰ処理部２４は０Ｘ００の後に０ＸＡ５を挿入しているものとする。まずステップ１３１においてＦＳＰ復号化処理が開始する。ステップ１３２では、ＳＤＲＡＭ（図１の５５）に一時的に保存されているデータについて、データ構築エンジン５３が当該データのビットパターンを順に検索し、０Ｘ００のビットパターンの存在を調査する。０Ｘ００が検出されるとステップ１３３に進み、次のビットパターンが０ＸＡ５であるか否かを調べる。０ＸＡ５でない場合はステップ１３２に戻って検索を続行し（ステップ１３３）、０ＸＡ５である場合はその０ＸＡ５をビットパターンから削除する。こうしてデータの最後まで検索を行ない、ＦＳＰ復号化処理が終了する（ステップ１３６）。
なお、上記の実施例は本発明を実施する一例であって、本発明の範囲を逸脱しない範囲で様々な実施形態が考えられることは言うまでもない。例えば図３においては、フレーム開始コード３１の後にはサムネールデータ３３がＪＰＥＧ圧縮データ３５より先に現れたが、もちろんＪＰＥＧ圧縮データ３５が先でも構わない。また、図１のアプリケーションエンジン５０において、データ構築エンジン５３は専用のハードウエアで実現してもよいが、ＣＰＵ５２によって実現されてもよい。また、ＣＰＵ５２にＳＩＭＤプロセッサを加えて、ＳＩＭＤプロセッサによってデータ構築エンジン５３の機能を実現してもよいし、アプリケーションエンジン５０にＤＳＰを加え、ＤＳＰによってデータ構築エンジン５３の機能を実現してもよい。
本発明によれば、静止画や動画の撮影を担当するカメラモジュールと、撮影された画像の保存と表示を担当するホストモジュールとからなる電子機器において、カメラモジュールが、このフレームバッファメモリの大きさを大幅に低減しつつ、画像データの圧縮とその画像データのサムネール画像の作成をＦＩＦＯの順序で行ない、ホストモジュールに送信することが可能となり、カメラモジュールのコスト低減・サイズ低減をもたらすことになる。さらに、ホストモジュールにおいて復号処理を行なうことなく、ＬＣＤへの表示処理並びにサムネール付の圧縮ファイルの保存が可能になり、処理量の低減、処理速度の向上がもたらされることになる。
【図１】
2004112396.tif 000003
【図２】
2004112396.tif 000004
【図３】
2004112396.tif 000005
【図４】
2004112396.tif 000006
【図５】
2004112396.tif 000007
【図６】
2004112396.tif 000008
【図７】
2004112396.tif 000009
【図８】
2004112396.tif 000010
【図９】
2004112396.tif 000011
【国際調査報告】
2004112396.tif 000012
2004112396.tif 000013
2004112396.tif 000014
2004112396.tif 000015