(57)【要約】【課題】被写体像を完全に正立させて表示できるカメラ、画像記録プログラムおよび画像表示プログラムを提供する。【解決手段】ＣＰＵ１２は、傾斜センサー１４でから出力された信号値に基づいて、撮像素子２で被写体像が撮像されたときのカメラボディ１００の傾斜角度θを算出し、カメラボディ１００の９０度毎の縦横の向きを判定する。ＣＰＵ１２は、傾斜角度θと、判定したカメラボディ１００の９０度毎の縦横の向きとの角度差△θを算出する。この角度差△θは、ＥＸＩＦ規格で規定された、各ベンダー（メーカー）が任意に使用できる領域に記録される。記録された画像データを再生する際、ＣＰＵ１２は、カメラボディ１００の９０度毎の縦横の向きと、角度差△θとに基づいて、画像データを回転させて、表示装置９に表示させる。【選択図】図２
2008187497.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段と、
前記撮像手段が配設される筐体と、
光軸に関する前記筐体の傾斜角度を検出する傾斜角度検出手段と、
前記傾斜角度検出手段が検出した前記筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、前記撮像手段で撮像して得た画像のデータとを画像ファイルの規格であらかじめ定められた第１の領域に格納し、前記傾斜角度検出手段で検出した前記筐体の傾斜角度に関する情報を前記第１の領域とは異なる第２の領域に格納する格納手段とを備えることを特徴とするカメラ。
【請求項２】
請求項１に記載のカメラにおいて、
前記筐体の傾斜角度に関する情報は、前記画像の縦横の向きの情報から決定される画像の向きに合わせて回転させた前記画像から、さらにどの程度前記画像を回転させると被写体像が正立するかを示す傾斜角度の差分の情報であることを備えることを特徴とするカメラ。
【請求項３】
請求項１に記載のカメラにおいて、
前記筐体の傾斜角度に関する情報は、前記傾斜角度検出手段が検出した前記筐体の傾斜角度であることを備えることを特徴とするカメラ。
【請求項４】
請求項１〜３のいずれか一項に記載のカメラにおいて、
前記第２の領域は、前記画像ファイルの規格であらかじめ定められた、メーカーまたはユーザーが任意に利用可能な領域であることを特徴とするカメラ。
【請求項５】
請求項１〜４のいずれか一項に記載のカメラにおいて、
前記傾斜角度検出手段で検出する前記筐体の傾斜角度が前記筐体の実傾斜角度と一致するように補正する補正手段をさらに備えることを特徴とするカメラ。
【請求項６】
コンピュータに、
光軸に関する、撮像素子が配設される筐体の傾斜角度を検出する処理と、
前記筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、前記撮像素子で撮像して得た画像のデータとを画像ファイルの規格であらかじめ定められた画像ファイルの第１の領域に格納する処理と、
前記筐体の傾斜角度に関する情報を前記第１の領域とは異なる、画像ファイルの第２の領域に格納する処理とを実行させるための画像記録プログラム。
【請求項７】
請求項６に記載の画像記録プログラムにおいて、
前記筐体の傾斜角度に関する情報は、前記画像の縦横の向きの情報から決定される画像の向きに合わせて回転させた前記画像から、さらにどの程度前記画像を回転させると被写体像が正立するかを示す傾斜角度の差分の情報であることを備えることを特徴とする画像記録プログラム。
【請求項８】
請求項６に記載の画像記録プログラムにおいて、
前記筐体の傾斜角度に関する情報は、前記検出した前記筐体の傾斜角度、および、前記第１の領域に格納された画像の縦横の向きの情報が無効であることを示す無効性情報であることを備えることを特徴とする画像記録プログラム。
【請求項９】
請求項６〜８のいずれか一項に記載の画像記録プログラムにおいて、
前記第２の領域は、前記画像ファイルの規格であらかじめ定められた、メーカーまたはユーザーが任意に利用可能な領域であることを特徴とする画像記録プログラム。
【請求項１０】
コンピュータに、
請求項６に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、
前記読み込んだ画像ファイルから第１の領域に格納された画像の縦横の向きの情報と、画像のデータとを読み込む処理と、
前記読み込んだ画像ファイルから第２の領域に格納された筐体の傾斜角度に関する情報を読み込む処理と、
前記読み込んだ前記画像の縦横の向きの情報と、前記筐体の傾斜角度に関する情報とに基づいて、前記読み込んだ前記画像のデータから得られる画像の向きを回転させる処理と、
前記回転させる処理が施された前記画像を表示装置に表示させる処理とを実行させるための画像表示プログラム。
【請求項１１】
コンピュータに、
請求項７に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、
前記読み込んだ画像ファイルから第１の領域に格納された前記画像の縦横の向きの情報と、画像のデータとを読み込む処理と、
前記読み込んだ画像ファイルから第２の領域に格納された傾斜角度の差分の情報を読み込む処理と、
前記読み込んだ前記画像の縦横の向きの情報から得られる前記画像の縦横の向きと一致するように、前記第１の領域から読み込んだ前記画像のデータから得られる画像を所定の単位角度で回転させる処理と、
前記所定の単位角度で回転させる処理が施された前記画像を前記読み込んだ前記傾斜角度の差分の情報に基づいてさらに回転させる処理と、
前記さらに回転させる処理が施された前記画像を表示装置に表示させる処理とを実行させるための画像表示プログラム。
【請求項１２】
コンピュータに、
請求項８に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、
前記読み込んだ画像ファイルから第１の領域に格納された前記画像の縦横の向きの情報と、画像のデータを読み込む処理と、
前記読み込んだ画像ファイルから第２の領域に格納された筐体の傾斜角度を読み込む処理と、
前記読み込んだ画像ファイルから第２の領域に格納された前記無効性情報の有無を判定する処理と、
前記無効性情報が存在しないと判定されると、前記読み込んだ前記画像の縦横の向きの情報から得られる前記画像の縦横の向きと一致するように、前記第１の領域から読み込んだ前記画像のデータから得られる画像を所定の単位角度で回転させて表示画像として決定する処理と、
前記無効性情報が存在すると判定されると、前記読み込んだ前記筐体の傾斜角度に基づいて、前記第１の領域から読み込んだ前記画像のデータから得られる画像を被写体像が正立するように回転させて表示画像として決定する処理と、
前記表示画像として決定する処理が施された前記画像データを表示装置に表示させる処理とを実行させるための画像表示プログラム。
【請求項１３】
請求項７に記載の画像記録プログラムにおいて、
前記第２の領域に格納した前記傾斜角度の差分の情報に基づいて前記第１の領域に格納した前記画像データの被写体像の角度を修正する処理と、
前記被写体像の角度を修正した前記画像データを前記第１の領域に格納するとともに、前記第２の領域に格納した前記傾斜角度の差分の情報を消去する処理とをさらに実行させるための画像記録プログラム。
【請求項１４】
請求項７に記載の画像記録プログラムにおいて、
前記第２の領域に格納した前記傾斜角度の差分の情報に基づいて前記第１の領域に格納した前記画像データの被写体像の角度を修正する処理と、
前記被写体像の角度を修正した前記画像データを前記第１の領域に格納するとともに、前記第１の領域に格納した前記画像データが前記第２の領域に格納した前記傾斜角度の差分の情報によって修正済みであることを示す修正情報を、前記第１および前記第２の領域とは異なる第３の領域に格納する処理とをさらに実行させるための画像記録プログラム。
【請求項１５】
請求項１４に記載の画像記録プログラムにおいて、
前記第３の領域は、前記画像ファイルの規格であらかじめ定められた、メーカーまたはユーザーが任意に利用可能な領域であることを特徴とする画像記録プログラム。
【請求項１６】
コンピュータに、
請求項１４または請求項１５に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、
前記読み込んだ画像ファイルから前記第１の領域に格納された前記画像データの縦横の並びの情報と、前記画像データとを読み込む処理と、
前記読み込んだ画像ファイルから前記第２の領域に格納された前記傾斜角度の差分の情報を読み込む処理と、
前記読み込んだ画像ファイルから前記第３の領域に格納された前記修正済みであることを示す修正情報の有無を判定する処理と、
前記読み込んだ前記画像データの縦横の並びの情報と、前記画像データとに基づいて前記画像データの縦横の姿勢を決定する処理と、
前記決定された前記画像データの縦横の姿勢となるように前記第１の領域から読み込んだ前記画像データを所定の単位角度で回転させる処理と、
前記修正情報が存在しないと判定されると、前記所定の単位角度で回転させる処理が施された前記画像データを前記読み込んだ前記傾斜角度の差分の情報に基づいてさらに回転させて表示画像として決定し、前記修正情報が存在すると判定されると、前記所定の単位角度で回転させる処理が施された前記画像データを表示画像として決定する処理と、
前記表示画像として決定する処理が施された前記画像データを表示装置に表示させる処理とを実行させるための画像表示プログラム。
【請求項１７】
撮像手段と、
前記撮像手段が配設される筐体と、
光軸に関する前記筐体の傾斜角度を検出する傾斜角度検出手段と、
前記撮像手段で撮像して得た画像を、前記傾斜角度検出手段が検出した前記筐体の傾斜角度に基づいて得られる画像の縦横の向きに合わせて回転させた後、さらにどの程度前記画像を回転させると被写体像が正立するか、を示す傾斜角度の差分の情報を算出する傾斜角度差算出手段と、
前記傾斜角度差算出手段で算出した前記傾斜角度の差分の情報に基づいて、前記撮像手段で撮像して得た画像を回転させる画像回転手段と、
前記傾斜角度検出手段が検出した前記筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、前記画像回転手段で回転させた画像のデータとを画像ファイルの規格であらかじめ定められた領域に格納する格納手段とを備えることを特徴とするカメラ。
【請求項１８】
コンピュータに、
光軸に関する、撮像素子が配設される筐体の傾斜角度を検出する処理と、
前記撮像素子で撮像して得た画像を、前記筐体の傾斜角度に基づいて得られる画像の縦横の向きに合わせて回転させた後、さらにどの程度前記画像を回転させると被写体像が正立するか、を示す傾斜角度の差分の情報を算出する処理と、
前記傾斜角度の差分の情報に基づいて、前記撮像素子で撮像して得た画像を回転させる処理と、
前記筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、前記回転させる処理を施した画像のデータとを画像ファイルの規格であらかじめ定められた領域に格納する処理とを実行させるための画像記録プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラで撮像して得た画像の傾きを修正する技術に関する。
【背景技術】
【０００２】
撮像素子を用いて被写体像を撮像するカメラでは、たとえばＥｘｉｆ規格のような画像ファイルの規格であらかじめ定められた領域に、カメラの姿勢が横位置で撮像されたか縦位置で撮像されたかを表す姿勢に関する情報が画像データとともに記録される（特許文献１参照）。
【０００３】
【特許文献１】特開２００６−２７０１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のカメラで撮像して得た画像をカメラやパソコンで表示させる際には、画像データとともに記録されている姿勢の情報に基づいて、画像が９０度単位で適宜回転された状態で表示される。しかし、従来のカメラでは、撮像時のカメラの姿勢が９０度単位で記録されるため、僅かに斜めにカメラが傾いた状態で撮像されると、カメラやパソコンで表示される画像も僅かに斜めに傾いた状態で表示されてしまう。
【課題を解決するための手段】
【０００５】
（１）  請求項１の発明によるカメラは、撮像手段と、撮像手段が配設される筐体と、光軸に関する筐体の傾斜角度を検出する傾斜角度検出手段と、傾斜角度検出手段が検出した筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、撮像手段で撮像して得た画像のデータとを画像ファイルの規格であらかじめ定められた第１の領域に格納し、傾斜角度検出手段で検出した筐体の傾斜角度に関する情報を第１の領域とは異なる第２の領域に格納する格納手段とを備えることを特徴とする。
（２）  請求項２の発明は、請求項１に記載のカメラにおいて、筐体の傾斜角度に関する情報は、画像の縦横の向きの情報から決定される画像の向きに合わせて回転させた画像から、さらにどの程度画像を回転させると被写体像が正立するかを示す傾斜角度の差分の情報であることを備えることを特徴とする。
（３）  請求項３の発明は、請求項１に記載のカメラにおいて、筐体の傾斜角度に関する情報は、傾斜角度検出手段が検出した筐体の傾斜角度であることを備えることを特徴とする。
（４）  請求項４の発明は、請求項１〜３のいずれか一項に記載のカメラにおいて、第２の領域は、画像ファイルの規格であらかじめ定められた、メーカーまたはユーザーが利用可能な領域であることを特徴とする。
（５）  請求項５の発明は、請求項１〜４のいずれか一項に記載のカメラにおいて、傾斜角度検出手段で検出する筐体の傾斜角度が筐体の実傾斜角度と一致するように補正する補正手段をさらに備えることを特徴とする。
（６）  請求項６の発明による画像記録プログラムは、コンピュータに、光軸に関する、撮像素子が配設される筐体の傾斜角度を検出する処理と、筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、撮像素子で撮像して得た画像のデータとを画像ファイルの規格であらかじめ定められた画像ファイルの第１の領域に格納する処理と、筐体の傾斜角度に関する情報を第１の領域とは異なる、画像ファイルの第２の領域に格納する処理とを実行させることを特徴とする。
（７）  請求項７の発明は、請求項６に記載の画像記録プログラムにおいて、筐体の傾斜角度に関する情報は、画像の縦横の向きの情報から決定される画像の向きに合わせて回転させた画像から、さらにどの程度画像を回転させると被写体像が正立するかを示す傾斜角度の差分の情報であることを備えることを特徴とする。
（８）  請求項８の発明は、請求項６に記載の画像記録プログラムにおいて、筐体の傾斜角度に関する情報は、検出した筐体の傾斜角度、および、第１の領域に格納された画像の縦横の向きの情報が無効であることを示す無効性情報であることを備えることを特徴とする。
（９）  請求項９の発明は、請求項６〜８のいずれか一項に記載の画像記録プログラムにおいて、第２の領域は、画像ファイルの規格であらかじめ定められた、メーカーまたはユーザーが利用可能な領域であることを特徴とする。
（１０）  請求項１０の発明による画像表示プログラムは、コンピュータに、請求項６に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、読み込んだ画像ファイルから第１の領域に格納された画像の縦横の向きの情報と、画像のデータとを読み込む処理と、読み込んだ画像ファイルから第２の領域に格納された筐体の傾斜角度に関する情報を読み込む処理と、読み込んだ画像の縦横の向きの情報と、筐体の傾斜角度に関する情報とに基づいて、読み込んだ画像のデータから得られる画像の向きを回転させる処理と、回転させる処理が施された画像を表示装置に表示させる処理とを実行させることを特徴とする。
（１１）  請求項１１の発明による画像表示プログラムは、コンピュータに、請求項７に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、読み込んだ画像ファイルから第１の領域に格納された画像の縦横の向きの情報と、画像のデータとを読み込む処理と、読み込んだ画像ファイルから第２の領域に格納された傾斜角度の差分の情報を読み込む処理と、読み込んだ画像の縦横の向きの情報から得られる画像の縦横の向きと一致するように、第１の領域から読み込んだ画像のデータから得られる画像を所定の単位角度で回転させる処理と、所定の単位角度で回転させる処理が施された画像を読み込んだ傾斜角度の差分の情報に基づいてさらに回転させる処理と、さらに回転させる処理が施された画像を表示装置に表示させる処理とを実行させることを特徴とする。
（１２）  請求項１２の発明による画像表示プログラムは、コンピュータに、請求項８に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、読み込んだ画像ファイルから第１の領域に格納された画像の縦横の向きの情報と、画像のデータを読み込む処理と、読み込んだ画像ファイルから第２の領域に格納された筐体の傾斜角度を読み込む処理と、読み込んだ画像ファイルから第２の領域に格納された無効性情報の有無を判定する処理と、無効性情報が存在しないと判定されると、読み込んだ画像の縦横の向きの情報から得られる画像の縦横の向きと一致するように、第１の領域から読み込んだ画像のデータから得られる画像を所定の単位角度で回転させて表示画像として決定する処理と、無効性情報が存在すると判定されると、読み込んだ筐体の傾斜角度に基づいて、第１の領域から読み込んだ画像のデータから得られる画像を被写体像が正立するように回転させて表示画像として決定する処理と、表示画像として決定する処理が施された画像データを表示装置に表示させる処理とを実行させることを特徴とする。
（１３）  請求項１３の発明は、請求項７に記載の画像記録プログラムにおいて、第２の領域に格納した傾斜角度の差分の情報に基づいて第１の領域に格納した画像データの被写体像の角度を修正する処理と、被写体像の角度を修正した画像データを第１の領域に格納するとともに、第２の領域に格納した傾斜角度の差分の情報を消去する処理とをさらに実行させることを特徴とする。
（１４）  請求項１４の発明は、請求項７に記載の画像記録プログラムにおいて、第２の領域に格納した傾斜角度の差分の情報に基づいて第１の領域に格納した画像データの被写体像の角度を修正する処理と、被写体像の角度を修正した画像データを第１の領域に格納するとともに、第１の領域に格納した画像データが第２の領域に格納した傾斜角度の差分の情報によって修正済みであることを示す修正情報を、第１および第２の領域とは異なる第３の領域に格納する処理とをさらに実行させることを特徴とする。
（１５）  請求項１５の発明は、請求項１４に記載の画像記録プログラムにおいて、第３の領域は、画像ファイルの規格であらかじめ定められた、メーカーまたはユーザーが利用可能な領域であることを特徴とする。
（１６）  請求項１６の発明による画像表示プログラムは、コンピュータに、請求項１４または請求項１５に記載の画像記録プログラムで記録された画像ファイルを読み込む処理と、読み込んだ画像ファイルから第１の領域に格納された画像データの縦横の並びの情報と、画像データとを読み込む処理と、読み込んだ画像ファイルから第２の領域に格納された傾斜角度の差分の情報を読み込む処理と、読み込んだ画像ファイルから第３の領域に格納された修正済みであることを示す修正情報の有無を判定する処理と、読み込んだ画像データの縦横の並びの情報と、画像データとに基づいて画像データの縦横の姿勢を決定する処理と、決定された画像データの縦横の姿勢となるように第１の領域から読み込んだ画像データを所定の単位角度で回転させる処理と、修正情報が存在しないと判定されると、所定の単位角度で回転させる処理が施された画像データを読み込んだ傾斜角度の差分の情報に基づいてさらに回転させて表示画像として決定し、修正情報が存在すると判定されると、所定の単位角度で回転させる処理が施された画像データを表示画像として決定する処理と、表示画像として決定する処理が施された画像データを表示装置に表示させる処理とを実行させることを特徴とする。
（１７）  請求項１７の発明によるカメラは、撮像手段と、撮像手段が配設される筐体と、光軸に関する筐体の傾斜角度を検出する傾斜角度検出手段と、撮像手段で撮像して得た画像を、傾斜角度検出手段が検出した筐体の傾斜角度に基づいて得られる画像の縦横の向きに合わせて回転させた後、さらにどの程度画像を回転させると被写体像が正立するか、を示す傾斜角度の差分の情報を算出する傾斜角度差算出手段と、傾斜角度差算出手段で算出した傾斜角度の差分の情報に基づいて、撮像手段で撮像して得た画像を回転させる画像回転手段と、傾斜角度検出手段が検出した筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、画像回転手段で回転させた画像のデータとを画像ファイルの規格であらかじめ定められた領域に格納する格納手段とを備えることを特徴とする。
（１８）  請求項１８の発明による画像記録プログラムは、コンピュータに、光軸に関する、撮像素子が配設される筐体の傾斜角度を検出する処理と、撮像素子で撮像して得た画像を、筐体の傾斜角度に基づいて得られる画像の縦横の向きに合わせて回転させた後、さらにどの程度画像を回転させると被写体像が正立するか、を示す傾斜角度の差分の情報を算出する処理と、傾斜角度の差分の情報に基づいて、撮像素子で撮像して得た画像を回転させる処理と、筐体の傾斜角度に基づいて得られる画像の縦横の向きの情報と、回転させる処理を施した画像のデータとを画像ファイルの規格であらかじめ定められた領域に格納する処理とを実行させることを特徴とする。
【発明の効果】
【０００６】
（１）  請求項１の発明によるカメラおよび請求項６の発明による画像記録プログラムでは、撮像時の僅かな傾きを記録できるとともに、生成された画像ファイルが従来の画像ファイルの規格との互換性を有するので、利便性および汎用性が高い。
（２）  請求項１０〜１２および請求項１６の発明による画像表示プログラムでは、被写体像を正立させて表示できるとともに、従来の画像ファイルの規格で記録された画像も表示させることができるので、利便性および汎用性が高い。
（３）  請求項１７の発明によるカメラでは、撮像時の僅かな傾き修正して画像データを記録できるとともに、生成された画像ファイルが従来の画像ファイルの規格との互換性を有するので、利便性および汎用性が高い。
（４）  請求項１８の発明による画像記録プログラムでは、生成された画像ファイルを従来の表示用プログラムで再生しても被写体像を正立させて表示できるとともに、生成された画像ファイルが従来の画像ファイルの規格との互換性を有するので、利便性および汎用性が高い。
【発明を実施するための最良の形態】
【０００７】
−−−第１の実施の形態−−−
図１〜８を参照して、本発明をカメラに適用した第１の実施の形態を説明する。図１は、本発明を適用したカメラである一眼レフタイプのカメラボディ１００とカメラボディ１００に装着する撮影レンズ２００を示した斜視図である。カメラボディ１００にはレリーズボタン１０４と、被写体像を撮像する撮像素子２と、カメラボディ１００の各部を制御する制御回路１０１とが設けられている。カメラボディ１００には記録媒体１１が取り付けられている。
【０００８】
３０１は、撮影レンズ２００からの被写体像を撮像素子２に導くための撮影光路である。カメラボディ１００に撮影レンズ２００を装着すると、レンズ側絞りレバー２０３とカメラ側の絞り連動レバー３２３とが当接する。レンズ側絞りレバー２０３は、カメラ側の絞り連動レバー３２３により駆動されて所定の絞り値に制御される。３２１はメインミラーである。
【０００９】
撮像素子２は、ＣＣＤイメージセンサなどによって構成される。撮像素子２は、撮影レンズ１を通過した被写体光による像を撮像し、撮像信号（アナログ撮像信号）を制御回路１０１へ出力する。記録媒体１１は、たとえばメモリーカードのようにカメラボディ１００に着脱可能な記憶媒体であり、後述するように制御回路１０１で所定の処理が施された画像データを保存する。なお、本実施の形態では、撮影レンズ２００が取り付けられるカメラボディ１００の前方を正面と呼び、撮像素子２が設けられるカメラボディ１００の後方を背面と呼ぶ。また、カメラボディ１００の上下左右方向を各図に記載したように規定する。
【００１０】
図２は、制御回路１０１の構成を説明するブロック図である。制御回路１０１は、Ａ／Ｄ変換回路３と、タイミングジェネレータ４と、イメージメモリー５とを備えている。また、制御回路１０１は、画像処理回路６と、圧縮伸長回路７と、表示回路８と、表示装置９と、メモリー１０と、ＣＰＵ１２と、不揮発メモリー１３と、傾斜センサー１４とを備えている。
【００１１】
Ａ／Ｄ変換回路３は、アナログ撮像信号をデジタル信号に変換する。撮像素子２およびＡ／Ｄ変換回路３は、タイミングジェネレータ４から出力される駆動信号によって所定の動作タイミングで駆動される。イメージメモリー５は、撮像素子２で撮像されてＡ／Ｄ変換回路３でデジタル信号に変換された被写体像の画像データを一時的に保存するメモリーである。
【００１２】
画像処理回路６は、デジタル変換後の画像データにホワイトバランス処理などの画像処理を行う。圧縮伸長回路７は、画像処理回路６で画像処理をした後の画像データを所定の形式で圧縮する圧縮処理を行う。また圧縮伸長回路７は、記録媒体１１に記録されている圧縮された画像データを伸長する伸長処理を行う。
【００１３】
表示回路８は、撮像して得た画像を表示装置９に表示するための処理を行う回路である。画像処理回路６、圧縮伸長回路７、および表示回路８によって画像処理ブロックが構成されている。
【００１４】
表示装置９は、表示回路８で処理された画像などを表示するための装置であり、液晶表示装置などが用いられる。表示装置９は、カメラボディ１００の背面側から表示面が視認可能となるように配設されている。メモリー１０は、圧縮伸長回路７で圧縮処理された画像データを一時的に保存するメモリーである。
【００１５】
ＣＰＵ１２は、カメラボディ１００の各部の制御を行う制御回路であり、各部から出力される信号を入力して所定の演算を行い、演算結果に基づく制御信号を各部へ出力する。不揮発メモリー１３は、各種設定値等を保持するためのメモリーである。傾斜センサー１４は、撮影レンズ２００に入射する光軸を中心とする、カメラボディ１００の傾斜角度θを検出するための角度センサーである。以下の説明では、撮影レンズ２００に入射する光軸を中心とする、カメラボディ１００の傾斜角度のことを、単にカメラボディ１００の傾斜角度θまたは傾斜角度θと呼ぶ。
【００１６】
−−−撮像時の動作−−−
このように構成されるカメラボディ１００では、不図示の電源スイッチがオンされてレリーズボタン１０４が押圧されると、メインミラー３２１がミラーアップされるとともに、ＣＰＵ１２でシャッタ速度および絞り値が適宜決定され、被写体像が撮像素子２で撮像される。撮像素子２で撮像された被写体像のアナログ撮像信号はＡ／Ｄ変換回路３でデジタル信号に変換されて、画像処理回路６で画像処理が行わる。画像処理回路６で処理された画像データは、圧縮伸長回路７でたとえばＪＰＥＧ形式による圧縮処理が行われて記録媒体１１に記録される。
【００１７】
なお、本実施の形態では、ＥＸＩＦ規格に則って、ＪＰＥＧ形式による圧縮処理が行われた画像データと、ＥＸＩＦ情報とが記録媒体１１に記録される。ＥＸＩＦ情報とは、画像ファイルに添付されている画像の各種情報をＥＸＩＦ規格に則って記録したものである。ＥＸＩＦ情報を記録する領域には、撮像時のカメラボディ１００の縦横の向きや解像度など画像に関する各種情報を記録する領域、撮影日時を記録する領域、露出時間や絞り値などの各種撮影条件を記録する領域、各ベンダー（メーカー）が任意に使用できる任意領域、ユーザーが任意に使用できる領域などが含まれる。本実施の形態では、後述するように、任意領域にカメラボディ１００の傾斜角度に関する情報を記録する。
【００１８】
すなわち、ＣＰＵ１２は、傾斜センサー１４から出力された信号値に基づいて、撮像素子２で被写体像が撮像されたときのカメラボディ１００の傾斜角度θを算出する。ここで、傾斜角度θについて、基準位相および回転方向を次のように規定する。図３（ａ）に示すように、カメラボディ１００の上面を鉛直真上に向けたときカメラボディ１００の姿勢（回動位相）を基準位相とし、このときの傾斜角度θを０度とする。また、図３（ｂ）に示すように、カメラボディ１００を正面から見た際に、基準位相から時計方向に回転させたときに傾斜角度θが正の値となるように回転方向を規定する。
【００１９】
ＣＰＵ１２は、傾斜角度θから、カメラボディ１００の９０度毎の縦横の向きを次のように判定する。傾斜角度がマイナス４５度（３１５度）以上４５度未満の場合、カメラボディ１００の向きが水平であると判定する。傾斜角度が４５度以上１３５度未満の場合、カメラボディ１００の向きが９０度傾斜した垂直であると判定する。傾斜角度が１３５度以上２２５度未満の場合、カメラボディ１００の向きが上下が反転した水平であると判定する。傾斜角度が２２５度以上３１５度未満の場合、カメラボディ１００の向きが２７０度傾斜した垂直であると判定する。この、カメラボディ１００の９０度毎の縦横の向きの情報は、従来からＥＸＩＦ情報として記録される撮像時のカメラボディ１００の縦横の向きの情報と同じ情報である。
【００２０】
また、ＣＰＵ１２は、傾斜角度θと、上述したカメラボディ１００の９０度毎の縦横の向きとの角度差△θを算出する。角度差△θは、カメラボディ１００の９０度毎の縦横の向きからさらにどの程度カメラボディ１００が傾いているかを示す情報である。換言すれば、角度差△θは、画像の縦横の向きの情報から決定される画像の向きに合わせて回転させた画像から、さらにどの程度画像を回転させると被写体像が正立するかを示す傾斜角度の差分の情報である。
【００２１】
たとえば、図４（ａ）に示すように、傾斜角度θが９３度である場合、カメラボディ１００の向きが９０度傾斜した垂直であると判定されるので、角度差△θは、傾斜角度θ（９３度）から、判定されたカメラボディ１００の向きである９０度を減じた３度となる。同様に、傾斜角度θが８５度である場合、角度差△θはマイナス５度となり、傾斜角度θが２２０度である場合、角度差△θは４０度となる。
【００２２】
なお、図４（ａ）は、傾斜角度θが９３度のときの撮像範囲および被写体像を、被写体像の鉛直方向が図示上下方向と一致するように描いたものである。図４において、矢印Ｕは、被写体像の鉛直真上の方向を示しており、一点鎖線は撮像素子２（カメラボディ１００）の上下左右方向、すなわち、画像データ上の上下左右方向を示している。また、図４（ａ）に記載された撮像範囲および被写体像は、カメラボディ１００の背面側から見たものとなるため、反時計方向に回転させたときに傾斜角度θが正の値を採ることになる。
【００２３】
ＣＰＵ１２は、上述したようにカメラボディ１００の９０度毎の縦横の向きと、角度差△θを算出すると、これらをＥＸＩＦ情報として記録媒体１１に記録させる。これにより、圧縮伸長回路７で圧縮処理が行われた画像データと、カメラボディ１００の９０度毎の縦横の向きの情報と、角度差△θとが１つの画像ファイルとして記録媒体１１に記録される。ここで、画像データは、ＥＸＩＦ規格で規定された画像データを記録する領域（以下、画像データ記録領域と呼ぶ）に記録され、カメラボディ１００の９０度毎の縦横の向きの情報は、ＥＸＩＦ情報を格納する領域のうち、撮像時のカメラボディ１００の縦横の向きを記録する領域（以下、向き記録領域と呼ぶ）に記録される。角度差△θは、ＥＸＩＦ情報を格納する領域のうち、上述した任意領域に記録される。
【００２４】
すなわち、画像データやカメラボディ１００の９０度毎の縦横の向きの情報は、ベンダー（メーカー）に関わらず共通して使用される領域（第１の領域）に従来どおり記録されることとなる。角度差△θは、各ベンダー（メーカー）が任意に使用できる領域（第２の領域）に記録されることとなる。これにより、ＥＸＩＦ規格に対応した従来の再生プログラムを用いた、従来のカメラや携帯電話機、パーソナルコンピュータ、携帯情報端末などの画像再生機能を有する装置（画像再生装置）で、カメラボディ１００で撮像して得た画像データを従来どおり再生して表示することができる。
【００２５】
たとえば、図４（ａ）に示すように、撮像されたときの傾斜角度θが９３度であった場合、上述したように、画像データ記録領域に画像データが記録され、向き記録領域にカメラボディ１００の向きが９０度傾斜した垂直であることを示す情報が記録される。記録された画像データは、図４（ｂ）に示すように、カメラボディ１００の上下左右方向に対して被写体像が図示時計方向に９３度回転した状態となる。
【００２６】
このように記録された画像データを従来の再生プログラムを用いて再生する場合、画像ファイルの中の画像データが画像データ記録領域から読み込まれ、カメラボディ１００の向きが９０度傾斜した垂直であることを示す情報が向き記録領域から読み込まれる。そして、再生する際の画像の縦横を自動的に回転させるように設定されている場合には、向き記録領域から読み込んだ情報に基づいて、図４（ｃ）に示すように、表示装置に表示する画像が図示反時計方向に９０度回転された状態で表示される。
【００２７】
しかし、撮像時の傾斜角度θが９３度であったため、向き記録領域から読み込んだ情報に基づいて、画像を図示反時計方向に９０度回転させても、被写体像が完全には正立しないこととなる。このような場合、従来の再生プログラムを用いた画像表示装置では、被写体像を完全に正立させるためには、表示される画像を図示反時計方向にさらに３度回転するようにユーザーが修正作業を行う必要がある。
【００２８】
これに対し、本実施の形態では、撮像して得た画像をカメラボディ１００の表示装置９に表示する際に、以下に述べる処理を行うことで被写体像を完全に正立させて表示できる。以下、詳述する。
【００２９】
本実施の形態では、記録媒体１１に記録された画像データを再生する際、ＣＰＵ１２は、記録媒体１１に記録された画像ファイルのデータを読み込む。すなわち、ＣＰＵ１２は、画像データを画像データ記録領域から読み込み、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域から読み込み、角度差△θを任意領域から読み込む。
【００３０】
再生する際の画像の縦横を自動的に回転させるように設定されている場合には、ＣＰＵ１２は、向き記録領域から読み込んだ情報に基づいて、画像データ記録領域から読み込んだ画像データを９０度単位で回転させ、さらに、任意領域から読み込んだ角度差△θに基づいて画像データを回転させる。これにより、被写体像が完全に正立した画像が生成される。その後、ＣＰＵ１２は、表示回路８を制御することで、生成した画像の全体が表示装置９に表示されるように画像のサイズを調整させて、当該画像を表示装置９に表示させる。
【００３１】
たとえば、図４（ａ）に示すように、撮像されたときの傾斜角度θが９３度であった場合、ＣＰＵ１２は、画像データを画像データ記録領域から読み込む。またＣＰＵ１２は、カメラボディ１００の向きが９０度傾斜した垂直であることを示す情報を向き記録領域から読み込み、角度差△θが３度であることを任意領域から読み込む。
【００３２】
再生する際の画像の縦横の向きを自動的に回転させるように設定されている場合には、ＣＰＵ１２は、向き記録領域から読み込んだ情報に基づいて、図４（ｃ）に示すように、画像データ記録領域から読み込んだ画像データを９０度回転させ、さらに、任意領域から読み込んだ角度差△θに基づいて画像データを３度回転させる。その結果、図５（ａ）に示すように被写体像が正立した画像が生成される。
【００３３】
その後、ＣＰＵ１２は、表示回路８を制御することで、図５（ａ）に示す画像の全体が表示装置９に表示されるように画像のサイズを調整させて、当該画像を表示装置９に表示させる。その結果、図５（ｂ）に示すように、被写体像が完全に正立した画像が表示装置９に表示される。なお、図５（ａ），（ｂ）において、一点鎖線は、撮像素子２（カメラボディ１００）の上下左右方向、すなわち、画像を回転させる前の画像データ上の上下左右方向を示している。また、二点鎖線は、画像を回転させた後の画像データ上の上下左右方向を示している。画像を回転させた後の画像データ上の上下方向または左右方向は、矢印Ｕで示した被写体像の鉛直真上の方向と平行となる。
【００３４】
−−−傾斜センサー１４の校正について−−−
カメラボディ１００の傾斜角度θを正確に算出するために、カメラボディ１００が基準位相となるように保持されているときに傾斜センサー１４から出力される信号値に基づいて、ＣＰＵ１２が傾斜角度θを０度と算出するように、カメラボディ１００の製造段階で校正が行われている。具体的には、カメラボディ１００が基準位相となるように保持されているときに傾斜センサー１４から出力される信号値を第１のキャリブレーション値として不揮発メモリー１３に記録させている。この不揮発メモリー１３に記録された第１のキャリブレーション値で傾斜センサー１４から出力される信号値を補正することで、撮像時に正しい傾斜角度θが得られる。
【００３５】
また、撮像素子２がカメラボディ１００に対して僅かに傾いて固定されていることがある。そこで、カメラボディ１００が基準位相となるように保持されているときに鉛直または水平な被写体を撮像して得た画像に基づいて、被写体像の傾きθ１を算出する。そして、カメラボディ１００の製造段階で、この傾きθ１を第２のキャリブレーション値として不揮発メモリー１３に記録させておく。あるいは、鉛直または水平な被写体を撮像した画像が表示画面上で正しく垂直または水平となるようにカメラボディ１００を傾けて、このときの傾斜角度θを第２のキャリブレーション値として不揮発メモリー１３に記録させておく。そして、撮像時に、傾斜角度θまたは角度差△θを第２のキャリブレーション値で補正する。これにより、画像データの再生時に被写体像を完全に正立できる。
【００３６】
−−−フローチャート−−−
図６は、被写体像の撮像の際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図６のフローチャートによるプログラムは、カメラボディ１００の不図示の電源スイッチがオンされると起動してＣＰＵ１２で実行される。
【００３７】
ステップＳ１において、レリーズボタン１０４が押圧されるまで待機する。ステップＳ１が肯定判断されるとステップＳ１１およびステップＳ３１へ進む。ステップＳ１１において、公知のミラーアップ、絞り制御、シャッタ制御、撮像という一連の撮像動作を行うよう各部を制御してステップＳ１３へ進む。ステップＳ１３において、撮像動作が終了するまで待機して、ステップＳ１５およびステップＳ２１へ進む。
【００３８】
ステップＳ１５において、公知のリセット動作を行うように各部を制御してステップＳ１７へ進む。ステップＳ１７においてリセット動作が終了するまで待機した後、リターンする。
【００３９】
ステップＳ２１において、撮像素子２で撮像された被写体像のアナログ撮像信号を画像処理ブロックで処理するように各部を制御してステップＳ４１へ進む。
【００４０】
ステップＳ３１において、傾斜センサー１４から出力される信号値に基づいて傾斜角度θを算出してステップＳ３３へ進む。ステップＳ３３において、ステップＳ３１で算出した傾斜角度θに基づいてカメラボディ１００の９０度毎の縦横の向きを判定してステップＳ３５へ進む。ステップＳ３５において、ステップＳ３１で算出した傾斜角度θ、および、ステップＳ３３で判定したカメラボディ１００の９０度毎の縦横の向きに基づいて角度差△θを算出してステップＳ４１へ進む。
【００４１】
ステップＳ４１において、画像処理ブロックで処理された画像データと、ステップＳ３３で判定したカメラボディ１００の９０度毎の縦横の向きの情報と、ステップＳ３５で算出した角度差△θとを所定の領域に記録するよう制御してリターンする。
【００４２】
図７は、記録媒体１１に記録された画像データを再生する際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図７のフローチャートによるプログラムは、不図示の操作スイッチが操作されて記録媒体１１に記録された画像データを再生するように指示されると起動してＣＰＵ１２で実行される。
【００４３】
ステップＳ５１において、記録媒体１１に記録された画像ファイルのデータを読み込むよう画像処理ブロックを制御してステップＳ５３へ進む。ステップＳ５３において、圧縮された画像データを伸長するよう圧縮伸長回路８を制御してステップＳ５５へ進む。ステップＳ５５において、不図示の操作スイッチの操作によって、再生する際の画像の縦横の向きを自動的に回転させるように設定されているか否かを判断する。
【００４４】
ステップＳ５５が肯定判断されるとステップＳ５７へ進み、向き記録領域から読み込んだ情報に基づいて、伸長した画像データを回転させてステップＳ５９へ進む。ステップＳ５９において、ステップＳ５７で回転された画像データを、任意領域から読み込んだ角度差△θに基づいてさらに回転させてステップＳ６１へ進む。
【００４５】
ステップＳ６１において、画像の全体が表示装置９に表示されるように画像のサイズを調整するように表示回路８を制御してステップＳ６３へ進む。ステップＳ６３において、ステップＳ６１で画像のサイズを調整させた画像データを表示装置９に表示するよう表示回路８を制御してリターンする。
【００４６】
ステップＳ５５が否定判断されるとステップＳ６１へ進む。
【００４７】
上述した第１の実施の形態のカメラボディ１００では、次の作用効果を奏する。
（１）  画像データが、ＥＸＩＦ規格で規定された画像データを記録する領域（画像データ記録領域）に記録され、カメラボディ１００の９０度毎の縦横の向きの情報が、ＥＸＩＦ情報を格納する領域のうち、撮像時のカメラボディ１００の縦横の向きを記録する領域（向き記録領域）に記録されるように構成した。また、カメラボディ１００の傾斜角度θに関する情報が、向き記録領域とは異なる領域に記録されるように構成した。したがって、従来のＥＸＩＦ規格に準拠して画像データを記録でき、生成された画像ファイルが従来のＥＸＩＦ規格の画像ファイルと互換性を有するとともに、撮像時のカメラボディ１００の僅かな傾斜角度を記録できる。これにより、従来の再生プログラムを用いた画像再生装置で、カメラボディ１００で撮像して得た画像データを従来どおり再生して表示することができる。また、向き記録領域とは異なる領域に記録されたカメラボディ１００の傾斜角度θに関する情報をさらに読み込むことができる再生プログラムを用いることで、被写体像を正立させて表示できるのでユーザーが画像の回転操作を行わなくても済む。
【００４８】
（２）  向き記録領域とは異なる領域に角度差△θを記録するように構成した。角度差△θは、画像の縦横の向きの情報から決定される画像の向きに合わせて回転させた画像から、さらにどの程度画像を回転させると被写体像が正立するかを示す傾斜角度の差分の情報である。これにより、向き記録領域に記録されているカメラボディ１００の９０度毎の縦横の向きの情報と合わせて、撮像時のカメラボディ１００の僅かな傾斜角度を精度よく記録できる。また、向き記録領域とは異なる領域に記録された角度差△θをさらに読み込むことができる再生プログラムを用いることで、被写体像を精度よく正立させて表示できるのでユーザーが画像の回転操作を行わなくても済む。
【００４９】
（３）  角度差△θが、ＥＸＩＦ情報を格納する領域のうち、各ベンダー（メーカー）が任意に使用できる任意領域に記録されるように構成した。任意領域はメーカー側で任意に利用可能であり、他の領域のデータに影響を与えないので、高い互換性を有する。また、画像データの記録用のプログラムおよび再生用のプログラムの変更部分が少なくて済み、開発コストを低減できる。
【００５０】
（４）  記録された画像ファイルから画像を再生して表示させる際に、向き記録領域に記録されているカメラボディ１００の９０度毎の縦横の向きの情報と、向き記録領域とは異なる領域に記録されたカメラボディ１００の傾斜角度θに関する情報とを読み込んで画像を回転させて表示するように構成した。これにより、撮像時のカメラボディ１００の僅かな傾きを修正して、被写体像を正立させて表示できるとともに、従来のＥＸＩＦ規格で記録された画像も表示させることができるので、従来のＥＸＩＦ規格との互換性を有していて汎用性が高い。
【００５１】
（５）  記録された画像ファイルから画像を再生して表示させる際に、向き記録領域に記録されているカメラボディ１００の９０度毎の縦横の向きの情報に基づいて画像を回転させ、さらに、向き記録領域とは異なる領域に記録された角度差△θとを読み込んで画像を回転させて表示するように構成した。これにより、被写体像を精度よく正立させて表示できる。
【００５２】
（６）  カメラボディ１００が基準位相となるように保持されているときに傾斜センサー１４から出力される信号値に基づいて、ＣＰＵ１２が傾斜角度θを０度と算出するように校正を行っている。これにより、カメラボディ１００の傾斜角度θを正確に算出できる。
【００５３】
−−−第２の実施の形態−−−
図８，９を参照して、本発明をカメラに適用した第２の実施の形態を説明する。以下の説明では、第１の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第１の実施の形態と同じである。本実施の形態では、角度差△θの代わりに傾斜角度θを任意領域に記録するとともに、向き記録領域に記録されたカメラボディ１００の９０度毎の縦横の向きの情報が無効であることを示す無効性情報を任意領域に記録する。
【００５４】
すなわち、ＣＰＵ１２は、傾斜センサー１４から出力された信号値に基づいて、撮像素子２で被写体像が撮像されたときのカメラボディ１００の傾斜角度θを算出するとともに、カメラボディ１００の９０度毎の縦横の向きを判定する。そして、ＣＰＵ１２は、圧縮伸長回路７で圧縮処理が行われた画像データを画像データ記録領域に記録し、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域に記録し、傾斜角度θと無効性情報とを任意領域に記録するよう各部を制御する。
【００５５】
すなわち、画像データやカメラボディ１００の９０度毎の縦横の向きの情報は、ベンダー（メーカー）に関わらず共通して使用される第１の領域に従来どおり記録されることとなる。角度差△θは、各ベンダー（メーカー）が任意に使用できる第２の領域に記録されることとなる。これにより、ＥＸＩＦ規格に対応した従来の再生プログラムを用いた、従来のカメラやパーソナルコンピュータ、携帯情報端末などの画像再生機能を有する装置（画像再生装置）で、カメラボディ１００で撮像して得た画像データを従来どおり再生して表示することができる。
【００５６】
また、本実施の形態では、撮像して得た画像をカメラボディ１００の表示装置９に表示する際に、以下に述べる処理を行うことで被写体像を完全に正立させて表示できる。本実施の形態では、記録媒体１１に記録された画像データを再生する際、ＣＰＵ１２は、記録媒体１１に記録された画像ファイルのデータを読み込む。すなわち、ＣＰＵ１２は、画像データを画像データ記録領域から読み込み、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域から読み込み、角度差△θと無効性情報とを任意領域から読み込む。
【００５７】
再生する際の画像の縦横の向きを自動的に回転させるように設定されている場合、ＣＰＵ１２は、任意領域から無効性情報を読み込んでいる場合には、向き記録領域から読み込んだ情報に関わりなく、任意領域から読み込んだ傾斜角度θに基づいて画像データを回転させる。これにより、被写体像が完全に正立した画像が生成される。その後、ＣＰＵ１２は、表示回路８を制御することで、生成した画像の全体が表示装置９に表示されるように画像のサイズを調整させて、当該画像を表示装置９に表示させる。
【００５８】
また、ＣＰＵ１２は、任意領域から無効性情報を読み込んでいない場合には、任意領域から読み込んだ傾斜角度θに関わらず、向き記録領域から読み込んだ情報に基づいて、画像データ記録領域から読み込んだ画像データを９０度単位で回転させる。その後、ＣＰＵ１２は、表示回路８を制御することで、生成した画像の全体が表示装置９に表示されるように画像のサイズを調整させて、当該画像を表示装置９に表示させる。
【００５９】
従来のＥＸＩＦ規格に則って記録された画像ファイルには、任意領域に角度差△θおよび無効性情報が記録されていない。したがって、従来のＥＸＩＦ規格に則って記録された画像ファイルから画像を再生する場合には、従来どおり、画像データが９０度単位で回転されることとなり、互換性を有する。
【００６０】
−−−フローチャート−−−
図８は、被写体像の撮像の際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図８のフローチャートによるプログラムは、カメラボディ１００の不図示の電源スイッチがオンされると起動してＣＰＵ１２で実行される。
【００６１】
ステップＳ１からステップＳ２１まで、および、ステップＳ３１、ステップＳ３３は、図６に示した第１の実施の形態のフローチャートでステップ番号が対応するステップと同様であるので説明を省略する。ステップＳ２４１において、画像処理ブロックで処理された画像データを画像データ記録領域に記録し、ステップＳ３３で判定したカメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域に記録し、無効性情報およびステップＳ３１で算出した傾斜角度θを任意領域に記録するよう制御してリターンする。
【００６２】
図９は、記録媒体１１に記録された画像データを再生する際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図９のフローチャートによるプログラムは、不図示の操作スイッチが操作されて記録媒体１１に記録された画像データを再生するように指示されると起動してＣＰＵ１２で実行される。
【００６３】
ステップＳ５１からステップＳ５５まで、および、ステップＳ６１、ステップＳ６３は、図６に示した第１の実施の形態のフローチャートでステップ番号が対応するステップと同様であるので説明を省略する。ステップＳ５５が肯定判断されるとステップＳ２５６へ進み、ステップＳ５１で読み込んだ画像ファイルのデータのうち、任意領域に無効性情報が存在しているか否かを判断する。
【００６４】
ステップＳ２５６が肯定判断されるとステップＳ２５９へ進み、任意領域から読み込んだ角度差△θに基づいて、ステップＳ５３で伸長した画像データを回転させてステップＳ６１へ進む。ステップＳ２５６が否定判断されるとステップＳ２５７へ進み、向き記録領域から読み込んだ情報に基づいて、ステップＳ５３で伸長した画像データを回転させてステップＳ６１へ進む。
【００６５】
第２の実施の形態のカメラボディ１００を上述のように構成することで、第１の実施の形態の作用効果と同様の作用効果を奏する。
【００６６】
−−−第３の実施の形態−−−
図１０，１１を参照して、本発明をカメラに適用した第３の実施の形態を説明する。以下の説明では、第１および第２の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第１および第２の実施の形態と同じである。本実施の形態では、上述した角度差△θに基づいて、画像データを回転させた後、記録媒体１１に記録できる。
【００６７】
すなわち、撮像後、ＣＰＵ１２は、第１の実施の形態で説明したように、被写体像が撮像されると、圧縮伸長回路７で圧縮処理が行われた画像データを画像データ記録領域に記録し、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域に記録し、角度差△θを任意領域に記録するよう各部を制御する。その後、不図示の操作スイッチが操作されて、画像データの傾きを修正して再記録するように指示されると、ＣＰＵ１２は、画像データを画像データ記録領域から読み込み、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域から読み込み、角度差△θを任意領域から読み込む。
【００６８】
ＣＰＵ１２は、任意領域から読み込んだ角度差△θに基づいて、画像データ記録領域から読み込んだ画像データを回転させる。その後ＣＰＵ１２は、再び圧縮処理が行われるように圧縮伸長回路７を制御する。そして、ＣＰＵ１２は、圧縮伸長回路７で圧縮処理が行われた画像データを、上述した回転処理を行う前の元の画像データが記録されている画像データ記録領域に上書きして記録するとともに、任意領域に記録された傾斜角度θを消去するよう各部を制御する。
【００６９】
図１０（ａ）は、傾斜角度θが９３度のときの撮像範囲および被写体像を、被写体像の鉛直方向が図示上下方向と一致するように描いたものであり、図４（ａ）と同じ図である。また、図１０（ｂ）は、画像データを角度差△θに基づいて上述のように回転させる前の、記録媒体１１に記録された画像データであり、図４（ｂ）と同じ図である。図１０（ａ），（ｂ）において、矢印Ｕは、被写体像の鉛直真上の方向を示しており、一点鎖線は撮像素子２（カメラボディ１００）の上下左右方向、すなわち、画像データ上の上下左右方向を示している。
【００７０】
たとえば、図１０（ａ）に示すように、撮像されたときの傾斜角度θが９３度であった場合、ＣＰＵ１２は、画像データを画像データ記録領域から読み込み、カメラボディ１００の向きが９０度傾斜した垂直であることを示す情報を向き記録領域から読み込み、角度差△θが３度であることを任意領域から読み込む。
【００７１】
そしてＣＰＵ１２は、任意領域から読み込んだ角度差△θに基づいて、画像データ記録領域から読み込んだ画像データを３度だけ回転させる。その結果、図１０（ｃ）に示すように被写体像の鉛直真上の方向が画像データ上の垂直方向または水平方向を平行となる画像が生成される。なお、図１０（ｃ）において、一点鎖線は、撮像素子２（カメラボディ１００）の上下左右方向、すなわち、角度差△θに基づいて画像を回転させる前の画像データ上の上下左右方向を示している。また、二点鎖線は、角度差△θに基づいて画像を回転させた後の画像データ上の上下左右方向を示している。
【００７２】
その後、ＣＰＵ１２は、上述のように３度だけ回転させた画像データを再び圧縮するように圧縮伸長回路７を制御する。そして、ＣＰＵ１２は、圧縮伸長回路７で圧縮処理が行われた画像データで、上述した回転処理を行う前の元の画像データに対して上書きして記録するとともに、任意領域に記録された傾斜角度θを消去するよう各部を制御する。
【００７３】
このように、角度差△θに基づいて回転させた後の画像データは、向き記録領域に記録されたカメラボディ１００の９０度毎の縦横の向きの情報に基づいて回転させるだけで、被写体像を完全に正立させることができる。すなわち、上述した角度差△θに基づく回転処理を行うことで、当該処理後の画像ファイルに記録された画像データを従来の再生プログラムを用いた画像表示装置で表示させても、被写体像を完全に正立した状態で表示させることができる。
【００７４】
図１１は、上述した角度差△θに基づく回転処理を行う際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図１１のフローチャートによるプログラムは、不図示の操作スイッチが操作されて、画像データの傾きを修正して再記録するように指示されると起動してＣＰＵ１２で実行される。
【００７５】
ステップＳ３５１において、記録媒体１１に記録された画像ファイルのデータを読み込むよう画像処理ブロックを制御してステップＳ３５３へ進む。ステップＳ３５３において、圧縮された画像データを伸長するよう圧縮伸長回路７を制御してステップＳ３５５へ進む。ステップＳ３５５において、ステップＳ３５３で伸長した画像データを、任意領域から読み込んだ角度差△θに基づいて回転させてステップＳ３５７へ進む。
【００７６】
ステップＳ３５７において、ステップＳ３５５で回転させた画像データを圧縮するように圧縮伸長回路７を制御してステップＳ３５９へ進む。ステップＳ３５９において、圧縮伸長回路７で圧縮処理が行われた画像データで、上述した回転処理を行う前の元の画像データに対して上書きして記録するとともに、任意領域に記録された傾斜角度θを消去するよう各部を制御してリターンする。
【００７７】
第３の実施の形態のカメラボディ１００では、第１の実施の形態の作用効果に加えて次の作用効果を奏する。
（１）  角度差△θに基づいて画像データを回転させた後、記録媒体１１に記録するように構成した。これにより、上述した処理後の画像ファイルに記録された画像データを従来の再生プログラムを用いた画像表示装置で表示させても、被写体像を完全に正立した状態で表示させることができる。したがって、互換性および高い汎用性を備えるとともに、ユーザーが画像の回転操作を行わなくてよいので利便性が高い。
【００７８】
（２）  角度差△θに基づいて画像データを回転させた後、任意領域に記録された傾斜角度θを消去するように構成した。これにより、上述した処理後の画像ファイルに記録された画像データをカメラボディ１００の表示装置９に表示させる場合であっても、被写体像を完全に正立した状態で表示させることができる。
【００７９】
−−−第４の実施の形態−−−
図１２，１３を参照して、本発明をカメラに適用した第４の実施の形態を説明する。以下の説明では、第１〜第３の実施の形態と同じ構成要素には同じ符号を付して相違点を主に説明する。特に説明しない点については、第１〜第３の実施の形態と同じである。本実施の形態では、第３の実施の形態と同様に、角度差△θに基づいて画像データを回転させた後、記録媒体１１に記録できる。ただし、任意領域に記録された傾斜角度θを消去しない点、および、角度差△θに基づいて画像データがすでに回転されていることを示す修正情報を任意領域に記録する点で第３の実施の形態とは異なる。
【００８０】
すなわち、撮像後、ＣＰＵ１２は、第１および第３の実施の形態で説明したように、被写体像が撮像されると、圧縮伸長回路７で圧縮処理が行われた画像データを、画像データ記録領域に記録し、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域に記録し、角度差△θを任意領域に記録するよう各部を制御する。その後、不図示の操作スイッチが操作されて、画像データの傾きを修正して再記録するように指示されると、ＣＰＵ１２は、画像データを画像データ記録領域から読み込み、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域から読み込み、角度差△θを任意領域から読み込む。
【００８１】
ＣＰＵ１２は、任意領域から読み込んだ角度差△θに基づいて、画像データ記録領域から読み込んだ画像データを回転させる。その後ＣＰＵ１２は、再び圧縮処理が行われるように圧縮伸長回路７を制御する。そして、ＣＰＵ１２は、圧縮伸長回路７で圧縮処理が行われた画像データで、上述した回転処理を行う前の元の画像データに対して上書きして記録するとともに、角度差△θに基づいて画像データがすでに回転されていることを示す修正情報を任意領域に追加して記録するよう各部を制御する。
【００８２】
このように、角度差△θに基づいて回転させた後の画像データは、第３の実施の形態と同様に、向き記録領域に記録されたカメラボディ１００の９０度毎の縦横の向きの情報に基づいて回転させるだけで、被写体像を完全に正立させることができる。すなわち、上述した角度差△θに基づく回転処理を行うことで、当該処理後の画像ファイルに記録された画像データを従来の再生プログラムを用いた画像表示装置で表示させても、被写体像を完全に正立した状態で表示させることができる。
【００８３】
なお、本実施の形態では、記録媒体１１に記録された画像データを再生する際、以下に述べる処理を行う。記録媒体１１に記録された画像データを再生する際、ＣＰＵ１２は、画像データを画像データ記録領域から読み込み、カメラボディ１００の９０度毎の縦横の向きの情報を向き記録領域から読み込み、角度差△θおよび修正情報を任意領域から読み込む。
【００８４】
再生する際の画像の縦横の向きを自動的に回転させるように設定されている場合には、ＣＰＵ１２は、向き記録領域から読み込んだ情報に基づいて、画像データ記録領域から読み込んだ画像データを９０度単位で回転させる。画像データがすでに上述した処理によって角度差△θに基づいて回転されている場合には、この段階で生成される画像の被写体像が完全に正立する。
【００８５】
そこでＣＰＵ１２は、任意領域から修正情報を読み込んでいる場合には、任意領域から読み込んだ角度差△θに関わらず、表示回路８を制御することで、９０度単位で回転させた当該画像データを、画像の全体が表示装置９に表示されるように画像のサイズを調整させる。その後、当該画像を表示装置９に表示するように、表示回路８を制御する。
【００８６】
逆に、ＣＰＵ１２は、任意領域から修正情報を読み込んでいない場合には、向き記録領域から読み込んだ情報に基づいて、画像データ記録領域から読み込んだ画像データを９０度単位で回転させた後、任意領域から読み込んだ角度差△θに基づいて画像データをさらに回転させる。これにより、被写体像が完全に正立した画像が生成される。その後、ＣＰＵ１２は、表示回路８を制御することで、生成した画像の全体が表示装置９に表示されるように画像のサイズを調整させて、当該画像を表示装置９に表示させる。
【００８７】
図１２は、上述した角度差△θに基づく回転処理を行う際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図１２のフローチャートによるプログラムは、不図示の操作スイッチが操作されて、画像データの傾きを修正して再記録するように指示されると起動してＣＰＵ１２で実行される。ステップＳ３５１からステップＳ３５７までは、図１１に示した第３の実施の形態のフローチャートでステップ番号が対応するステップと同様であるので説明を省略する。
【００８８】
ステップＳ３５７が実行されるとステップＳ４５９へ進み、圧縮伸長回路７で圧縮処理が行われた画像データで、上述した回転処理を行う前の元の画像データに対して上書きして記録するとともに、修正情報を任意領域に追加して記録するよう各部を制御してリターンする。
【００８９】
図１３は、記録媒体１１に記録された画像データを再生する際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。図１３のフローチャートによるプログラムは、不図示の操作スイッチが操作されて記録媒体１１に記録された画像データを再生するように指示されると起動してＣＰＵ１２で実行される。
【００９０】
ステップＳ５１からステップＳ５５まで、および、ステップＳ６１、ステップＳ６３は、図６に示した第１の実施の形態のフローチャートでステップ番号が対応するステップと同様であるので説明を省略する。ステップＳ５５が肯定判断されるとステップＳ４５７へ進み、向き記録領域から読み込んだ情報に基づいて、画像データを回転させてステップＳ４５８へ進む。
【００９１】
ステップＳ４５８において、ステップＳ５１で読み込んだ画像ファイルのデータのうち、任意領域に修正情報が存在しているか否かを判断する。ステップＳ４５８が肯定判断されるとステップＳ６１へ進む。ステップＳ４５８が否定判断されるとステップＳ４５９へ進み、任意領域から読み込んだ角度差△θに基づいて、ステップＳ５３で伸長した画像データを回転させてステップＳ６１へ進む。
【００９２】
第４の実施の形態のカメラボディ１００では、第１〜第３の実施の形態の作用効果に加えて次の作用効果を奏する。
（１）  記録媒体１１に記録された画像データを再生する際、任意領域から修正情報を読み込んでいる場合には、画像データ記録領域から読み込んだ画像データを９０度単位で回転させた後、画像を表示するように構成した。また、任意領域から修正情報を読み込んでいない場合には、画像データ記録領域から読み込んだ画像データを９０度単位で回転させ、任意領域から読み込んだ角度差△θに基づいて画像データをさらに回転させた後、画像を表示するように構成した。これにより、従来のＥＸＩＦ規格に則って記録された画像ファイルであっても、画像の縦横の向きを自動的に回転させて表示できるので、互換性および高い汎用性を有する。
【００９３】
−−−変形例−−−
（１）  上述した第3の実施の形態では、一旦記録媒体１１に記録された画像ファイルを読み込んで、画像データを角度差△θに基づいて回転させた後、画像データを上書きするように構成しているが、本発明はこれに限定されない。たとえば、被写体像を撮像した後、被写体像の画像データを記録媒体に記録する前に、画像データを角度差△θに基づいて回転させてもよい。すなわち、第１の実施の形態における図６のステップＳ４１で実行する記録処理に先だって、第３の実施の形態における図１１のステップＳ３５５で実行される角度差△θに基づく回転処理を行うように構成してもよい。なお、第4の実施の形態についても同様のことが言える。
【００９４】
（２）  上述した第3および第４の実施の形態では、一旦記録媒体１１に記録された画像ファイルを読み込んで、画像データを角度差△θに基づいて回転させた後、画像データを上書きするように構成しているが、本発明はこれに限定されない。たとえば、一旦記録媒体１１に記録された画像ファイルを読み込んで、画像データを角度差△θに基づいて回転させた後、当該回転処理を行った画像データを含む新たな画像ファイルを生成してもよい。
【００９５】
（３）  上述の説明では、カメラボディ１００を用いて撮影して得た画像をカメラボディ１００の表示装置９に表示するように構成したが、本発明はこれに限定されない。ＣＰＵ１２および画像処理ブロックで行っている一連の処理、すなわち、記録媒体１１に記録された画像ファイルから画像データを読み込んで被写体像を完全に正立させて表示させる処理を実行するプログラムを作成する。そして、このプログラムを、従来の画像再生装置にインストールしてもよい。これにより、従来の画像再生装置でも上述の説明と同様に、ユーザーが画像の回転操作を行わなくても被写体像を完全に正立させて表示できる。
【００９６】
（４）  上述の説明では、角度差△θ、傾斜角度θ、無効性情報、および修正情報を、各ベンダー（メーカー）が任意に使用できる任意領域に記録するように構成しているが、本発明はこれに限定されない。たとえば、ユーザーが任意に使用できる領域など、画像ファイルの規格上で任意に利用できる領域に、角度差△θ、傾斜角度θ、無効性情報、および修正情報を記録するようにしてもよい。
【００９７】
（５）  上述の説明では、角度差△θ、傾斜角度θ、無効性情報、および修正情報を、すべて任意領域に記録するように構成しているが、本発明はこれに限定されない。それぞれのデータを、各ベンダー（メーカー）やユーザーが任意に使用できる領域であって、異なった領域にそれぞれ記録するようにしてもよい。たとえば、角度差△θや傾斜角度θを上述した任意領域に記録することとし、無効性情報や修正情報をユーザーが任意に使用できる領域に記憶することとしてもよい。
【００９８】
（６）  上述の説明では、画像ファイルのフォーマットがＥＸＩＦ規格に準拠するものとしているが、ＥＸＩＦ規格以外の他のフォーマットであってもよい。この場合、角度差△θ、傾斜角度θ、無効性情報、および修正情報を、各ベンダー（メーカー）やユーザーが任意に使用できる領域に記録するように構成すればよい。
（７）  上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。
【００９９】
なお、本発明の特徴的な機能を損なわない限り、本発明は、上述した実施の形態における構成に何ら限定されない。
【図面の簡単な説明】
【０１００】
【図１】カメラボディ１００とカメラボディ１００に装着する撮影レンズ２００を示した斜視図である。
【図２】制御回路１０１の構成を説明するブロック図である。
【図３】カメラボディ１００の姿勢を説明する図であり、（ａ）はカメラボディ１００の回動位相が基準位相とされた状態を示し、（ｂ）はカメラボディ１００を傾斜角度θだけ回動させた状態を示す。
【図４】撮像された画像データによる画像を示す図であり、（ａ）は被写体像を、被写体像の鉛直方向が図示上下方向と一致するように描いた図であり、（ｂ）は記録された画像データを回転させない場合の画像を示す図であり、（ｃ）は、記録された画像データを向き記録領域から読み込んだ情報に基づいて図示反時計方向に９０度回転させた場合の画像を示す図である。
【図５】角度差△θに基づいて回転させた後の画像データによる画像を示す図であり、（ａ）は角度差△θに基づいて回転させた後の画像データによる画像であり、（ｂ）は（ａ）の画像を表示装置９に表示させた状態を示す図である。
【図６】被写体像の撮像の際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【図７】記録媒体１１に記録された画像データを再生する際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【図８】第２の実施の形態における、被写体像の撮像の際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【図９】第２の実施の形態における、記録媒体１１に記録された画像データを再生する際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【図１０】第３の実施の形態における、撮像された画像データによる画像を示す図であり、（ａ）は被写体像を、被写体像の鉛直方向が図示上下方向と一致するように描いた図であり、（ｂ）は画像データを角度差△θに基づいて回転させる前の画像データによる画像を示す図であり、（ｃ）は画像データを角度差△θに基づいて回転させた後の画像データによる画像を示す図である。
【図１１】第３の実施の形態における、角度差△θに基づく回転処理を行う際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【図１２】第４の実施の形態における、角度差△θに基づく回転処理を行う際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【図１３】第４の実施の形態における、記録媒体１１に記録された画像データを再生する際にカメラボディ１００で行われる処理についてのフローチャートを示す図である。
【符号の説明】
【０１０１】
２  撮像素子                          ６  画像処理回路
７  圧縮伸長回路                      ８  表示回路
９  表示装置                          １１  記録媒体
１２  ＣＰＵ                          １４  傾斜センサー
１００  カメラボディ                  １０１  制御回路
２００  撮影レンズ
【図１】
2008187497.tif 000003
【図２】
2008187497.tif 000004
【図３】
2008187497.tif 000005
【図４】
2008187497.tif 000006
【図５】
2008187497.tif 000007
【図６】
2008187497.tif 000008
【図７】
2008187497.tif 000009
【図８】
2008187497.tif 000010
【図９】
2008187497.tif 000011
【図１０】
2008187497.tif 000012
【図１１】
2008187497.tif 000013
【図１２】
2008187497.tif 000014
【図１３】
2008187497.tif 000015