(57)【要約】【課題】圧縮度の推定を行う、処理時間の短縮化に適した撮影装置を提供する。【解決手段】可逆圧縮部が、可逆圧縮部による圧縮度を推定する第１推定部とを備え、非可逆圧縮部が、間引き出された数値からなる第１画像データと残りの第２画像データとを作成する間引き処理部と、非可逆圧縮部による圧縮度を推定する第２推定部と、第１画像データに可逆圧縮処理を施す第１圧縮部と、第２画像データに圧縮パラメータに応じた非可逆圧縮処理を施す第２圧縮部と、第２推定部の推定値に応じた圧縮パラメータを第２圧縮部に設定し所定の第１の圧縮度よりも高い所定の第２の圧縮度よりも高く保つ圧縮パラメータ設定部とを備え、選択転送部は、第１推定部の推定値が第１の圧縮度より高い場合に可逆圧縮部による圧縮データを転送し、低い場合に非可逆圧縮部による圧縮データを転送する。【選択図】図１６
2009117997.tif 000002
【特許請求の範囲】
【請求項１】
被写体を捉えた撮影によって、その被写体の画像を表す、数値の連続からなる画像データを生成する画像データ生成部と、前記画像データ生成部により生成された画像データに可逆圧縮処理を施す可逆圧縮部と、前記画像データ生成部により生成された画像データに非可逆圧縮処理を施す非可逆圧縮部と、前記可逆圧縮部により可逆圧縮処理が施された画像データおよび前記非可逆圧縮部により非可逆圧縮処理が施された画像データのうち一方の画像データを、所定のデータ受信装置に向けて選択的に転送する選択転送部とを備え、
前記可逆圧縮部が、該可逆圧縮部による圧縮度を推定する第１推定部とを備えたものであり、
前記非可逆圧縮部が、
前記画像データ生成部により生成された画像データを構成する数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１画像データと残りの数値の連続からなる第２画像データとを作成する間引き処理部と、該第１画像データに可逆圧縮処理を施す第１圧縮部と、設定された圧縮パラメータに応じた非可逆圧縮処理を該第２画像データに施す第２圧縮部と、前記非可逆圧縮部による圧縮度を推定する第２推定部と、前記第２推定部の推定値に応じた圧縮パラメータを前記第２圧縮部に設定することで前記非可逆圧縮部による圧縮度を、前記選択転送部における転送データ量の限界内に画像データが納まるように決定された所定の第１の圧縮度よりも高い所定の第２の圧縮度よりも高く保つ圧縮パラメータ設定部とを備えたものであり、
前記選択転送部は、前記第１推定部の推定値が前記第１の圧縮度より高い場合に前記可逆圧縮部による圧縮データを転送し、低い場合に前記非可逆圧縮部による圧縮データを転送するものであることを特徴とする撮影装置。
【請求項２】
前記撮影環境データとして、撮影環境における、音声、風力、温度、湿度、および気圧のうちの少なくとも１つの情報を表す撮影環境データを取得する環境情報取得部と、
前記環境情報取得部によって取得された撮影環境データを前記非可逆圧縮部によって圧縮された画像データに添付する環境情報添付部とを備え、
前記第２の圧縮度が、前記転送データ量の限界内に画像データと撮影環境データとの合計が納まるように設定されたものであることを特徴とする請求項１記載の撮影装置。
【請求項３】
前記可逆圧縮部は、前記画像データ生成部により生成された画像データを構成する数値の連続について隣接する数値どうしの差分を求めることにより該差分を表わす数値の連続からなる新たな画像データを生成する第１差分生成部と、該第１差分生成部によって生成された画像データに可逆圧縮処理を施す圧縮処理部とを有するものであり、
前記第１推定部は、前記第１差分生成部によって生成された画像データを構成する各数値の、差分「０」を表す数値への集中度を求め、該画像データが前記圧縮処理部により圧縮されるときの圧縮度を、該集中度が高い程高く推定するものであり、
前記第１圧縮部は、第１画像データを構成する数値の連続について隣接する数値どうしの差分を求めることにより該差分を表わす数値の連続からなる新たな画像データを生成する第２差分生成部を有し、該第２差分生成部によって生成された画像データに可逆圧縮処理を施すものであり、
前記第２推定部は、前記第２差分生成部によって生成された画像データを構成する各数値の、差分「０」を表す数値への集中度を求め、該画像データが前記非可逆圧縮部により圧縮されるときの圧縮度を、該集中度が高い程高く推定するものであることを特徴とする請求項１又は２記載の撮影装置。
【請求項４】
前記第１差分生成部および前記第２差分生成部のうち少なくとも一方が、差分の対象となる画像データを構成する数値について、前記画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めるものであることを特徴とする請求項３記載の撮影装置。
【請求項５】
前記画像データ生成部が、前記画像データとして、所定の単位ビット数で表わされる数値の連続からなる画像データを生成するものであり、
前記第２圧縮部が、
判定基準が設定されて、前記画像中のエッジ部分を該判定基準で判定する判定部と、
前記間引き処理部で生成された第２の画像データを構成する数値について、前記判定部で判定されたエッジ部分でない場合には、前記単位ビット数よりも少ないビット数の所定符号を出力し、エッジ部分である場合には、前記単位ビット数よりも少なく前記所定符号のビット数よりも多いビット数で表現し直した数値を出力するデータ変換部とを備えたものであり、
前記圧縮パラメータ設定部は、前記第２推定部が推定した圧縮度が大きいほど前記判定部に厳しい判定基準を設定することにより、エッジ部分であるとみなされる画像部分を減らすものであることを特徴とする請求項４記載の撮影装置。
【請求項６】
前記データ変換部が、数値を、前記単位ビット数よりも少なく前記所定符号のビット数よりも多いビット数で表現し直すに当たり、前記単位ビット数のビット値の下位桁を切り捨てるものであることを特徴とする請求項５記載の撮影装置。
【請求項７】
前記第１差分生成部が、前記画像データとして、前記差分を所定の単位ビット数で表わされる数値の連続からなる画像データを生成するものであり、
前記圧縮処理部が、
前記第１差分生成部によって生成された新たな画像データを構成する各数値を所定値だけオフセットさせる第１オフセット部と、
前記第１オフセット部によって数値がオフセットされた画像データの各数値を、前記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、該画像データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する第１分割部と、
前記第１分割部によって分割された下位データに対して可逆圧縮処理を施す第１下位データ圧縮部と、
前記第１分割部によって分割された上位データに対して可逆圧縮処理を施す第１上位データ圧縮部とを備えたものであり、
前記第１圧縮部が、
前記第２差分生成部によって生成された新たな画像データを構成する各数値を所定値だけオフセットさせる第２オフセット部と、
前記第２オフセット部によって数値がオフセットされた画像データの各数値を、前記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、該画像データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する第２分割部と、
前記第２分割部によって分割された下位データに対して可逆圧縮処理を施す第２下位データ圧縮部と、
前記第２分割部によって分割された上位データに対して可逆圧縮処理を施す第２上位データ圧縮部とを備えたものであり、
前記第１推定部は、前記第１オフセット部によって数値がオフセットされた画像データを構成する各数値の、前記所定値への集中度を求めることで前記可逆圧縮処理部による圧縮度を推定するものであり、前記第２推定部は、前記第２オフセット部によって数値がオフセットされた画像を構成する各数値の、前記所定値への集中度を求めることで前記非可逆圧縮処理部による圧縮度を推定するものであることを特徴とする請求項３から６のうちいずれか１項記載の撮影装置。
【請求項８】
前記第１上位データ圧縮部および前記第２上位データ圧縮部のうち少なくとも一方が、上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部を備えたものであることを特徴とする請求項７記載の撮影装置。
【請求項９】
前記第１上位データ圧縮部および前記第２上位データ圧縮部のうち少なくとも一方が、  上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
符号と数値を対応づけるテーブルを用いて、前記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであることを特徴とする請求項７記載の撮影装置。
【請求項１０】
前記第１上位データ圧縮部および前記第２上位データ圧縮部のうち少なくとも一方が、  上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
ハフマンテーブルを用いて、前記第１の符号化部で符号化された後のデータにハフマン符号化を施す第２の符号化部を備えたものであることを特徴とする請求項７記載の撮影装置。
【請求項１１】
前記第１上位データ圧縮部および前記第２上位データ圧縮部のうち少なくとも一方が、  上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、
前記第１の符号化部で符号化された後のデータ中に出現する数値のヒストグラムを求めるヒストグラム推定部と、
前記ヒストグラム推定部で求められたヒストグラムに基づき、符号と数値を対応づけるテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる符号割当部と、
前記符号割当部で符号が割り当てられたテーブルを用いて、前記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであることを特徴とする請求項７記載の撮影装置。
【請求項１２】
前記第１下位データ圧縮部および前記第２下位データ圧縮部のうち少なくとも一方が、符号と数値を対応づけるテーブルを用いて下位データにエントロピー符号化を施すものであることを特徴とする請求項７記載の撮影装置。
【請求項１３】
前記第１下位データ圧縮部および前記第２下位データ圧縮部のうち少なくとも一方が、ハフマンテーブルを用いて下位データにハフマン符号化を施すものであることを特徴とする請求項７記載の撮影装置。
【請求項１４】
前記第１下位データ圧縮部および前記第２下位データ圧縮部のうち少なくとも一方が、圧縮省略の指示を受けて下位データを無圧縮で出力するものであることを特徴とする請求項７記載の撮影装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体を捉えた撮影によって、その被写体の画像を表す画像データを生成する撮影装置に関する。
【背景技術】
【０００２】
近年、撮影装置が広く普及しており、多種多様な撮影装置が市場に出回っている。撮影装置の中には、動画撮影を行って撮影画像を表すデータを生成し、生成したデータを所定のデータ受信装置に転送する撮影装置が存在する。こうした撮影装置は、野鳥や野生動物を観察する場合や、警備のためにモニタを用いて監視を行う場合などのように、撮影装置から送られてくる撮影画像をリアルタイムで観察するという使い方がされることが多い。
【０００３】
動画撮影で得た画像データをデータ受信装置に転送する際には、短時間で画像データの転送が行われることが望ましい。しかしながら、データの転送速度は、データ通信に用いられるインターフェースの規格（例えば、ＵＳＢ２．０など）に応じて制限があり、また、動画の画像データはデータ量が一般に大きいため、短時間で動画の画像データの転送が完了されるためには、データの圧縮処理を行うことが必要になる。最近では、画像データのデータ量や、データ通信の通信速度に応じて圧縮率を変更する機能を備えた撮影装置が提案されている（例えば、特許文献１参照）。
【特許文献１】特開２０００−２６１７２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１記載の撮影装置のように、電子データの圧縮処理を含むデータ処理を実行する装置の分野では、圧縮後のデータの処理のために圧縮処理によってどの程度の圧縮度が達成されるかの情報が必要になることが少なくない。圧縮率は、圧縮処理後にデータの量を解析することによって得ることができるが、この方式では、データ量解析の過程が、圧縮処理の過程の後に新たに加わるため、データ処理が長時間化し効率が悪い。
【０００５】
本発明は、上記事情に鑑み、圧縮度の推定を行う、処理時間の短縮化に適した撮影装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するための本発明の撮影装置は、
被写体を捉えた撮影によって、その被写体の画像を表す、数値の連続からなる画像データを生成する画像データ生成部と、上記画像データ生成部により生成された画像データに可逆圧縮処理を施す可逆圧縮部と、上記画像データ生成部により生成された画像データに非可逆圧縮処理を施す非可逆圧縮部と、上記可逆圧縮部により可逆圧縮処理が施された画像データおよび上記非可逆圧縮部により非可逆圧縮処理が施された画像データのうち一方の画像データを、所定のデータ受信装置に向けて選択的に転送する選択転送部とを備え、
上記可逆圧縮部が、該可逆圧縮部による圧縮度を推定する第１推定部とを備えたものであり、
上記非可逆圧縮部が、
上記画像データ生成部により生成された画像データを構成する数値の連続から数値を間引くことにより、間引き出された数値の連続からなる第１画像データと残りの数値の連続からなる第２画像データとを作成する間引き処理部と、該第１画像データに可逆圧縮処理を施す第１圧縮部と、設定された圧縮パラメータに応じた非可逆圧縮処理を該第２画像データに施す第２圧縮部と、上記非可逆圧縮部による圧縮度を推定する第２推定部と、上記第２推定部の推定値に応じた圧縮パラメータを上記第２圧縮部に設定することで上記非可逆圧縮部による圧縮度を、上記選択転送部における転送データ量の限界内に画像データが納まるように決定された所定の第１の圧縮度よりも高い所定の第２の圧縮度よりも高く保つ圧縮パラメータ設定部とを備えたものであり、
上記選択転送部は、上記第１推定部の推定値が上記第１の圧縮度より高い場合に上記可逆圧縮部による圧縮データを転送し、低い場合に上記非可逆圧縮部による圧縮データを転送するものであることを特徴とする。
【０００７】
ここで、本発明の撮影装置においては、「上記撮影環境データとして、撮影環境における、音声、風力、温度、湿度、および気圧のうちの少なくとも１つの情報を表す撮影環境データを取得する環境情報取得部と、上記環境情報取得部によって取得された撮影環境データを上記非可逆圧縮部によって圧縮された画像データに添付する環境情報添付部とを備え、上記第２の圧縮度が、上記転送データ量の限界内に画像データと撮影環境データとの合計が納まるように設定されたもの」であってもよい。
【０００８】
また、本発明の撮影装置、および環境情報取得部を備えた本発明の撮影装置においては、「上記可逆圧縮部は、上記画像データ生成部により生成された画像データを構成する数値の連続について隣接する数値どうしの差分を求めることにより該差分を表わす数値の連続からなる新たな画像データを生成する第１差分生成部と、該第１差分生成部によって生成された画像データに可逆圧縮処理を施す圧縮処理部とを有するものであり、上記第１推定部は、上記第１差分生成部によって生成された画像データを構成する各数値の、差分「０」を表す数値への集中度を求め、該画像データが上記圧縮処理部により圧縮されるときの圧縮度を、該集中度が高い程高く推定するものであり、上記第１圧縮部は、第１画像データを構成する数値の連続について隣接する数値どうしの差分を求めることにより該差分を表わす数値の連続からなる新たな画像データを生成する第２差分生成部を有し、該第２差分生成部によって生成された画像データに可逆圧縮処理を施すものであり、上記第２推定部は、上記第２差分生成部によって生成された画像データを構成する各数値の、差分「０」を表す数値への集中度を求め、該画像データが上記非可逆圧縮部により圧縮されるときの圧縮度を、該集中度が高い程高く推定するものであること」であることが好ましい。
【０００９】
なお、このように差分のデータを求めてその差分のデータを圧縮するという圧縮方式は、上記可逆処理部内の圧縮処理部や上記非可逆処理部内の第１圧縮部における可逆圧縮処理で採用され得る圧縮方式の典型的な一例であって、この圧縮方式以外の方式も上記圧縮処理部や上記第１圧縮部では採用可能である。例えば、差分のデータを求める処理を行うことなく、画像データ生成部により生成された画像データに対し直接ランレングス符号化やエントロピー符号化といった可逆圧縮処理が施されてもよい。また、差分のデータに基づいて圧縮度を推定する上記の方式は、上記第１推定部や上記第２推定部で採用される圧縮方式や推定方式の典型的な一例であって、この推定方式以外の方式も上記第１推定部や上記第２推定部では採用可能である。例えば、差分のデータを求める処理を行うことなく、画像データ生成部により生成された画像データをそのまま使ってこの画像データ中に現れる出現頻度の最も高い数値への集中度を求めることで圧縮度の推定を行う推定方式が採用されてもよい。
【００１０】
また、第１推定部と第２推定部とが差分「０」への集中度を求める本発明の撮影装置においては、「上記第１差分生成部および上記第２差分生成部のうち少なくとも一方が、差分の対象となる画像データを構成する数値について、上記画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めるものである」という形態は好ましい形態である。
【００１１】
また、２次元的な差分を求める本発明の撮影装置においては、「上記画像データ生成部が、上記画像データとして、所定の単位ビット数で表わされる数値の連続からなる画像データを生成するものであり、上記第２圧縮部が、判定基準が設定されて、上記画像中のエッジ部分を該判定基準で判定する判定部と、上記間引き処理部で生成された第２の画像データを構成する数値について、上記判定部で判定されたエッジ部分でない場合には、上記単位ビット数よりも少ないビット数の所定符号を出力し、エッジ部分である場合には、上記単位ビット数よりも少なく上記所定符号のビット数よりも多いビット数で表現し直した数値を出力するデータ変換部とを備えたものであり、上記圧縮パラメータ設定部は、上記第２推定部が推定した圧縮度が大きいほど上記判定部に厳しい判定基準を設定することにより、エッジ部分であるとみなされる画像部分を減らすものである」という形態はさらに好ましい形態である。このとき、「上記データ変換部が、数値を、上記単位ビット数よりも少なく上記所定符号のビット数よりも多いビット数で表現し直すに当たり、上記単位ビット数のビット値の下位桁を切り捨てるものであること」が好ましい。
【００１２】
また、第１推定部と第２推定部とが差分「０」への集中度を求める本発明の撮影装置、２次元的な差分を求める本発明の撮影装置、データ変換部を備えた本発明の撮影装置、およびビット値の下位桁を切り捨てる本発明の撮影装置において、「上記第１差分生成部が、上記画像データとして、上記差分を所定の単位ビット数で表わされる数値の連続からなる画像データを生成するものであり、上記圧縮処理部が、上記第１差分生成部によって生成された新たな画像データを構成する各数値を所定値だけオフセットさせる第１オフセット部と、上記第１オフセット部によって数値がオフセットされた画像データの各数値を、上記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、該画像データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する第１分割部と、上記第１分割部によって分割された下位データに対して可逆圧縮処理を施す第１下位データ圧縮部と、上記第１分割部によって分割された上位データに対して可逆圧縮処理を施す第１上位データ圧縮部とを備えたものであり、上記第１圧縮部が、上記第２差分生成部によって生成された新たな画像データを構成する各数値を所定値だけオフセットさせる第２オフセット部と、上記第２オフセット部によって数値がオフセットされた画像データの各数値を、上記単位ビット数よりも小さい所定の分割ビット数のところで上位ビット部分と下位ビット部分とに分けることによって、該画像データを、各数値における上位ビット部分の連続からなる上位データと各数値の下位ビット部分の連続からなる下位データとに分割する第２分割部と、上記第２分割部によって分割された下位データに対して可逆圧縮処理を施す第２下位データ圧縮部と、上記第２分割部によって分割された上位データに対して可逆圧縮処理を施す第２上位データ圧縮部とを備えたものであり、上記第１推定部は、上記第１オフセット部によって数値がオフセットされた画像データを構成する各数値の、上記所定値への集中度を求めることで上記可逆圧縮処理部による圧縮度を推定するものであり、上記第２推定部は、上記第２オフセット部によって数値がオフセットされた画像を構成する各数値の、上記所定値への集中度を求めることで上記非可逆圧縮処理部による圧縮度を推定するものである」という形態は好ましい形態である。
【００１３】
このとき、「上記第１上位データ圧縮部および上記第２上位データ圧縮部のうち少なくとも一方が、上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部を備えたものであること」が好ましく、「上記第１上位データ圧縮部および上記第２上位データ圧縮部のうち少なくとも一方が、上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、符号と数値を対応づけるテーブルを用いて、上記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであること」はさらに好ましく、「上記第１上位データ圧縮部および上記第２上位データ圧縮部のうち少なくとも一方が、上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、ハフマンテーブルを用いて、上記第１の符号化部で符号化された後のデータにハフマン符号化を施す第２の符号化部を備えたものであること」は特に好ましい。さらには、「上記第１上位データ圧縮部および上記第２上位データ圧縮部のうち少なくとも一方が、上位データ中、１つもしくは複数の所定の圧縮対象数値を除く数値についてはそのまま出力するとともに、圧縮対象数値については、該圧縮対象数値と、該圧縮対象数値と同一の圧縮対象数値の連続数を表わす数値とに符号化して出力する第１の符号化部と、上記第１の符号化部で符号化された後のデータ中に出現する数値のヒストグラムを求めるヒストグラム推定部と、上記ヒストグラム推定部で求められたヒストグラムに基づき、符号と数値を対応づけるテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる符号割当部と、上記符号割当部で符号が割り当てられたテーブルを用いて、上記第１の符号化部で符号化された後のデータにエントロピー符号化を施す第２の符号化部を備えたものであること」がとりわけ好ましい。
【００１４】
また、第１分割部と第２分割部を備えた本発明の撮影装置において、「上記第１下位データ圧縮部および上記第２下位データ圧縮部のうち少なくとも一方が、符号と数値を対応づけるテーブルを用いて下位データにエントロピー符号化を施すものであること」が好ましく、「上記第１下位データ圧縮部および上記第２下位データ圧縮部のうち少なくとも一方が、ハフマンテーブルを用いて下位データにハフマン符号化を施すものであること」はさらに好ましい。このとき、「上記第１下位データ圧縮部および上記第２下位データ圧縮部のうち少なくとも一方が、圧縮省略の指示を受けて下位データを無圧縮で出力するものである」という形態であってもよい。
【発明の効果】
【００１５】
上記本発明の撮影装置によれば、選択転送部が、第１推定部により推定された圧縮度が第１の圧縮度より高い場合には、上記可逆圧縮部により可逆圧縮処理が施された画像データを上記のデータ受信装置に向けて転送することで圧縮前の画像の画質が維持される。また、第１推定部により推定された圧縮度が第１の圧縮度より低い場合には、選択転送部が、上記非可逆圧縮部により非可逆圧縮処理が施され、第２の圧縮度よりも高い圧縮度に保たれた画像データを上記のデータ受信装置に向けて転送することで、データ量が充分小さいために転送に余裕を持たせることができる。このように選択転送部が転送するデータの選択を行うことで、画質低下をなるべく抑えることと、転送時間をなるべく短縮することとが、バランスよく両立する。ここで、非可逆圧縮処理が施された画像データを選択転送部が転送する際には、この画像データのデータ量が充分小さいことを利用して、撮影環境における、音声、風力、温度、湿度、および気圧のうちの少なくとも１つの情報を表す撮影環境データを、この画像データに添付して送るといった応用が考えられる。こうすることで、ユーザは、画像以外の撮影環境の情報を得ることができ、非可逆圧縮処理により画質が若干低下した分が補われるので好都合である。
【００１６】
また、可逆圧縮処理の実行に当たり、画像データ中の数値の差分のデータを求めその差分のデータに対して可逆圧縮処理を施すことによって高い圧縮度が実現する。また、この差分のデータについて圧縮度の推定を行うことで圧縮度の推定値の精度が高まる。
【００１７】
また、上記本発明の撮影装置において、画像データを構成する数値の連続について隣接する数値どうしの差分を求める際に、２次元的な差分を求めるものであると、画像中の画素の間の２次元的な相関の強さを考慮に入れることが可能となり、圧縮度がより正確に求められる。
【００１８】
また、上記の判定部およびデータ変換部を備えることで、非可逆圧縮部により行われる非可逆圧縮処理の圧縮度を制御することができる。このとき、データ変換部が、数値を表現し直すに当たり、単位ビット数のビット値の下位桁を切り捨てる処理を行うことで、画像の特徴のうち比較的目立ちにくい細かな特徴だけが切り落とされ、データ量の削減が図られる。
【００１９】
また、数値がオフセットされた後に上位データと下位データとに分割されて、それぞれのデータに対しては可逆圧縮処理が実行されることで、上位データと下位データそれぞれの特徴に適した圧縮処理を行うことが可能となり、高い圧縮度が得られる。また、この圧縮方式による圧縮度は差分のデータに基づいて精度よく推定することができる。更に、圧縮処理の過程で差分データが作成されるため、データの兼用もできる。
【００２０】
また、上記の第１上位データ圧縮部および第２上位データ圧縮部のうち少なくとも一方が第１の符号化部を備えると、圧縮対象数値のみが、その圧縮対象数値と連続数とを表わす数値とに符号化されるため、原データよりも冗長度が増すという事態が回避され、圧縮率が向上する。
【００２１】
また、第１上位データ圧縮部および上記第２上位データ圧縮部のうち少なくとも一方が第２の符号化部を備えると、エントロピー符号化（典型的にはハフマン符号化）による、圧縮率の更なる向上が見込まれる。
【００２２】
さらに、第１上位データ圧縮部および上記第２上位データ圧縮部のうち少なくとも一方がヒストグラム算出部と符号割当部とを備え、第２の符号化部が、符号割当部で符号が割り当てられたテーブルを用いてエントロピー符号化（例えばハフマン符号化）を施すものであると、符号の割り当てが固定されたテーブルを用いたエントロピー符号化と比べ、圧縮率をさらに大きく向上させることができる。
【００２３】
また、上記の第１下位データ圧縮部および第２下位データ圧縮部のうち少なくとも一方がエントロピー符号化を施すものであると、エントロピー符号化（典型的にはハフマン符号化）による、圧縮率の更なる向上が見込まれる。
【００２４】
さらに、上記の第１下位データ圧縮部および第２下位データ圧縮部のうち少なくとも一方が、圧縮省略の指示を受けて下位データを無圧縮で出力するものであると、そのような指示によってより高速な圧縮処理を選択することができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施形態について説明する。
【００２６】
図１は、ＵＳＢを利用したカメラシステムの概略図である。
【００２７】
図１に示すカメラシステム１は、ＵＳＢカメラ２とＵＳＢケーブル３とパーソナルコンピュータ４とを備えている。
【００２８】
ＵＳＢカメラ２は、画像データを圧縮して転送する機能を有したものである。このＵＳＢカメラ２が、本発明の撮影装置の一実施形態である。
【００２９】
パーソナルコンピュータ４は、ＵＳＢケーブル３を介してＵＳＢカメラ２から送信されてきた圧縮画像データを受信し、受信した圧縮画像データを伸長する機能を有している。
【００３０】
図２は、ＵＳＢカメラの内部ブロック図である。
【００３１】
図２に示すＵＳＢカメラ２は、撮影を実行する撮影部２０、音声、風力、温度、湿度、および気圧といった撮影環境についてのデータを取得する環境情報取得部３０、圧縮処理を実行する圧縮処理部５００を備えている。
【００３２】
撮影部２０は、対物レンズ２０１とフォーカスレンズ２０２と、これらレンズを経由した被写体光が結像されるＣＣＤ２０３と、ビットマップ生成回路２０４とを備えている。
【００３３】
ビットマップ生成回路２０４は、ＣＣＤ２０３から出力されてきた、ＣＣＤ配列パターンに則したＢａｙｅｒ画像データ又は、各色（Ｒ色、Ｇ色、Ｂ色）毎のアナログ信号にサンプリングホールドおよびゲイン調整等の画像処理をそれぞれ行った後、不図示のＡ／Ｄコンバータによりそれぞれをデジタル信号に変換し、各色毎のビットマップデータを生成する。
【００３４】
環境情報取得部３０は、撮影時の音声を電気信号に変換するマイクロフォンや、撮影時の温度を測定して温度を表す電気信号を生成する温度センサや、風力を測定して風力を表す電気信号を生成する風力センサ、湿度を測定して電気信号を生成する湿度センサ、気圧を測定して電気信号を生成する気圧センサのうち少なくとも一つを備えており、これらの電気信号は環境情報取得部３０で信号処理されてデジタルデータ化された後、圧縮処理部５００内の後述の出力切換部５０１に送られる。以下では、環境情報取得部３０で信号処理されてデジタルデータ化されたデータを、環境情報データと呼ぶ。
【００３５】
圧縮処理部５００は、可逆圧縮処理を施す可逆圧縮処理部５００Ａと、非可逆圧縮処理を施す非可逆圧縮処理部５００Ｂとを備えており、ビットマップ生成回路２０４でビットマップに展開されて圧縮処理部５００に入力された画像データＤ０は、可逆圧縮処理部５００Ａと非可逆圧縮処理部５００Ｂとの両方に入力され、それぞれの圧縮処理部で別個に圧縮処理が施される。また、圧縮処理部５００には、可逆圧縮処理部５００Ａで可逆圧縮された画像データと、非可逆圧縮処理部５００Ｂで非可逆圧縮された画像データとが入力される出力切換部５０１が備えられており、出力切換部５０１は、後述するように、可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値に応じて、可逆圧縮された画像データと、非可逆圧縮された画像データとのうちいずれを出力するかを切り換える役割を担っている。
【００３６】
ここで、可逆圧縮処理部５００Ａには、可逆圧縮処理を実行するための各部として、第１差分符号化部１５１０、第１オフセット部１５２０、第１プレーン分割部１５３０、第１Ｌプレーン圧縮部１５４０、第１Ｈプレーン圧縮部１５５０、および第１圧縮率推定部１５７０が備えられている。
【００３７】
一方、非可逆圧縮処理部５００Ｂには、撮影画像を構成する全画素から可逆圧縮処理の対象となるＴＲＵＥ画素を間引く間引き処理部２５０５と、ＴＲＵＥ画素が間引かれた後に残った画素であって非可逆圧縮処理の対象となるＦＡＫＥ画素について非可逆圧縮処理を実行するための各部として、ＦＡＫＥ画素データ圧縮部２５６０、パラメータ設定部２５８０、およびエッジ検出部２５２５とが備えられている。さらに、非可逆圧縮処理部５００Ｂには、ＴＲＵＥ画素について可逆圧縮処理を実行するための各部として、第２差分符号化部２５１０、第２オフセット部２５２０、第２プレーン分割部２５３０、第２Ｌプレーン圧縮部２５４０、第２Ｈプレーン圧縮部２５５０、および第２圧縮率推定部２５７０が備えられている。
【００３８】
以上の圧縮処理部５００内の各部の詳細は後述するが、この圧縮処理部５００内での圧縮処理の流れは以下のとおりである。
【００３９】
まず、可逆圧縮処理部５００Ａでの圧縮処理について説明する。
【００４０】
圧縮処理部５００内に入力される画像データＤ０は８ビットの数値の連続で構成されており、この画像データＤ０が可逆圧縮処理部５００Ａに入力されると、可逆圧縮処理部５００Ａ内の第１差分符号化部１５１０に入力されて、２次元差分符号化処理、すなわち、入力されてきたデータを構成する数値の連続について、画像上で見てその数値に複数方向それぞれに隣接する複数の数値に基づいた２次元的な差分を求めることによりその差分を表わす８ビットの数値の連続からなる画像データを生成する処理が行われる。第１差分符号化部１５１０で生成された、差分を表わす数値の連続からなる画像データは、次に、第１オフセット部１５２０に入力されて所定量のオフセットが施される。
【００４１】
第１圧縮率推定部１５７０では、オフセット後の画像データを解析して、第１Ｌプレーン圧縮部２５４０および第１Ｈプレーン圧縮部２５５０による圧縮処理でどの程度の圧縮率が達成されるかを推定する。ここで、圧縮率は、元の画像データのデータ量に対する圧縮後の画像データのデータ量の割合を意味し、大きく圧縮されるほど、小さい値の圧縮率となる。第１圧縮率推定部１５７０による推定では、後述するように、オフセット後の画像データを構成する数値のヒストグラムの偏りが大きいほど、圧縮率の推定値は小さくなる。ここで、値「１」から圧縮率を引いた値（すなわち、圧縮処理によるデータ減少量の、元の画像データのデータ量に対する割合）が、本発明にいう圧縮度の一例に相当する。第１圧縮率推定部１５７０には、圧縮処理の実行に先立ち、可逆圧縮処理部５００Ａにおける圧縮処理の際に圧縮率の目標となる目標圧縮率があらかじめ入力されており、第１圧縮率推定部１５７０は、圧縮率の推定値がこの目標圧縮率以下か否かを判定し、その判定結果を出力切換部５０１に出力する。ここで、この目標圧縮率は、ユーザが図１のパーソナルコンピュータ４の表示画面上で画像を観察する際に、画像表示が遅いとユーザに感じられない程度に、短時間で圧縮後の画像データがパーソナルコンピュータ４に送信されるための上限の閾値を与える圧縮率であり、出力切換部５０１における出力データ量の限界に対応する圧縮率である。以下では、第１圧縮率推定部１５７０に入力される目標圧縮率を第１目標圧縮率と呼ぶ。
【００４２】
第１プレーン分割部１５３０では、オフセット後の画像データ中の８ビットの各数値が、下位ビットと上位ビットとに分けられることにより、画像データが、下位ビットの数値の連続からなる下位サブプレーン１Ｄ１Ｌと上位ビットの数値の連続からなる上位サブプレーン１Ｄ１Ｈとに分割される。ここで、下位サブプレーン１Ｄ１Ｌおよび上位サブプレーン１Ｄ１Ｈは、それぞれ、本発明にいう下位データおよび上位データの各一例に相当する。
【００４３】
第１プレーン分割部１５３０で分割された下位サブプレーン１Ｄ１Ｌおよび上位サブプレーン１Ｄ１Ｈは、それぞれ、第１Ｌプレーン圧縮部１５４０および第１Ｈプレーン圧縮部１５５０において可逆圧縮が施される。
【００４４】
第１Ｌプレーン圧縮部１５４０にはハフマン符号化部１５４１が備えられており、ハフマン符号化部１５４１では、数値と符号とを対応づけるハフマンテーブルに従って、そのハフマン符号化部１５４１に入力されてきた下位サブプレーンＤ１Ｌを構成する数値をそのハフマンテーブルに従う符号に置き換える符号化処理が行われる。このハフマン符号化は、エントロピー符号化の一種である。なお、第１Ｌプレーン圧縮部１５４０にはモード切換部１５４２が組み込まれており、このモード切換部１５４２は、ユーザから、高速モードと通常モードとの切り換えを指示されて、上記のハフマン符号化部１５４１によるハフマン符号化を経る通常モードと、ハフマン符号化を省略して下位サブプレーン１Ｄ１Ｌをそのまま出力する高速モードとを切り換える。従って、最終的に第１Ｌプレーン圧縮部１５４０からは、通常モードの場合には、下位サブプレーン１Ｄ１Ｌがハフマン符号化により圧縮された下位圧縮データ１Ｄ２Ｌが出力され、高速モードの場合には、ハフマン符号化が施されていない下位圧縮データ１Ｄ２Ｌが出力されることになる。
【００４５】
一方、第１Ｈプレーン圧縮部５５０には、ランレングス符号化部１５５１と、データスキャニング部１５５２と、ハフマン符号化部１５５３が備えられており、上位サブプレーン１Ｄ１Ｈは、第１Ｈプレーン圧縮部１５５０中のランレングス符号化部１５５１に入力される。
【００４６】
第１Ｈプレーン圧縮部１５５０中のランレングス符号化部１５５１は、入力されてきた上位サブプレーン１Ｄ１Ｈに対し、上述した、第１Ｌプレーン圧縮部１５４０中のランレングス符号化部１５４５で行われたのと同様のランレングス符号化を施す。本実施形態では、第１Ｈプレーン圧縮部１５５０中のランレングス符号化部５５１が、本発明にいう第１の符号化部の一例に相当する。第１Ｈプレーン圧縮部１５５０中のランレングス符号化部１５５１での符号化後のデータは、次に、データスキャニング部１５５２とハフマン符号化部１５５３との双方に入力される。データスキャニング部１５５２では、ランレングス符号化部１５５１で符号化された後のデータの全てをスキャニングして、そのデータ中に出現する全ての数値の出現頻度（ヒストグラム）が求められる。ここで、この出現頻度を求める処理は、本実施形態では、図２に示す上位サブプレーンＤ１Ｈの１つずつを単位として実行され、各上位サブプレーン１Ｄ１Ｈの、ランレングス符号化部１５５１で符号化された後のデータ中の数値の出現頻度が求められる。さらに、データスキャニング部１５５２では、求められたデータヒストグラム（数値の出現頻度）に基づき、ハフマンテーブルに、出現頻度の高い数値ほど符号長の短かい符号を割り当てる。このデータスキャニング部１５５２が、本発明にいうヒストグラム算出部および符号割当部の一例に相当する。
【００４７】
データスキャニング部１５５２で数値に符号が割り当てられてなるハフマンテーブルは、ハフマン符号化部１５５３に渡され、ハフマン符号化部１５５３では、その渡されたハフマンテーブルに従って、そのハフマン符号化部１５５３に入力されてきたデータを構成する数値を、そのハフマンテーブルに従う符号、すなわち、出現頻度の高い数値ほど短かいビット長で表わされる符号に置き換える符号化処理が行われる。このハフマン符号化部１５５３は、本発明にいう第２の符号化部の一例に相当する。
【００４８】
ハフマン符号化部１５５３でハフマン符号化された後のデータは、データスキャニング部１５５２で割り当てられた数値と符号との割当テーブルを含む圧縮情報が添付され、上位サブプレーン１Ｄ１Ｈが圧縮された上位圧縮データ１Ｄ２Ｈとして第１Ｈプレーン圧縮部１５５０から出力される。
【００４９】
このように第１Ｌプレーン圧縮部１５４０および第１Ｈプレーン圧縮部１５５０のそれぞれから出力される下位圧縮データ１Ｄ２Ｌと上位圧縮データ１Ｄ２Ｈとの組で、元の画像データに対する可逆圧縮処理が施された圧縮データが構成される。この圧縮データは、出力切換部５０１に入力される。
【００５０】
次に、非可逆圧縮処理部５００Ｂでの圧縮処理について説明する。
【００５１】
画像データＤ０が可逆圧縮処理部５００Ａに入力されると、間引き処理部２５０５により、可逆圧縮処理の対象となるＴＲＵＥ画素の画素データと、非可逆圧縮処理の対象となるＦＡＫＥ画素の画素データとに分けられる。この２種類の画素データに分ける方式については後述する。
【００５２】
ＴＲＵＥ画素の画素データに対しては、非可逆圧縮処理部５００Ｂ内の第２差分符号化部２５１０、第２オフセット部２５２０、第２プレーン分割部２５３０、第２Ｌプレーン圧縮部２５４０、および第２Ｈプレーン圧縮部２５５０により、上述した可逆圧縮処理部５００Ａの可逆圧縮処理と同様の処理が行われる。すなわち、第２差分符号化部２５１０で、上述した第１差分符号化部１５１０と同様の２次元差分符号化処理が行われ、第２オフセット部２５２０に入力されて所定量のオフセットが施される。そして、第２プレーン分割部２５３０で、画像データが、下位ビットの数値の連続からなる下位サブプレーン２Ｄ１Ｌと上位ビットの数値の連続からなる上位サブプレーン２Ｄ１Ｈとに分割され、それぞれ、第２Ｌプレーン圧縮部２５４０および第２Ｈプレーン圧縮部２５５０に入力される。第２Ｌプレーン圧縮部２５４０および第２Ｈプレーン圧縮部２５５０は、それぞれ、上述した第１Ｌプレーン圧縮部１５４０および第１Ｈプレーン圧縮部１５５０と同様の構成を備えている。例えば、第２Ｌプレーン圧縮部２５４０にも、ハフマン符号化部２５４１およびモード切換部２５４２が備えられており、これらにより、第１Ｌプレーン圧縮部１５４０と同様な処理が施されて下位圧縮データ２Ｄ２Ｌが出力される。一方、第２Ｈプレーン圧縮部２５５０には、ランレングス符号化部２５５１と、データスキャニング部２５５２と、ハフマン符号化部２５５３が備えられており、これらにより、第１Ｈプレーン圧縮部１５５０と同様な処理が施されて上位圧縮データ２Ｄ２Ｈが出力される。
【００５３】
一方、ＦＡＫＥ画素の画素データに対しては、ＦＡＫＥ画素データ圧縮部２５６０により、非可逆圧縮処理が施される。このＦＡＫＥ画素データ圧縮部２５６０には、ビット短縮部２５６１と、ランレングス符号化部２５６２と、ハフマン符号化部２５６３とが備えられており、ＦＡＫＥ画素データを構成する数値はビット短縮部２５６１で１ビットまたは４ビットの符号に置換される。ここで、ＦＡＫＥ画素データを構成する数値が、ビット短縮部２５６１において４ビットあるいは１ビットの２種類の符号のいずれに置換されるは、その数値の画素値を有するＦＡＫＥ画素が、画像のエッジ部分に属する画素であるか否かによって決定され、エッジ部分に属するか否かの判定は、エッジ検出部２５２５によって行われる。このエッジ検出部２５２５の判定に基づき、ビット短縮部２５６１では、画像のエッジ部分に属する画素の画素値は４ビットの符号に置換され、画像のエッジ部分に属さない画素の画素値は１ビットの符号に置換される。１ビットまたは４ビットの符号に置換されたデータは、ランレングス符号化部２５６２およびハフマン符号化部２５６３によって、上記第１Ｈプレーン圧縮部１５５０における処理と全く同様の処理が施される。ここで、ＦＡＫＥ画素データ圧縮部２５６０にも、第１Ｈプレーン圧縮部１５５０のデータスキャニング部１５５２と同様の働きをするデータスキャニング部が存在するが、その図示は省略されている。ランレングス符号化処理およびハフマン符号化処理が施されたＦＡＫＥ画素データは、非可逆圧縮データ２Ｄ３としてＦＡＫＥ画素データ圧縮部２５６０から出力される。
【００５４】
第２Ｌプレーン圧縮部２５４０および第２Ｈプレーン圧縮部２５５０のそれぞれから出力される下位圧縮データ２Ｄ２Ｌと上位圧縮データ２Ｄ２Ｈとに、さらに非可逆圧縮データ２Ｄ３が加わったデータの組で、元の画像データＤ０に対し、非可逆圧縮処理部５００Ｂにおいて非可逆圧縮処理が施された圧縮データが構成される。この圧縮データは、出力切換部５０１に入力される。
【００５５】
また、非可逆圧縮処理部５００Ｂ内にも、オフセット後の画像データを解析して、第２Ｌプレーン圧縮部２５４０および第２Ｈプレーン圧縮部２５５０による可逆圧縮処理でどの程度の圧縮率が達成されるかを推定する第２圧縮率推定部２５７０が備えられている。この推定方式は第１圧縮率推定部１５７０と同様である。本実施形態では、この可逆圧縮処理での圧縮率の推定値に、全画素中のＴＲＵＥ画素の割合（間引き率）を乗じた値を、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値の可逆圧縮処理成分としており、また、仮想的にＦＡＫＥ画素全部についてＦＡＫＥ画素データ圧縮部２５６０で４ビット符号化が行われランレングス符号化処理およびハフマン符号化処理は行われなかったとしたときのＦＡＫＥ画素データ圧縮部２５６０での圧縮率に、全画素中のＦＡＫＥ画素の割合を乗じた値を、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値の非可逆圧縮処理成分としている。非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値は、上記の圧縮率の推定値の可逆圧縮処理成分と圧縮率の推定値の非可逆圧縮処理成分との合計の値として得られる。ここで、圧縮率の非可逆圧縮処理成分は、この方式では画像データによらず一定であり、第２Ｌプレーン圧縮部２５４０および第２Ｈプレーン圧縮部２５５０による可逆圧縮処理の圧縮率の推定値が得られれば、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値が求められる。実際には、ＦＡＫＥ画素データ圧縮部２５６０における１ビット符号化、ランレングス符号化処理、およびハフマン符号化処理の効果を考えると、実際の非可逆圧縮処理部５００Ｂ全体での圧縮率の値は、この推定値よりも小さいことが期待される。第２圧縮率推定部２５７０には、圧縮処理の実行に先立ち、非可逆圧縮処理部５００Ｂにおける圧縮処理の際に圧縮率の目標となる目標圧縮率があらかじめ入力されており、第２圧縮率推定部２５７０は、この非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値が、この目標圧縮率以下か否かを判定する。この目標圧縮率は、非可逆圧縮処理された画像データと、上述した環境情報データとを組み合わせても全体のデータ量が膨大にならないように、全体のデータ量を、出力切換部５０１における出力データ量の限界以下に抑えるための上限の閾値を与える圧縮率であり、この目標圧縮率の値は、上述した第１目標圧縮率の値よりも小さい値となっている。以下では、第２圧縮率推定部２５７０に入力される目標圧縮率を第２目標圧縮率と呼ぶ。第２圧縮率推定部２５７０による判定の結果はパラメータ設定部２５８０に入力される。パラメータ設定部２５８０は、圧縮率の推定値が第２目標圧縮率の値を超えているという判定結果が得られた場合は、エッジ部分であるか否かの判定基準を与えるためにエッジ検出部２５２５に設定されている閾値パラメータを変更させることでエッジ部分であるための条件を厳しくし、エッジ部分であると判定されるＦＡＫＥ画素の数を減少させる。この結果、非可逆圧縮処理部５００Ｂにおける圧縮処理の方式が、圧縮率の値がより小さく高圧縮の圧縮処理に移行することとなる。一方、圧縮率の推定値が第２目標圧縮率以下であるという判定結果が得られた場合は、パラメータ設定部２５８０は、圧縮率の推定値と第２目標圧縮率との差の大きさに応じて、エッジ部分であるための条件を緩める。この結果、非可逆圧縮処理部５００Ｂにおける圧縮処理の方式が、圧縮率の値が第２目標圧縮率以下に維持されるとともに、過度に圧縮しすぎないことで画質の劣化も回避される圧縮処理に移行することとなる。
【００５６】
出力切換部５０１は、可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値が、上述した第１目標圧縮率以下である場合は、可逆圧縮処理部５００Ａで可逆圧縮処理された画像データを、ＵＳＢケーブル３を介して図１のパーソナルコンピュータ４に向けて送信し、可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値が第１目標圧縮率を超えた場合は、非可逆圧縮処理部５００Ａで非可逆圧縮処理された画像データに、上述した環境情報データを添付して図１のパーソナルコンピュータ４に送信する。
【００５７】
パーソナルコンピュータ４に送られてきた圧縮データは、パーソナルコンピュータ４においてデータ伸長処理が施される。ここで、データ伸長処理にあたっては、上述した各種の符号化処理に対応する復号化処理が施される。そして、復号化処理後の画像データに基づき、パーソナルコンピュータ４の表示画面上に画像が表示される。
【００５８】
以上説明したような画像データの圧縮処理と復号化処理が繰り返し行われることで、パーソナルコンピュータ４の表示画面上にはリアルタイムで画像が表示される。このとき、可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値が第１目標圧縮率以下となって高圧縮が実現している間は、可逆圧縮処理部５００Ａで可逆圧縮処理された画像データに基づいて、画質を落とすことなく画像がパーソナルコンピュータ４の表示画面上に表示され続ける。可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値が第１目標圧縮率を超えて低圧縮の状態となると、送信時間が長くなることを回避するため、送信される画像データは、非可逆圧縮処理部５００Ｂで非可逆圧縮処理された、可逆圧縮処理部５００Ａで可逆圧縮処理された画像データよりもデータ量の小さい画像データに切り換えられる。このとき、画質が少し劣化した画像がパーソナルコンピュータ４の表示画面上に表示されることとなるが、この場合には、送信データ中の環境情報データに基づき、撮影場所付近の音声、撮影時の温度、風力、湿度、および気圧といった撮影環境の情報が、画像とともに表示画面上に表示される。この結果、撮影環境の情報という別の情報をユーザは得ることができるので、画質が少し犠牲になる分が補われることとなる。
【００５９】
次に、圧縮処理部５００での処理について詳しく説明する。
【００６０】
まず、図２の圧縮処理部５００を構成する可逆圧縮処理部５００Ａでの可逆圧縮処理について詳しく説明する。
【００６１】
図３は、図２の可逆圧縮処理部５００Ａに入力される画像データの構造を示す図、図４は、この画像データに対して２次元差分符号化処理が施された後のデータの構造を示す図である。
【００６２】
画像データで表される画像は、所定の主走査方向に画素がＭ個並んでなるラインが、その主走査方向とは直角な副走査方向にＮライン並ぶことによって構成されており、このような構成を反映してその画像データも、図３に示すように、主走査方向（図の左右方向）に画素値がＭ個並んでなるラインが、副走査方向（図の上下方向）にＮライン並んでいるという構造を備えている。この図では、上からｎ番目のライン中の、左からｍ番目の画素値はＰｎ，ｍと表記されており、この表記法を用いて、副走査方向にｎ番目のラインについては、主走査方向に並ぶ各画素の画素値が、その並び順に、
Ｐｎ，１，Ｐｎ，２，…，Ｐｎ，ｍ−１，Ｐｎ，ｍ，…，Ｐｎ，Ｍ−２，Ｐｎ，Ｍ−１，Ｐｎ，Ｍ
と表されている。これらの画素値は、１６進表示で表された数値である。
【００６３】
ここで、図２に示す圧縮処理部５００を構成する第１差分符号化部１５１０には、上記のような画像データが入力されて２次元差分符号化処理が施され、主走査方向に隣接する画素どうしの差分における副走査方向での更なる差分が求められる。
【００６４】
図４には、２次元差分符号化処理が施されたデータの構造が示されており、このデータも、２次元差分符号化後の画素値が主走査方向にＭ個並んでなるラインが、副走査方向にＮライン並んでいるという構造を備えている。この図では、上からｎ番目のライン中の、左からｍ番目の、２次元差分符号化後の画素値は、Ｘｎ，ｍと表記されており、この２次元差分符号化後の画素値Ｘｎ，ｍは、図３の中央部に示す、２次元差分符号化前の４つの画素値｛Ｐｎ−１，ｍ−１，Ｐｎ−１，ｍ，Ｐｎ，ｍ−１，Ｐｎ，ｍ｝から、下記の変換式によって得られる。
Ｘｎ，ｍ＝（Ｐｎ，ｍ−Ｐｎ，ｍ−１）−（Ｐｎ−１，ｍ−Ｐｎ−１，ｍ−１）                …（１）
ここで、ｎ＝１の場合やｍ＝１の場合には、右辺の２次元差分符号化前の画素値の添え字に０が現れることとなるが、添え字が０となる画素値については、下記のように定義する。
Ｐ０，０＝Ｐ０，ｍ＝００  （ｍ＝１〜Ｍ），  Ｐｎ，０＝Ｐｎ−１，Ｍ  （ｎ＝１〜Ｎ）…（２）  ここで、式（２）の「００」は、画素値を１６進表示で表したときに値がゼロであることを表している。以下、式（１）および式（２）の意味について簡単に説明する。
【００６５】
式（１）は、主走査方向に隣接する画素どうしの差分（すなわち、カッコの中の値）における副走査方向での更なる差分によって２次元差分符号化後の画素値Ｘｎ，ｍが得られることを表しており、２次元差分符号化前の画素値Ｐｎ，ｍが隣接する画素の画素値と相関が強い（すなわち同じような大きさの画素値である）場合には、２次元差分符号化後の画素値Ｘｎ，ｍは、ゼロに近い値となる。
【００６６】
式（２）は、副走査方向の仮想的な０番目のラインと、各ラインの左から０番目の仮想的な画素値とを新たに設けたときの各画素値の定義を表す式である。主走査方向については左端の画素値（左から０番目の画素値Ｐｎ，０）とそのラインより１ライン前のラインの右端の画素値Ｐｎ−１，Ｍとを同一視するという定義となっている。また、副走査方向については、図の一番上側の画素値（０番目のライン上の画素値）、すなわち、Ｐ０，０やＰ０，ｍが全て０に固定された定義となっている。
【００６７】
２次元差分符号化後のデータにおいて、１ライン目の画素値、および各ラインの１番目の画素値については、式（１）の変換式の右辺に、添え字が「０」である項が現れるため、式（２）の定義が適用されることとなる。具体的には上記の式（１）および式（２）により、２次元差分符号化後の１ライン目の画素値は、
Ｘ１，１＝Ｐ１，１，
Ｘ１，２＝Ｐ１，２−Ｐ１，１，
Ｘ１，３＝Ｐ１，３−Ｐ１，２，
…………
Ｘ１，Ｍ＝Ｐ１，Ｍ−Ｐ１，Ｍ−１
のように表される。
【００６８】
一方、２次元差分符号化後のデータにおいて、各ラインの１番目の画素値については、上記の式（２）により、
Ｘ１，１＝Ｐ１，１，
Ｘ２，１＝（Ｐ２，１−Ｐ１，Ｍ）−Ｐ１，１，
Ｘ３，１＝（Ｐ３，１−Ｐ２，Ｍ）−（Ｐ２，１−Ｐ１，Ｍ），
…………
ＸＮ，１＝（ＰＮ，１−ＰＮ−１，Ｍ）−（ＰＮ−１，１−ＰＮ−２，Ｍ）
のように表される。このように、１ライン目の画素値、および各ラインの１番目の画素値については、その変換の仕方がやや特殊であるが、これらの画素値以外の画素値については、式（２）の定義が適用されることなく、式（１）がそのまま適用される。例えば、２ライン目の画素値のうち一番左端を除いた画素値は、
Ｘ２，２＝（Ｐ２，２−Ｐ２，１）−（Ｐ１，２−Ｐ１，１），
Ｘ２，３＝（Ｐ２，３−Ｐ２，２）−（Ｐ１，３−Ｐ１，２），
…………
Ｘ２，Ｍ＝（Ｐ２，Ｍ−Ｐ２，Ｍ−１）−（Ｐ１，Ｍ−Ｐ１，Ｍ−１）
のように表される。
【００６９】
この２次元差分符号化処理を、具体的な数値を用いて説明する。
【００７０】
図５は、図２の圧縮処理部５００を構成する第１差分符号化部１５１０における２次元差分符号化処理を例示して示す図である。
【００７１】
この図の左側（パート（Ａ））に示す各数値が画像データを構成する画素値であり、この図の右側（パート（Ｂ））に示す各数値が２次元差分符号化処理で出力される出力値である。この図の横方向が主走査方向であり、主走査方向に並んだ８つの数値の並びが上記のラインである。この図に示すデータにはこうした８つの数値が並んだラインが全部で８本あり、図３および図４のデータにおいてＮ＝８，Ｍ＝８の場合のデータに相当する。
【００７２】
図５のパート（Ａ）に示すデータの２次元差分符号化処理では、先ず、１ライン目の各画素値「９０  ８Ａ  ８Ａ  ７Ｂ  …」のうち、一番左の「９０」については、この値がそのまま上記のＸ１，１として出力され、それ以外のＸ１，２，Ｘ１，３，…については、主走査方向に隣接する画素値どうしの差分の値「８Ａ−９０＝ＦＡ」「８Ａ−８Ａ＝００」…が出力される。ここで、「８Ａ」から「９０」を引き算した結果は実際には負の数となり、９ビットで「１ＦＡ」と表されるが、ＭＳＢの１ビットである最上位の「１」は省略し、下位８ビットである「ＦＡ」のみを出力する。
【００７３】
２ライン目については、Ｘ２，１を求める式、
Ｘ２，１＝（Ｐ２，１−Ｐ１，Ｍ）−Ｐ１，１
において、Ｍ＝８としたときの右辺の｛Ｐ２，１，Ｐ１，８，Ｐ１，１｝に対し、図５のパート（Ａ）に示す数値が代入されて、「（８７−５８）−９０＝９Ｆ」がＸ２，１として出力される。それ以外のＸ２，２，Ｘ２，３，…については、２ライン目についての主走査方向に隣接する画素値どうしの差分と、１ライン目についての主走査方向に隣接する画素値どうしの差分とのさらなる差分の値「（８４−８７）−（８Ａ−９０）＝３」「（８８−８４）−（８Ａ−８Ａ）＝０４」…が出力される。
【００７４】
３ライン目については、Ｘ３，１を求める式、
Ｘ３，１＝（Ｐ３，１−Ｐ２，Ｍ）−（Ｐ２，１−Ｐ１，Ｍ）
において、Ｍ＝８としたときの右辺の｛Ｐ３，１，Ｐ２，８，Ｐ２，１，Ｐ１，８｝に、図５のパート（Ａ）に示す数値が代入されて、「（８Ｂ−４Ｃ）−（８７−５８）＝１０」がＸ３，１として出力される。それ以外のＸ３，２，Ｘ３，３，…については、３ライン目についての主走査方向に隣接する画素値どうしの差分と、２ライン目についての主走査方向に隣接する画素値どうしの差分とのさらなる差分の値「（８６−８Ｂ）−（８４−８７）＝ＦＥ」「（８Ａ−８６）−（８８−８４）＝００」…が出力される。
【００７５】
以下、４ライン目以降についても、３ライン目の演算と同じ演算を繰り返すことにより、図５のパート（Ｂ）に示す各数値が得られることとなる。
【００７６】
図１に示すパーソナルコンピュータ４では、このように２次元差分符号化されたデータに対してデータの復号化処理が行われる。この復号化処理では、２次元差分符号化されたデータの値からＰｎ，ｍを求める式が使用されており、この式は以下のようにして求めることができる。
【００７７】
２次元差分符号化後の画素値Ｘｉ，ｊを、ｉ＝１からｉ＝ｍまで足し上げ、さらにｊ＝１からｊ＝ｍについて足し上げた結果は、式（１）および式（２）を用いて下記の式（３）のように表される。
【００７８】
【数１】
2009117997.tif 000003
【００７９】
ここで、式の途中に現れる｛Ｐ０，０，Ｐｎ，０，Ｐ０，ｍ｝に対して、式（２）が適用されている。この式から、２次元差分符号化前の画素値Ｐｎ，ｍは、下記の式（４）のように表される。
【００８０】
【数２】
2009117997.tif 000004
【００８１】
図１に示すパーソナルコンピュータ４では、上記の式（４）により、先ず、１ライン目の画素値Ｐ１，１，Ｐ１，２，…，Ｐ１，Ｍが求められる。例えば、１ライン目の画素値のうち主走査方向にｍ番目の画素値は、上記の式（４）にｎ＝１を代入し、さらに式（２）のＰ０，Ｍ＝０を利用して、下記の式（５）のように表される。
【００８２】
【数３】
2009117997.tif 000005
【００８３】
このようにして、１ライン目の画素値、Ｐ１，１，Ｐ１，２，…，Ｐ１，Ｍがすべて求められる。
【００８４】
２ライン目の画素値Ｐ２，１，Ｐ２，１，…，Ｐ２，Ｍについては、同様に上記の式（４）にｎ＝２を代入し、さらに１ライン目の画素値の複合化で得られたＰ１，Ｍを用いることで求めることができる。例えば、２ライン目の画素値のうち主走査方向にｍ番目の画素値は、下記の式（６）のように表される。
【００８５】
【数４】
2009117997.tif 000006
【００８６】
３ライン目以降の画素値についても同様にして、上記の式（６）やそれ以降の計算で複合化された画素値を用いて求めることができる。図１に示すパーソナルコンピュータ４では、このような方式でデータの復号化処理が行われる。
【００８７】
図２の第１差分符号化部１５１０では、以上説明したような２次元差分符号化が画像データに施される。この２次元差分符号化によって得られるデータは、図２の第１オフセット部１５２０に入力され、そのデータの各数値について所定のオフセット値が加算され、データが下位サブプレーンＤ１Ｌと上位サブプレーンＤ１Ｈとに分割される。ここでは、データの分割までの処理について具体的な画像を例に用いて説明する。
【００８８】
図６は、画像データの例を示す図である。
【００８９】
この図６のパート（Ａ）には、画像の一例としてモノクロの風景画像が示されており、本実施形態では、このような画像の各画素における色の濃度が８ビットの数値で表現された画像データが用いられる。図６のパート（Ｂ）には、パート（Ａ）に示す風景画像を表す画像データにおけるデータ値のヒストグラムが示されており、このヒストグラムの横軸はデータ値、縦軸はデータ数（画素数）を表している。通常の画像ではヒストグラムの幅が広く、ヒストグラム中でデータ数の山谷は生じてもヒストグラムの途中にデータ数が「０」の領域が生じることは極めてまれである。
【００９０】
図７は、画像データに対する差分符号化およびオフセットの効果を示す図である。
【００９１】
この図７のパート（Ａ）には、図６に示した画像データに対して差分符号化が施されて得られるデータのヒストグラムが示されており、このヒストグラムの横軸はデータ値、縦軸は出現頻度を表している。画像データに対して、図４および図５で説明した差分符号化が施されると、データのヒストグラムは、一般に、この図７のパート（Ａ）に示すような、最小データ値と最大データ値の双方に鋭いピークを有するヒストグラムとなる。そして、このようなデータに対してオフセットが施されると、データのヒストグラムは、図７のパート（Ｂ）に示すような、オフセット値のところに鋭いピークを持つヒストグラムとなる。本実施形態ではオフセット値として「８」が用いられており、オフセットの結果、値が「１６」以上となるデータの頻度はほとんど「０」となっている。
【００９２】
このように差分符号化およびオフセットによってヒストグラムが変形されたデータは、図２の第１プレーン分割部１５３０によって下位サブプレーン１Ｄ１Ｌと上位サブプレーン１Ｄ１Ｈとに分割される。
【００９３】
図８は、第１プレーン分割部１５３０によるデータ分割の効果を説明する図である。
【００９４】
この図８には、図７のパート（Ｂ）に示すヒストグラムがデータ値「１５」とデータ値「１６」との間で切り離されたヒストグラムが示されており、図２の第１プレーン分割部１５３０によるデータ分割は、まさにこのようなヒストグラムの分割に相当する効果を生じる。すなわち、本実施形態では、データを構成している８ビットの各数値が上位４ビットと下位４ビットとに分割されることで、下位４ビットが表す数値の連続からなる下位サブプレーン１Ｄ１Ｌと上位４ビットが表す数値の連続からなる上位サブプレーン１Ｄ１Ｈとが得られる。そして、下位サブプレーン１Ｄ１Ｌを構成する４ビットの数値が値「０」から値「１５」までの各数値をそのまま表現していて、上位サブプレーン１Ｄ１Ｈを構成する４ビットの数値の場合は、値「１６」から値「２５６」までの、１６間隔１６種類の数値を表現していると解釈すると、下位サブプレーン１Ｄ１Ｌのヒストグラムは、この図８の左側に示されたヒストグラムとほぼ同じものとなり、上位サブプレーン１Ｄ１Ｈのヒストグラムは、図８の右側に示されたヒストグラムとほぼ同じものとなる。ただし、上位サブプレーン１Ｄ１Ｈのヒストグラムについては、図８の右側に示されたヒストグラムのデータ値「１６」のところに、図８の左側に示されたヒストグラムの面積に等しい高さのピークが付加されたものとなる。
【００９５】
以下では、上位サブプレーン１Ｄ１Ｈと下位サブプレーン１Ｄ１Ｌとに分割された後のデータの処理について説明する。
【００９６】
まず、上位サブプレーン１Ｄ１Ｈに対する処理について説明する。
【００９７】
図８の右側に示されたヒストグラムにおいて画素の出現頻度がほとんどゼロに近いことからわかるように、上位サブプレーン１Ｄ１Ｈ中の数値は、ゼロに近い値（１６進数表示での「００」や「０１」や「ＦＦ」）の連続が多いことが予想される。このため、上位サブプレーン１Ｄ１Ｈに圧縮を施すには、同一の数値の連続を符号化することで圧縮を行うランレングス符号化が有効であり、上位サブプレーン１Ｄ１Ｈは、図２に示す第１Ｈプレーン圧縮部１５５０の構成要素の１つであるランレングス符号化部１５５１に入力される。
【００９８】
本実施形態では、処理の都合上、ランレングス符号化部１５５１で、上位サブプレーン１Ｄ１Ｈを構成する連続した４ビットの数値が２つで１つの８ビットの数値として取り扱われ、１６進数表示で値「００」から値「ＦＦ」までの数値の連続に対して以下の符号化処理が適用される。
【００９９】
この符号化処理では、複数の８ビットの数値のうちの特定の数値についてのみ符号化処理が行なわれる。このため、このランレングス符号化部１５５１では、受け取ったデータの中から、符号化処理を行なう数値（ここでは、この数値を「圧縮対象数値」と称する）と、その圧縮対象数値の連続数が検出される。
【０１００】
本実施形態では、一例として、「０１」、「ＦＦ」および「００」の３つの数値を圧縮対象数値としている。
【０１０１】
図９は、図２に示すランレングス符号化部１５５１での符号化の説明図である。
【０１０２】
図９の上のラインは、上位サブプレーン１Ｄ１Ｈを構成するデータ、下のラインは、ランレングス符号化部１５５１での符号化処理を行なった後のデータである。
【０１０３】
ここでは、図９の上のラインに示すように、ランレングス符号化部１５５１からは、
「０６  ０２  ０２  ０２  ０１  ０１  ０１  ０１  ０４  ０５  ００  …  」
なるデータが入力されたものとする。このとき、図２のランレングス符号化部１５５１では、先頭の「０６」は圧縮対象数値ではなく、次に続く「０２  ０２  ０２」も圧縮対象数値ではなく、次に、圧縮対象数値である「０１」が４つ連続していること、次に、圧縮対象数値ではない「０４」、「０５」を間に置いて、圧縮対象数値である「００」が３２７６７個連続していることが検出される。
【０１０４】
図１０は、ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。
【０１０５】
この図１０中、Ｚは同一の圧縮対象数値の連続数、例えば図９の上のラインの「０１」についてはＺ＝４、「００」についてはＺ＝３２７６７である。
【０１０６】
また、図１０中、「ＹＹ」は、１６進２桁で表わされた圧縮対象数値自体を表わしている。その「ＹＹ」に続く、「０」又は「１」は１ビットで表現された「０」又は「１」であり、さらにそれに続く「ＸＸＸ  ＸＸＸＸ…」は、１つの「Ｘ」が１ビットを表わしており、この「ＸＸＸ  ＸＸＸＸ…」でＺの値を表現している。
【０１０７】
すなわち、図１０は、圧縮対象数値「ＹＹ」がＺ＜１２８連続するときは、１バイト目で圧縮対象数値「ＹＹ」を表現し、それに続く１バイトで、先頭ビットが「０」、それに続く７ビットでＺの値を表現すること、また、圧縮対象数値「ＹＹ」がＺ≧１２８連続するときは、１バイト目で圧縮対象数値「ＹＹ」を表現し、それに続く２バイト（１６ビット）のうちの先頭の１ビットを「１」とすることで２バイトに跨って表現されていることを表現し、それに続く１５ビットで、Ｚの値を表現することを意味している。
【０１０８】
この図１０に示す規則に従って図９に示す符号化の例について説明する。
【０１０９】
図２の第１プレーン分割部１５３０から入力されてきた上位サブプレーン１Ｄ１Ｈのデータ（上のライン）を構成する先頭の数値「０６」は圧縮対象数値ではないため、その「０６」のまま出力される。また、それに続く「０２  ０２  ０２」も、「０２」は圧縮対象数値ではなく、これら３つの「０２」もそのまま出力される。次に、圧縮対象数値である「０１」が４個連続するため、「０１  ０４」に符号化される。次の「０４」及び「０５」は圧縮対象数値ではないため、そのまま「０４  ０５」が出力される。
【０１１０】
次に「００」が３２７６７個連続しているため、「００」を置き、次の１バイトのうちの先頭の１ビットを「１」とし、次いで１５ビットで３２７６７−１２８を表現することにより、「００  ＦＦ  ７Ｆ」の３バイトで「００」が３２７６７個連続していることを表現する。すなわち、連続数１２８は、最初のビット「１」を除き、「００  ００」と表現される。
【０１１１】
図１１は、図２のランレングス符号化部１５５１における、連続数に応じた符号化処理の例を示す図である。
・「００」が１２７個連続するときは、２バイトを用いて「００  ７Ｆ」に符号化され、
・「００」が３２７６７個連続するときは、３バイトを用いて「００  ＦＦ  ７Ｅ」に符号化され、
・「００」が３２８９５個連続するときは、３バイトを用いて「００  ＦＦ  ＦＦ」に符号化され、
「００」が１２８個連続するときは、３バイトを用いて「００  ８０  ００」に符号化され、
「０１」が１２９個連続するときは、３バイトを用いて「０１  ８１  ０１」に符号化され、
・「ＦＦ」が４０９６個連続するときは、３バイトを用いて「ＦＦ  ８Ｆ  ８０」に符号化される。
【０１１２】
図２に示すランレングス符号化部１５５１では、上記のような符号化処理が行なわれる。
【０１１３】
本実施形態によるランレングス符号化部１５５１によれば、最大圧縮率は、３／３２８９５＝１／１０，９６５にまで向上する。また、このランレングス符号化部１５５１が符号化処理の対象としている上位サブプレーン１Ｄ１Ｈのデータは、図８のヒストグラムで説明したように、４ビットの数値のほとんどが、データ値「１６」を表現した数値「０」であり、その４ビットの数値から作られる８ビットの数値も、多くが、１６進数表示で数値「００」となる。このためランレングス符号化部１５５１における符号化処理によって大幅なデータ圧縮が期待される。
【０１１４】
図２の第１Ｈプレーン圧縮部１５５０内のランレングス符号化部１５５１で上記の符号化処理の行なわれた後のデータは、次に図２の第１Ｈプレーン圧縮部１５５０を構成するデータスキャニング部１５５２とハフマン符号化部１５５３に入力される。
【０１１５】
このデータスキャニング部１５５２では、先ず、ランレングス符号化部１５５１から出力されたデータの全体がスキャニングされてデータ値の出現頻度が求められる。
【０１１６】
図１２は、データスキャニング部１５５２によるスキャニング結果の例を示す図である。
【０１１７】
ここでは、「Ａ１」の出現頻度が最も強く、以下順に、「Ａ２」、「Ａ３」、「Ａ４」、…の順であるとする。尚、これら「Ａ１」、「Ａ２」等は数値を直接表わしている訳ではなく、数値を表わす符号である。すなわち、「Ａ１」は例えば数値「００」、「Ａ２」は数値「ＦＦ」等である。また、ここでは、簡単のため、図２のランレングス符号化部１５５１から送られてくるデータは全てのデータ値が「Ａ１」〜「Ａ１６」の１６個の数値のうちのいずれかの数値であるものとする。そして、このような１６個の数値それぞれに対して、データスキャニング部１５５２では、出現頻度に応じた符号が割り当てられてハフマンテーブルが作成される。即ち、出現頻度の最も高い「Ａ１」には、２ビットで表わされた符号「００」が割り当てられ、次の「Ａ２」には、やはり２ビットで表わされた符号「０１」が割り当てられ、次の「Ａ３」、さらに次の「Ａ４」には、３ビットで表わされる、それぞれ、符号「１００」、符号「１０１」が割り当てられ、次の「Ａ５」〜「Ａ８」には、５ビットで表わされる各符号が割り当てられ、以下同様に、出現頻度が低い数値ほど多くのビット数で表わされた符号が割り当てられる。
【０１１８】
図１３は、ハフマンテーブルの一例を示す図である。
【０１１９】
このハフマンテーブルは、図１２と一致させてあり、出現頻度が高い数値ほど短かいビット数で表わされた符号に置き換えられるように並べられた、符号化前（置き換え前）の数値と符号化後（置き換え後）の数値との対応テーブルである。
【０１２０】
図２の第１Ｈプレーン圧縮部１５５０を構成するハフマン符号化部１５５３では、このようなハフマンテーブルに従ってデータの数値が符号化され、その結果、多くの数値が短かいビット数の符号に置き換えられることとなってデータ圧縮が実現される。
【０１２１】
図１４は、ハフマンテーブルに用意される符号列の具体例を示す図である。
【０１２２】
図１４に示す符号列では、各符号列中の「，」よりも右側の数値がビット長を意味しており、その「，」から左側に並ぶそのビット長分の２進符号が実際の符号を表わしている。例えば、図１４の左上の第１番目の符号は「１１」の２ビット、次の２番目の符号は「０１１」の３ビット、その次の３番目の符号は「０１０」の３ビット、さらにその次の４番目の符号は「１０１０」の４ビットである。このような符号列により、出現頻度が高い数値ほど短かいビット数で表わされた符号に置き換えられる。
【０１２３】
以上の図９〜図１４で説明した処理により、図２の第１Ｈプレーン圧縮部１５５０に入力される上位サブプレーン１Ｄ１Ｈについては、ランレングス符号化部１５５１による符号化とハフマン符号化部１５５３による符号化が施されることにより高い圧縮率で圧縮されて上位圧縮データ１Ｄ２Ｈとなる。
【０１２４】
次に、下位サブプレーン１Ｄ１Ｌに対する処理について説明する。第１プレーン分割部１５３０で分割された下位サブプレーン１Ｄ１Ｌは、第１Ｌプレーン圧縮部１５４０を構成するハフマン符号化部１５４１において、図１２〜図１４で説明したハフマン符号化処理が行われる。ハフマン符号化後の下位サブプレーン１Ｄ１Ｌは、下位圧縮データＤ２Ｌとして第１Ｌプレーン圧縮部１５４０から出力される。なお、上述したように、ユーザから、高速モードが指示された場合には、上記のハフマン符号化部１５４１によるハフマン符号化処理は省略されて、第１Ｌプレーン圧縮部１５４０から出力されることになる。
【０１２５】
以上説明してきた、第１Ｈプレーン圧縮部１５５０および第１Ｌプレーン圧縮部１５４０による可逆圧縮においては、図２の第１オフセット部１５２０でオフセットされたデータのヒストグラムに現れるピークが鋭いデータほど、データを構成する数値がオフセット値付近に集中しているためにランレングス符号化やハフマン符号化により大きく圧縮されることが期待される。
【０１２６】
図１５は、ピークの鋭さが異なる２つのヒストグラムを表した図である。
【０１２７】
図１５のパート（ａ）には、オフセット値付近への集中度の低いデータのヒストグラムの一例が示されており、図１５のパート（ｂ）には、オフセット値付近への集中度の高いデータのヒストグラムの一例が示されている。このような２種類のヒストグラムのデータに対して、上述したようなランレングス符号化やハフマン符号化が行われた場合、図１５のパート（ｂ）のデータの方が、図１５のパート（ａ）のデータに比べてオフセット値付近への集中度が高いために、より大きく圧縮されること（すなわち、圧縮率の値がより小さいこと）が期待できる。
【０１２８】
このように、オフセット後のデータのヒストグラムには、ランレングス符号化やハフマン符号化の受け易さの特徴が現れるため、実際にランレングス符号化やハフマン符号化が行われる前の段階であっても、これらの符号化処理によってどの程度の圧縮率が得られるかを予想することが可能である。本実施形態では、図２の可逆圧縮部５００Ａ内の第１圧縮率推定部１５７０により、オフセット後のデータのヒストグラムの解析が行われて可逆圧縮部５００Ａによる可逆圧縮処理の圧縮率の推定が行われる。
【０１２９】
図１６は、図２の第１圧縮率推定部１５７０の構成を表した模式図である。
【０１３０】
第１圧縮率推定部１５７０に入力されたオフセット後のデータは、まず、絶対値差分器１５７０ｂに入力される。この絶対値差分器１５７０ｂには、データを構成する数値の数が、オフセット後のデータを構成する数値の数と同じで、データ値が全て＋８となっている参照データ１５７０ａも入力されており、絶対値差分器１５７０ｂでは、オフセット後のデータを構成する数値と参照データ１５７０ａを構成する数値との差の絶対値が計算される。すなわち、絶対値差分器１５７０ｂにおいて、オフセット後のデータを構成する各数値から８を引くことで得られる差の絶対値が求められることとなる。次に、このような差の絶対値の連続で構成されたデータは、パルス幅変調（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ)器１５７０ｃに入力されて、このデータを構成する各数値の大きさがそれぞれパルス幅として表された一連のパルス波の波形が生成される。ここで、参照データ１５７０ａを構成する数値である「＋８」は、上述したようにオフセット値の数値である。このため、図１５のパート（ａ）のヒストグラムを与えるデータのように、オフセット値への集中度の低いために圧縮率の値が大きいことが予想されるデータからは、パルス幅変調器１５７０ｃにおいてパルス幅の広いパルス波が多数存在する波形が生成され、図１５のパート（ｂ）のヒストグラムを与えるデータのように、オフセット値への集中度の高いために圧縮率の値が小さいことが予想されるデータからは、パルス幅の狭いパルス波が多数存在する波形が生成される。この波形は積分器１５７０ｄに入力され、積分処理（横軸と波形で囲まれる領域の面積計算）が行われる。パルス幅の狭いパルス波が多数存在する波形ほど、この積分器１５７０ｄで積分された値は小さくなり、この積分値によって圧縮率がどの程度になるかを推し測ることが可能となる。本実施形態では、この積分値が圧縮率の推定値となる。
【０１３１】
第１圧縮率推定部１５７０では、このようにして得られた圧縮率の推定値を、第１圧縮率推定部１５７０にあらかじめ入力されている第１目標圧縮率と比較し、圧縮率の推定値が、この第１目標圧縮率以下であるか否かを判定する。上述したように、この第１目標圧縮率は、、図１に示すパーソナルコンピュータ４の表示画面上でユーザが画像を観察する際に、画像表示が遅いとユーザに感じられない程度に、短時間で圧縮後の画像データがパーソナルコンピュータ４に送信されるための上限の閾値を与える圧縮率であり、出力切換部５０１における出力データ量の限界に対応する圧縮率である。第１圧縮率推定部１５７０による判定の結果は、図２の出力切換部５０１に出力される。
【０１３２】
次に、図２の非可逆圧縮処理部５００Ｂでの圧縮処理について説明する。
【０１３３】
上述したように、図２の非可逆圧縮処理部５００Ｂには、可逆圧縮処理部５００Ａに入力される画像データＤ０と同じデータが入力される。画像データＤ０が可逆圧縮処理部５００Ｂに入力されると、まず、間引き処理部２５０５に入力されて、間引き処理部２５０５により、可逆圧縮処理の対象となるＴＲＵＥ画素の画素データと、非可逆圧縮処理の対象となるＦＡＫＥ画素の画素データとに分けられる。
【０１３４】
図１７は、図２の間引き処理部２５０５で行われる間引き処理の概念を示す図である。
【０１３５】
図１７には、画像データＤ０のデータ構造も示されており、図１７に示す画像データＤ０のデータ構造は、実際には、図３に示す画像データＤ０のデータ構造と同じものであるが、図１７では、間引き処理の概念を示すため、データ構造が図３とは異なる形式で表されている。
【０１３６】
図１７では、図１７の横方向が、図３で上述した主走査方向であり、その主走査方向とは直角な方向が副走査方向である。上述したように主走査方向に並ぶ画素の列はラインと称され、ここでは６ライン分の画素が示されている。図１７では、各画素の位置は、画素値を表す符号Ｔ，Ｆに付された添え字で表現される。例えば３番目のラインについて、主走査方向に並ぶ各画素の画素値には、その並び順に、
３＿１，３＿２，３＿３，３＿４，…
という添え字が付されている。
【０１３７】
図２に示す圧縮処理部５００を構成する間引き処理部２５０５には、このように並んだ画素値からなる画像データが入力され、間引き処理部２５０５は、各画素を、ＴＲＵＥ画素とＦＡＫＥ画素とに分類する。この図１７に示す各画素のうちＴＲＵＥ画素は画素値が符号Ｔで表され、ＦＡＫＥ画素は画素値が符号Ｆで表されている。ＴＲＵＥ画素は、画素の並びの中から周期的に間引かれる画素であり、この図は、副走査方向に１ラインおきの各ライン（奇数番目のライン）について、主走査方向に１画素おきの各画素（奇数番目の画素）がＴＲＵＥ画素として間引き出されることを示している。この結果、ＴＲＵＥ画素は、元の解像度の半分の解像度に低下した画像を構成する画素に相当しており、元の画像データの４分の１に相当する画素が間引き出されたこととなる。このように間引き出されたＴＲＵＥ画素は、そのようなＴＲＵＥ画素の連続からなるＴＲＵＥ画素データを構成し、そのＴＲＵＥ画素データの構造は、元の画像データと同様に、主走査方向と副走査方向に画素が並んだ構造となっている。ＴＲＵＥ画素の間引きによって残ったＦＡＫＥ画素についても、そのＦＡＫＥ画素の画素値の連続からなるＦＡＫＥ画素データを構成する。ＴＲＵＥ画素データが可逆圧縮処理の対象となるのに対し、このＦＡＫＥ画素データは非可逆圧縮処理の対象となる。
【０１３８】
ＴＲＵＥ画素データに対しては、非可逆圧縮処理部５００Ｂ内の第２差分符号化部２５１０、第２オフセット部２５２０、第２プレーン分割部２５３０、第２Ｌプレーン圧縮部２５４０、および第２Ｈプレーン圧縮部２５５０により、上述した可逆圧縮処理部５００Ａの可逆圧縮処理と同様の可逆圧縮処理が行われる。この処理の内容については、図３〜図１４において説明したものと同じであり、ここではその説明は省略する。ＴＲＵＥ画素データに対する可逆圧縮処理の結果、第２Ｌプレーン圧縮部２５４０から下位圧縮データ２Ｄ２Ｌが出力され、第２Ｈプレーン圧縮部２５５０から上位圧縮データ２Ｄ２Ｈが出力される。ここで、非可逆圧縮処理部５００Ｂ内には、上述した第１圧縮率推定部１５７０と同様の構成を持つ第２圧縮率推定部２５７０が備えられており、第２オフセット部２５２０でオフセットされたデータについて、ＴＲＵＥ画素データに対する可逆圧縮処理の圧縮率の推定値が、第２圧縮率推定部２５７０により、図１６で説明した推定方式と同じ方式を用いて求められる。第２圧縮率推定部２５７０では、上述したように、この可逆圧縮処理での圧縮率の推定値に、全画素中のＴＲＵＥ画素の割合（間引き率）を乗じることで、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値の可逆圧縮処理成分が得られる。そして、第２圧縮率推定部２５７０内には、仮想的にＦＡＫＥ画素全部についてＦＡＫＥ画素データ圧縮部２５６０で４ビット符号化が行われランレングス符号化処理およびハフマン符号化処理は行われなかったとしたときのＦＡＫＥ画素データ圧縮部２５６０での圧縮率に、全画素中のＦＡＫＥ画素の割合を乗じることで得られる、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値の非可逆圧縮処理成分の値（定数）が記憶されており、この値に、上記の可逆圧縮処理成分に加えることで、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値が得られる。第２圧縮率推定部２５７０では、このようにして得られた、非可逆圧縮処理部５００Ｂ全体での圧縮率の推定値を、第２圧縮率推定部２５７０にあらかじめ入力されている第２目標圧縮率と比較し、圧縮率の推定値が、この第２目標圧縮率以下であるか否かの判定を行う。上述したように、この第２目標圧縮率は、非可逆圧縮処理された画像データと、上述した環境情報データとを組み合わせても全体のデータ量が膨大にならないように、全体のデータ量を、出力切換部５０１における出力データ量の限界以下に抑えるための上限の閾値を与える圧縮率であり、この第２目標圧縮率の値は、上述した第１目標圧縮率の値よりも小さい値である。
【０１３９】
次に、ＦＡＫＥ画素データについての非可逆圧縮処理について説明する。間引き処理部２５０５で得られたＦＡＫＥ画素データはＦＡＫＥ画素データ圧縮部２５６０に入力され、ＦＡＫＥ画素データ圧縮部２５６０内のビット短縮部２５６１は、そのＦＡＫＥ画素データがエッジ部分の画素データであるか否かに応じて、このＦＡＫＥ画素データを、４ビットあるいは１ビットに符号化する。エッジ部分であるか否かは、第２オフセット部２５２０によるオフセット後の差分データに基づき、図２のエッジ検出部２５２５によって判定される。
【０１４０】
以下、ＦＡＫＥ画素データが符号化される様子について説明する。
【０１４１】
図１７に示すＴＲＵＥ画素の画素値をＴｎ＿ｋと表現した場合に、そのＴＲＵＥ画素に隣接するＦＡＫＥ画素の画素値はＦｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１というように表現され、そのＴＲＵＥ画素に対してそれらのＦＡＫＥ画素を挟んだ位置のＴＲＵＥ画素の画素値は、Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２と表現される。エッジ検出部２５２５では、このような４つのＴＲＵＥ画素の画素値Ｔｎ＿ｋ，Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２から２次元差分符号化処理で得られる差分値（ここでは、前述のように１６進数表示で値「００」から値「ＦＦ」までの数値で表した差分値ではなく、画素値をそのまま差分をとって得られる１０進数表示での差分値）が、エッジ検出部２５２５に設定されている正の整数値の閾値パラメータＬを用いて規定される、（−Ｌ）未満の領域、あるいは（＋Ｌ）以上の領域に属する場合には、上述した３つのＦＡＫＥ画素の画素値Ｆｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１はエッジ部分であると判定され、ビット短縮部２５６１において「１」から始まる４ビットの符号に符号化される。
【０１４２】
図１８は、４ビット符号への符号化方式を表す図である。
【０１４３】
この符号化方式では、ＦＡＫＥ画素の画素値は、その画素値を表した８ビットのビット値の下位５桁が切り捨てられ、残った上位３桁の先頭に「１」が付加されることで「１０００」〜「１１１１」の符号に符号化される。従って、この図の表に示すように、符号化前の「０」〜「２５５」の数値のうち「０」〜「３１」の数値は「１０００」に符号化され、「２２」〜「６３」の数値は「１００１」に符号化される。以下同様に、「６４」〜「９５」、「９６」〜「１２７」、「１２８」〜「１５９」、「１６０」〜「１９１」、「１９２」〜「２２３」、「２２４」〜「２５５」の数値は、それぞれ、「１０１０」、「１０１１」、「１１００」、「１１０１」、「１１１０」、「１１１１」に符号化される。このような符号化方式は、ビット値の桁の切り捨てというごく単純な処理で実現される。このような４ビット符号への符号化によって元の画像の情報がある程度維持されて画質低下が回避される。
【０１４４】
エッジ検出部２５２５では、上述した４つのＴＲＵＥ画素の画素値Ｔｎ＿ｋ，Ｔｎ＿ｋ＋２，Ｔｎ＋２＿ｋ，Ｔｎ＋２＿ｋ＋２から２次元差分符号化処理で得られる差分値が、（−Ｌ）以上かつ（＋Ｌ）以下の領域に属する場合には、上述した３つのＦＡＫＥ画素の画素値Ｆｎ＿ｋ＋１，Ｆｎ＋１＿ｋ，Ｆｎ＋１＿ｋ＋１はエッジ部分ではないと判定され、ビット短縮部２５６１において１ビットの符号「０」に符号化される。
【０１４５】
ここで、エッジ部分の判定の判定基準を与える閾値パラメータＬは、パラメータ設定部２５８０によってエッジ検出部２５２５に設定されるパラメータである。パラメータ設定部２５８０は、第２圧縮率推定部２５７０の判定結果が、圧縮率の推定値が第２目標圧縮率を超えていることを示している場合には、現在エッジ検出部２５２５に設定されている閾値パラメータＬの値をもっと大きな値に変更することでエッジ部分であるための条件を厳しくし、エッジ部分であると判定されるＦＡＫＥ画素の数を減少させる。この結果、非可逆圧縮処理部５００Ｂにおける圧縮処理の方式が、圧縮率の値がより小さく高圧縮の圧縮処理に移行することとなる。一方、第２圧縮率推定部２５７０の判定結果が、圧縮率の推定値が第２目標圧縮率以下であることを示している場合には、パラメータ設定部２５８０は、圧縮率の推定値と第２目標圧縮率との差の大きさに応じて、現在エッジ検出部２５２５に設定されている閾値パラメータＬの値をもっと小さな値に変更することでエッジ部分であるための条件を緩めて、エッジ部分であると判定されるＦＡＫＥ画素の数を増加させる。この結果、非可逆圧縮処理部５００Ｂにおける圧縮処理の方式が、圧縮率の値が第２目標圧縮率以下に維持されるとともに、過度に圧縮しすぎないことで画質の劣化も回避される圧縮処理に移行することとなる。
【０１４６】
１ビットまたは４ビットの符号に置換されたデータは、ランレングス符号化部２５６２およびハフマン符号化部２５６３によって、上記第１Ｈプレーン圧縮部１５５０における処理と全く同様の処理が施される。ここで、ＦＡＫＥ画素データ圧縮部２５６０にも、第１Ｈプレーン圧縮部１５５０のデータスキャニング部１５５２と同様の働きをするデータスキャニング部が存在するが、図２ではその図示は省略されている。ランレングス符号化処理およびハフマン符号化処理が施されたＦＡＫＥ画素データは、非可逆圧縮データ２Ｄ３としてＦＡＫＥ画素データ圧縮部２５６０から出力される。
【０１４７】
第２Ｌプレーン圧縮部２５４０および第２Ｈプレーン圧縮部２５５０のそれぞれから出力される下位圧縮データ２Ｄ２Ｌと上位圧縮データ２Ｄ２Ｈとに、さらに非可逆圧縮データ２Ｄ３が加わったデータの組で、元の画像データに対し、非可逆圧縮処理部５００Ｂにおいて非可逆圧縮処理が施された圧縮データが構成される。この圧縮データは、出力切換部５０１に入力される。
【０１４８】
出力切換部５０１は、可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値が、上述した第１目標圧縮率以下である場合は、可逆圧縮処理部５００Ａで可逆圧縮処理された画像データを、ＵＳＢケーブル３を介して図１のパーソナルコンピュータ４に向けて送信し、可逆圧縮処理部５００Ａによる可逆圧縮処理の圧縮率の推定値が第１目標圧縮率を超えた場合は、非可逆圧縮処理部５００Ａで非可逆圧縮処理された画像データに、上述した環境情報データを添付してパーソナルコンピュータ４に送信する。
【０１４９】
図１９は、図２の出力切換部５０１によってパーソナルコンピュータ４に送信されるデータの圧縮率の推定値が、時間の経過とともに変化する様子を表した図である。
【０１５０】
図１９では、図２の出力切換部５０１によって出力されるデータの圧縮率の推定値の時間変化の一例が示されている。図１９では、上側のグラフが、図２の可逆圧縮処理部５００Ａで可逆圧縮処理されたデータの圧縮率の推定値の時間変化を表すグラフであり、下側のグラフが、非可逆圧縮処理部５００Ｂで非可逆圧縮処理されたデータの圧縮率の推定値の時間変化を表すグラフである。これら上側のグラフおよび下側のグラフのうち、図２の出力切換部５０１によってパーソナルコンピュータ４に送信されるデータの圧縮率の推定値については、濃い実線で表されており、図１９に示すように、時間Ｔまでは、パーソナルコンピュータ４に送信されるデータは、可逆圧縮処理部５００Ａで可逆圧縮処理されたデータであるが、時間Ｔより後には、非可逆圧縮処理部５００Ｂで非可逆圧縮処理されたデータとなっている。ここで、縦軸の圧縮率について、上側の圧縮率ｒ１が第１目標圧縮率であり、下側の圧縮率ｒ２が第２目標圧縮率である。図１９に示す例では、可逆圧縮処理部５００Ａで可逆圧縮処理されたデータの圧縮率の推定値は、単調に増加して時間Ｔで第１目標圧縮率に達しており、時間Ｔより後には、第１目標圧縮率を超えるようになって圧縮の度合いが悪化している。このため、図２の出力切換部５０１は、時間Ｔまでは、可逆圧縮処理部５００Ａで処理された画質低下がない可逆圧縮データをパーソナルコンピュータ４に送信し、時間Ｔにおいてこのデータの圧縮率の推定値が第１目標圧縮率に達した時点で、パーソナルコンピュータ４に送信されるデータを、非可逆圧縮処理部５００Ｂで処理された、圧縮の度合いが大きく送信時間が短くてすむ非可逆圧縮データに切り換える。このデータの切り換えの結果、パーソナルコンピュータ４に送信されるデータの圧縮値（推定値）は、可逆圧縮処理されたデータの圧縮率のグラフ（上側のグラフ）上の座標点Ａでの圧縮率から、非可逆圧縮処理されたデータの圧縮率のグラフ（下側のグラフ）上の座標点Ｂでの圧縮率に移行する。
【０１５１】
図２の圧縮処理部５００では、このように送信データの切り換えを行うことで、画質低下をなるべく抑えることと、送信時間をなるべく短縮することとが、バランスよく両立する。
【０１５２】
また、上述したように、非可逆圧縮処理部５００Ｂで非可逆圧縮処理されたデータの圧縮率は、図２のパラメータ設定部２５８０により、第２目標圧縮率以下となるように維持されており、このため、この非可逆圧縮処理されたデータと、上述した環境情報データとを組み合わせた全体のデータのデータ量は、充分に小さい値に抑えられている。
【０１５３】
パーソナルコンピュータ４では、送信されてきた画像データに対し、データの復号化処理が行われて、パーソナルコンピュータ４の表示画面上に画像が表示される。なお、この復号化処理では、非可逆圧縮されたＦＡＫＥ画素データについては、復号時において、４ビットに符号化されたＦＡＫＥ画素データについては８段階の画素データに量子化され、１ビットに符号化されたＦＡＫＥ画素データについては周りのＴＲＵＥ画素の画素データから補間計算を行うことにより、伸張処理が施される。非可逆圧縮処理部５００Ｂで非可逆圧縮処理されたデータに基づき画像が表示される際には、非可逆圧縮処理のため画質が少し劣化した画像が表示されることとなるが、この場合には、送信データ中の環境情報データに基づき、撮影場所付近の音声、撮影時の温度、風力、湿度、気圧といった撮影時の情報が、画像とともに表示画面上に表示される。この結果、ユーザは、画像以外の情報も得ることができる。
【０１５４】
以上の説明は、撮影は、ＵＳＢカメラ２によって行われていたが、本発明は、ＵＳＢカメラ２に代えて、動画機能を備えたデジタルカメラを採用してもよい。
【０１５５】
図２０は、本発明の別の一実施形態が適用されるカメラシステムの構成図である。
【０１５６】
図２０のカメラシステムは、デジタルカメラ１００とパーソナルコンピュータ２００とを有している。このカメラシステムでは、デジタルカメラ１００を用いた撮影が行われて撮影画像を表す画像データが生成され、生成された画像データは圧縮処理が施された後、ＵＳＢケーブル３００を介してデジタルカメラ１００からパーソナルコンピュータ２００へ送られ、パーソナルコンピュータ２００が有する表示画面（不図示）上に表示される。ここで、このデジタルカメラ１００には、静止画撮影機能に加え、動画撮影機能も備えられており、図２０のカメラシステムでは、デジタルカメラ１００で主に動画撮影が行われて、撮影で得られた動画が、パーソナルコンピュータ２００の表示画面上にほぼリアルタイムで表示される。
【０１５７】
図２０のカメラシステムにおいては、デジタルカメラ１００が、本発明の撮影装置の一実施形態として動作する。以下では、このデジタルカメラ１００について説明する。
【０１５８】
図２１は、図２０のデジタルカメラ１００を前面斜め上から見た外観斜視図であり、図２２は、このデジタルカメラ１００を背面斜め上から見た外観斜視図である。
【０１５９】
図２１に示すように、このデジタルカメラ１００の前面中央部に撮影レンズ１０１が備えられており、前面上部には光学式ファインダ対物窓１０２および閃光発光部１０３が備えられている。さらに、このデジタルカメラ１００の上面には、スライド式の電源スイッチ１０４、ユーザが撮影を指示する際に用いられるレリーズボタン１５０、およびデジタルカメラ１００内部に備えられたマイクロフォン（図２１および図２２では不図示）に音を伝達する複数の穴からなる受話口１２５ａが備えられている。
【０１６０】
さらに図２２に示すように、このデジタルカメラ１００の背面には、光学式ファインダ接眼窓１０６、メニューボタン１６０、実行／画面切換スイッチ１７０、画像表示部１３０、十字キー２４、モードダイヤル１０が備えられている。モードダイヤル１０は、図で両矢印で示す方向に回転することができるダイヤルとなっており、ユーザは、このモードダイヤル１０を操作することによって、デジタルカメラ１００の動作モードとして、再生モードを表す「再生」、動作設定モードを表す「設定」、静止画撮影モードを表す「静止画撮影」、動画撮影モードを表す「動画撮影」の４つの動作モードの中から、所望の動作モードを選択することができる。この図では、「動画撮影」が選択された状態が示されている。また、このデジタルカメラ１００の側面には、図２０のパーソナルコンピュータ２００との間でＵＳＢケーブル３００を介してデータのやり取りが行われる際に、ＵＳＢケーブルのＵＳＢ端子が差し込まれるＵＳＢコネクタ１３１や、画像データをはじめ各種のデータを記憶するメモリカード１４１が挿入されるメモリカードスロット１４２が設けられている。
【０１６１】
図２３は、図２１および図２２に外観を示すデジタルカメラの概略構成図である。
【０１６２】
このデジタルカメラ１００には、ピント調節のためのフォーカスレンズ１１４や光学ズームを行うためのズームレンズ１１５などといった各種レンズや、光量を調節するための絞り１１３などが配備された撮影光学系１１０が備えられている。本来撮影光学系には複数のレンズが配備され、それらの複数のレンズの中の少なくとも１つがピント調節に大きく関与し、それら複数のレンズの相対位置が焦点距離に関与するが、この図２３では、焦点距離の変化に係わるレンズをズームレンズ１１５として模式的に示しており、同じくピントの調節に係わるレンズをフォーカスレンズ１１４として模式的に示している。また、これらフォーカスレンズ１１４、ズームレンズ１１５、絞り１１３をそれぞれ駆動するためのフォーカス制御部１１４ａ、ズーム制御部１１５ａ、絞り制御部１１３ａも備えられている。絞り制御部１１３ａは、絞り１１３を制御して露出の調節を行う。ズーム制御部１１５ａは、ズームレンズ１１５を移動させることで光学ズームの倍率を変化させる役割を担う。フォーカス制御部１１４ａは、このデジタルカメラ１００の有するオートフォーカス機能が作動する際に、フォーカスレンズ１１４を、被写体距離の最遠点に対応する位置から被写体距離の至近点に対応する位置まで移動させることにより、被写界のコントラストを変化させるとともに、その変化の様子から決定されたピント位置にフォーカスレンズ１１４を配置する役割を担う。このデジタルカメラ１００には、露出量の算出およびコントラストの検出を行うＡＦ／ＡＥ演算部１２６が備えられており、このＡＦ／ＡＥ演算部１２６が、生成された画像データから被写界輝度を検出して露出量を算出し、さらに、フォーカスレンズ１１４の移動に伴って変化する被写界のコントラストも検出する。このＡＦ／ＡＥ演算部１２６により算出された露出量に基づき、適切な露出量が決定されて、決定された露出量を実現するように、絞り１１３やタイミングジェネレータ１１１ａが駆動されて露出量の制御が行われる。また、ＡＦ／ＡＥ演算部１２６により検出された被写界のコントラストに基づき、コントラストのピークが得られる位置が上述のピント位置として決定され、フォーカス制御部１１４ａによりそのピント位置にフォーカスレンズ１１４が配置される。
【０１６３】
また、このデジタルカメラ１００には、撮影光学系１１０を通って結像された被写体光を受光して、被写体光を表わすアナログの画像信号を生成するＣＣＤ１１１が備えられており、図で一点鎖線で示す被写体光はＣＣＤ１１１において、被写体光を表わすアナログの画像信号に変換され、シャッタ速度を決定する、タイミングジェネレータ１１１ａのタイミング信号に合わせてＣＣＤ１１１から出力される。
【０１６４】
ＣＣＤ１１１から出力されたアナログの画像信号は、画像信号処理部１２２によって読み出されてデジタルの画像データに変換され、さらに、この画像信号処理部１２２においてホワイトバランスの補正やγ補正などといった種々の画像処理が施される。画像処理が施された画像データは、画像表示の制御を行う表示制御部１２３に送られ、画像表示部１３０上にこの画像データが表す画像（いわゆるスルー画像）が表示される。
【０１６５】
また、このデジタルカメラ１００には、撮影時の音声を電気信号に変換するマイクロフォン１２５や、撮影時の、を測定して温度を表す電気信号を生成する温度センサや、風力を測定して風力を表す電気信号を生成する風力センサ、湿度を測定して電気信号を生成する湿度センサ、気圧を測定して電気信号を生成する気圧センサのうち少なくとも一つが備えられており、図２３では、温度センサ、風力センサ、湿度センサ、気圧センサは、まとめてセンサ１２４として示されている。マイクロフォン１２５やセンサ１２４で得られた電気信号も、上述の画像信号処理部１２２でデジタルのデータに変換される。以下では、撮影時の音声、温度、風力、湿度、気圧といった環境情報を表すデジタルのデータを、撮影画像を表すデジタルの画像データと明確に区別するため、環境情報データと呼ぶ。また、このデジタルカメラ１００では、撮影画像データに対して圧縮処理が施され、圧縮された撮影画像データは、ＵＳＢコネクタ１３１にＵＳＢ端子が差し込まれた図２０のＵＳＢケーブル３００を介して、図２０のパーソナルコンピュータ２００に送信される。このデジタルカメラ１００には、メモリーカードスロット１４２に挿入されたメモリーカード１４１に対してデータの書き込みや読出しを行う書込／読出部１４０が備えられており、上記の圧縮処理は、メモリーカード１４１に記憶された画像圧縮処理プログラムが、書込／読出部１４０に読み込まれることでデジタルカメラ１００にインストールされて、ＣＰＵ１２０が圧縮処理部として機能することで実行される処理であり、圧縮対象となる撮影画像データは、圧縮処理部として機能するＣＰＵ１２０に渡されて圧縮処理が施される。なお、上述した撮影画像データも、この圧縮処理部として機能するＣＰＵ１２０に渡される。
【０１６６】
このデジタルカメラ１００には、ＲＯＭ１２１が配備されており、このＲＯＭ１２１には、このデジタルカメラ１００の各部の制御を行うＣＰＵ１２０が実行する動作の手順を示した実行データが格納されている。ここで、図２３では、図２１および図２２に示す、電源スイッチ１０４、モードダイヤル１０、レリーズボタン１５０などといった各種のスイッチやボタンは操作部１５１として一括して示されており、操作部１５１が操作されると、ＲＯＭ１２１に格納された実行データに従ってその操作に応じた処理が実行される。
【０１６７】
ＣＰＵ１２０と、撮影光学系１１０、画像信号処理部１２２、表示制御部１２３、書込／読出部１４０などの各部との間のデータの受け渡しはバス１２００を介して行われ、そのバス１２００を介してデータの受け渡しが行われるときのバッファとしてＲＡＭ１２９が備えられている。このＲＡＭ１２９に各部の処理プロセスの進行状況に応じて変数となるデータが随時書き込まれて、前述の撮影光学系１１０、画像信号処理部１２２などの各部では、そのデータを参照することにより、それぞれ適切な処理が行われる。
【０１６８】
以下、動画撮影が行われる際のデジタルカメラ１００の動作について説明する。
【０１６９】
図２２のモードダイヤル１０により、デジタルカメラ１００の動作モードが動画撮影モードに設定された状態で、撮影者が図２１に示すレリーズボタン１５０を押すと、レリーズボタン１５０が押されたという情報がＣＰＵ１２０に伝えられる。ＣＰＵ１２０は、この情報を受けると、上述のＡＦ／ＡＥ演算部１２６、絞り制御部１１３ａ、タイミングジェネレータ１１１ａ、フォーカス制御部１１４ａに指示を出し、上述したように露出量の制御やオートフォーカスを実行させる。そして、ＣＣＤ４０で生成された画像信号が、ＣＰＵ１２０からの指示に基づき、画像信号処理部１２２において、上述したスルー画像のときよりもより細かく読み出されてデジタルの画像データに変換され、高解像度な撮影画像データが生成される。生成された撮影画像データは、さらに、画像信号処理部１２２において、ホワイトバランスの補正やγ補正などといった種々の画像処理が施されて、一旦、バッファメモリ１４３に記憶される。バッファメモリ１４３に記憶された撮影画像データは、圧縮処理部として機能するＣＰＵ１２０に供給され、圧縮処理が施される。一方、撮影画像データの生成と呼応して、マイクロフォン１２５やセンサ１２４で得られた電気信号が、上述の画像信号処理部１２２でデジタルのデータに変換されて環境情報データが生成されており、この環境情報データも圧縮処理部として機能するＣＰＵ１２０に供給される。圧縮処理部として機能するＣＰＵ１２０では、同一の撮影画像データから、可逆圧縮処理が施された撮影画像データと、非可逆圧縮処理が施された撮影画像データとの２種類の圧縮データが生成され、さらに、これらの圧縮処理の途中の過程で圧縮率の推定が行われる。そして、圧縮率の推定値が上述の第１目標圧縮率を超えている場合は、非可逆圧縮処理が施された撮影画像データに環境情報データが添付されてなる送信データが、パーソナルコンピュータ２００に送信され、圧縮率の推定値がこの第１目標圧縮率以下である場合は、可逆圧縮処理が施された撮影画像データがそのまま送信データとして図１のパーソナルコンピュータ００に送信される。
【０１７０】
以上の動作が、撮影者が図２１に示すレリーズボタン１５０を再び押すまで繰り返され、図２０のパーソナルコンピュータ２００に、撮影画像データが連続的に送信され続ける。
【０１７１】
なお、図２０のカメラシステムでは、主に動画撮影が行われるため、以上では動画撮影の際のデジタルカメラ１００の動作について説明したが、このデジタルカメラ１００は、上述したように静止画の撮影機能も備えており、静止画撮影は、図２２のモードダイヤル１０により、デジタルカメラ１００の動作モードが静止画撮影モードに設定されている状態で、ユーザによりレリーズボタン１５０が押されることで実行される。静止画撮影の場合には、レリーズボタン１５０の押下直後の１枚分の画像（静止画）を表す画像データが、上述したのと同じ過程を経て生成され、パーソナルコンピュータ２００に送信される。なお、静止画撮影の場合には、被写体が暗いときには、ＣＰＵ１２０の指示に基づき、レリーズボタン１５０の押下に同期して図２１の閃光発光部１０３により閃光が発せられる。
【０１７２】
圧縮処理部として機能するＣＰＵ１２０の機能ブロックは、図２の圧縮処理部５００とほぼ同じであり、ＣＰＵ１２０が図２の圧縮処理部５００内の各部の役割を果たす。
ただし、図２の圧縮処理部５００中の第１圧縮率推定部１５７０および第２圧縮率推定部２５７０では、圧縮率の推定を行うために、絶対値差分器、パルス幅変調器、および積分器（図１６参照）といったハードウェアがそれぞれの推定部に備えられていたが、図２３のデジタルカメラ１００では、絶対値差分器、パルス幅変調器、および積分器が行う演算を、ＣＰＵ１２０が実行する点だけが異なる。すなわち、図２３のデジタルカメラ１００では、ＣＰＵ１２０が、オフセット後のデータを構成する各数値から８を引いてその差の絶対値を求め、さらに、全数値についてその差の絶対値の和を求める演算を行って、積分器１５７０ｄで得られる積分値と同じものを算出する。この点を除けば、圧縮処理部としてのＣＰＵ１２０の機能は、図２の圧縮処理部５００の機能と同じである。
【０１７３】
図２４は、画像圧縮処理プログラムの模式構成図である。
【０１７４】
ここでは、この画像圧縮プログラム６００は、メモリーカード１４１に記憶されている。この画像圧縮プログラム６００は、第１差分符号化部１６１０、第１オフセット部１６２０、第１プレーン分割部１６３０、第１Ｌプレーン圧縮部１６４０、第１Ｈプレーン圧縮部１６５０、第１圧縮率推定部１６７０、間引き処理部２６０５、第２差分符号化部２６１０、第２オフセット部２６２０、エッジ検出部２６２５、第２プレーン分割部２６３０、第２Ｌプレーン圧縮部２６４０、第２Ｈプレーン圧縮部２６５０、ＦＡＫＥ画素圧縮部２６６０、第２圧縮率推定部２６７０、パラメータ設定部２６８０、および出力切換部６０１を備えている。
【０１７５】
この図２４に示すメモリーカード１４１が、図２に示すデジタルカメラ１００のメモリーカードスロット１４２に装填され、メモリーカード１４１に記憶されているプログラム６００が、デジタルカメラ１００にインストールされてＣＰＵ１２０で実行されることにより、デジタルカメラ１００が画像データの圧縮処理を行う装置として動作する。より具体的には、上記のプログラム６００内の各部が書込／読出部１４０により読み出されてＲＡＭ１２９に展開され、ＣＰＵ１２０によって実行されることで、ＣＰＵ１２０と画像信号処理部１２２とを合わせたものが、図２の圧縮処理部５００として機能する。ここで、図２４に示す画像圧縮プログラム６００内の、第１差分符号化部１６１０、第１オフセット部１６２０、第１プレーン分割部１６３０、第１Ｌプレーン圧縮部１６４０、第１Ｈプレーン圧縮部１６５０、第１圧縮率推定部１６７０、間引き処理部２６０５、第２差分符号化部２６１０、第２オフセット部２６２０、エッジ検出部２６２５、第２プレーン分割部２６３０、第２Ｌプレーン圧縮部２６４０、第２Ｈプレーン圧縮部２６５０、ＦＡＫＥ画素圧縮部２６６０、第２圧縮率推定部２６７０、パラメータ設定部２６８０、および出力切換部６０１は、ＣＰＵ１２０を、図２の、第１差分符号化部１５１０、第１オフセット部１５２０、第１プレーン分割部１５３０、第１Ｌプレーン圧縮部１５４０、第１Ｈプレーン圧縮部１５５０、第１圧縮率推定部１５７０、間引き処理部２５０５、第２差分符号化部２５１０、第２オフセット部２５２０、エッジ検出部２５２５、第２プレーン分割部２５３０、第２Ｌプレーン圧縮部２５４０、第２Ｈプレーン圧縮部２５５０、ＦＡＫＥ画素圧縮部２５６０、第２圧縮率推定部２５７０、パラメータ設定部２５８０、および出力切換部５０１として動作させるプログラム部品である。つまり、これらのプログラム部品により、図２の圧縮処理部５００の構成要素がデジタルカメラ１００上に実質的に構築されることとなる。
【０１７６】
図２４の画像圧縮プログラム６００を構成する各部の、ＣＰＵ１２０で実行されたときの作用は、それぞれ、図２の圧縮処理部５００を構成する各部の作用そのものである。従って、図２の圧縮処理部５００の各部に関しては、説明を省略する。
【０１７７】
以上が、本実施形態の説明である。
【０１７８】
以上の説明では、圧縮処理を行う装置はＵＳＢカメラや、動画撮影機能を備えたデジタルカメラであるが、本発明は、ビデオカメラであってもよい。
【０１７９】
また、以上の説明では、非可逆圧縮処理された画像データがパーソナルコンピュータに送信される際には、撮影環境を表す環境情報データが画像データに添付されていたが、本発明は、例えば、ユーザが撮影についてのメモが記録されたテキストデータが画像データに添付されていてもよい。
【図面の簡単な説明】
【０１８０】
【図１】ＵＳＢを利用したカメラシステムの概略図である。
【図２】ＵＳＢカメラの内部ブロック図である。
【図３】図２の可逆圧縮処理部に入力される画像データの構造を示す図である。
【図４】図２の可逆圧縮処理部に入力される画像データに対して２次元差分符号化処理が施された後のデータの構造を示す図である。
【図５】図２の圧縮処理部を構成する第１差分符号化部における２次元差分符号化処理を例示して示す図である。
【図６】画像データの例を示す図である。
【図７】画像データに対する差分符号化およびオフセットの効果を示す図である。
【図８】第１プレーン分割部によるデータ分割の効果を説明する図である。
【図９】図２に示すランレングス符号化部での符号化の説明図である。
【図１０】ランレングス符号化部における、圧縮対象数値を対象にした符号化のアルゴリズムを示す図である。
【図１１】図２のランレングス符号化部における、連続数に応じた符号化処理の例を示す図である。
【図１２】データスキャニング部によるスキャニング結果の例を示す図である。
【図１３】ハフマンテーブルの一例を示す図である。
【図１４】ハフマンテーブルに用意される符号列の具体例を示す図である。
【図１５】ピークの鋭さが異なる２つのヒストグラムを表した図である。
【図１６】図２の第１圧縮率推定部の構成を表した模式図である。
【図１７】図２の間引き処理部で行われる間引き処理の概念を示す図である。
【図１８】４ビット符号への符号化方式を表す図である。
【図１９】図２の出力切換部によってパーソナルコンピュータに送信されるデータの圧縮率の推定値が、時間の経過とともに変化する様子を表した図である。。
【図２０】本発明の一実施形態が適用されるカメラシステムの構成図である。
【図２１】図２０のデジタルカメラを前面斜め上から見た外観斜視図である。
【図２２】図２０のデジタルカメラを背面斜め上から見た外観斜視図である。
【図２３】図２１および図２２に外観を示すデジタルカメラの概略構成図である。
【図２４】画像圧縮処理プログラムの模式構成図である。
【符号の説明】
【０１８１】
１  カメラシステム
２  ＵＳＢカメラ
２０  撮影部
２０１  対物レンズ
２０２  フォーカスレンズ
２０３  ＣＣＤ
２０４  ビットマップ生成回路
３０  環境情報取得部
１００  デジタルカメラ
１０１  撮影レンズ
１０２  光学式ファインダ対物窓
１０３  閃光発光部
１０４  電源スイッチ
１０  モードダイヤル
２４  十字キー
１０６  光学式ファインダ接眼窓
１１０  撮影光学系
１１１  ＣＣＤ
１１１ａ  タイミングジェネレータ
１１３  絞り
１１３ａ  絞り制御部
１１４  フォーカスレンズ
１１４ａ  フォーカス制御部
１１５  ズームレンズ
１１５ａ  ズーム制御部
１２０  ＣＰＵ
１２１  ＲＯＭ
１２２  画像信号処理部
１２３  表示制御部
１２４  センサ
１２５  マイクロフォン
１２５ａ  受話口
１２６  ＡＦ／ＡＥ演算部
１２９  ＲＡＭ
１３０  画像表示部
１３１  ＵＳＢコネクタ
１４０  書込／読出部
１４１  メモリカード
１４２  メモリカードスロット
１４３  バッファメモリ
１５０  レリーズボタン
１５１  操作部
１６０  メニューボタン
１７０  実行／画面切換スイッチ
１２００  バス
４，２００  パーソナルコンピュータ
３，３００  ＵＳＢケーブル
５００  圧縮処理部
５０１  出力切替部
１５１０  第１差分符号化部
１５２０  第１オフセット部
１５３０  第１プレーン分割部
１５４０  第１Ｌプレーン圧縮部
１５５０  第１Ｈプレーン圧縮部
１５７０  第１圧縮率推定部
１５７０ａ  参照データ
１５７０ｂ  絶対値差分器
１５７０ｃ  パルス幅変調器
１５７０ｄ  積分器
２５０５  間引き処理部
２５１０  第２差分符号化部
２５２０  第１オフセット部
２６２５  エッジ検出部
２５３０  第２プレーン分割部
２５４０  第２Ｌプレーン圧縮部
２５５０  第２Ｈプレーン圧縮部
２５６０  ＦＡＫＥ画素データ圧縮部
２５７０  第２圧縮率推定部
２５８０  パラメータ設定部
１５４１，１５５３，２５４１，２５５３，２５６３  ハフマン符号化部
１５４２  モード切換部
１５５１，２５５１，２５６２  ランレングス符号化部
１５５２，２５５２  データスキャニング部
６００  画像圧縮プログラム
６０１  出力切替部
１６１０  第１差分符号化部
１６２０  第１オフセット部
１６３０  第１プレーン分割部
１６４０  第１Ｌプレーン圧縮部
１６５０  第１Ｈプレーン圧縮部
１６７０  第１圧縮率推定部
２６０５  間引き処理部
２６１０  第２差分符号化部
２６２０  第１オフセット部
２６２５  エッジ検出部
２６３０  第２プレーン分割部
２６４０  第２Ｌプレーン圧縮部
２６５０  第２Ｈプレーン圧縮部
２６６０  ＦＡＫＥ画素データ圧縮部
２６７０  第２圧縮率推定部
２６８０  パラメータ設定部
【図１】
2009117997.tif 000007
【図２】
2009117997.tif 000008
【図３】
2009117997.tif 000009
【図４】
2009117997.tif 000010
【図５】
2009117997.tif 000011
【図６】
2009117997.tif 000012
【図７】
2009117997.tif 000013
【図８】
2009117997.tif 000014
【図９】
2009117997.tif 000015
【図１０】
2009117997.tif 000016
【図１１】
2009117997.tif 000017
【図１２】
2009117997.tif 000018
【図１３】
2009117997.tif 000019
【図１４】
2009117997.tif 000020
【図１５】
2009117997.tif 000021
【図１６】
2009117997.tif 000022
【図１７】
2009117997.tif 000023
【図１８】
2009117997.tif 000024
【図１９】
2009117997.tif 000025
【図２０】
2009117997.tif 000026
【図２１】
2009117997.tif 000027
【図２２】
2009117997.tif 000028
【図２３】
2009117997.tif 000029
【図２４】
2009117997.tif 000030