(57)【特許請求の範囲】
【請求項１】
画像を撮像する撮像手段と、
重力方向を検出する重力方向検出手段と、
前記撮像手段により撮像された画像の上下方向に関する情報を決定する制御手段と、を有し、
前記制御手段は、
撮影方向が所定の範囲外である場合には、前記重力方向検出手段により検出した重力方向に基づいて前記情報を決定し、
前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された前記画像に対して画像認識を行い、前記画像認識により前記画像を認識できたときは、前記画像認識の結果に基づいて前記情報を決定し、前記画像認識により前記画像を認識できなかったときは、前記撮影方向が所定の範囲内となる直前に前記重力方向検出手段により検出した重力方向に基づいて前記情報を決定する、
ことを特徴とする撮像装置。
【請求項２】
画像を撮像する撮像手段と、
重力方向を検出する重力方向検出手段と、
前記撮像手段により撮像された画像の上下方向に関する情報を決定する制御手段であって、撮影方向が所定の範囲外である場合には、前記重力方向検出手段により検出した重力方向に基づいて前記情報を決定し、前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された画像に対して画像認識を行い、前記画像認識の結果に基づいて前記情報を決定する制御手段と、を有し、
前記画像認識では、顔検出または文字認識を行い、
前記制御手段は、前記顔検出により顔が検出できた場合には、前記顔検出の検出結果に基づいて前記情報を決定し、前記顔検出により顔が検出できなかった場合には、前記文字認識の認識結果に基づいて前記情報を決定することを特徴とする撮像装置。
【請求項３】
画像を撮像する撮像手段と、
重力方向を検出する重力方向検出手段と、
前記撮像手段により撮像された画像の上下方向に関する情報を決定する制御手段であって、撮影方向が所定の範囲外である場合には、前記重力方向検出手段により検出した重力方向に基づいて前記情報を決定し、前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された画像に対して画像認識を行い、前記画像認識の結果に基づいて前記情報を決定する制御手段と、を有し、
前記画像認識では、顔検出または文字認識を行い、
前記制御手段は、前記文字認識により文字を認識できた場合には、前記文字認識の認識結果に基づいて前記情報を決定し、前記文字認識により文字を認識できなかった場合には、前記顔検出の検出結果に基づいて前記情報を決定することを特徴とする撮像装置。
【請求項４】
前記画像認識において文字認識よりも顔検出を優先する第１の撮影モードと、前記画像認識において顔検出よりも文字認識を優先する第２の撮影モードと、を有し、
前記制御手段は、
前記第１の撮影モードにおいては、前記顔検出により顔が検出できた場合には、前記顔検出の検出結果に基づいて前記情報を決定し、前記顔検出により顔が検出できなかった場合には、前記文字認識の認識結果に基づいて前記情報を決定し、
前記第２の撮影モードにおいては、前記文字認識により文字を認識できた場合には、前記文字認識の認識結果に基づいて前記情報を決定し、前記文字認識により文字を認識できなかった場合には、前記顔検出の検出結果に基づいて前記情報を決定する、
ことを特徴とする請求項２に記載の撮像装置。
【請求項５】
使用者による撮影指示に応じて撮像された前記画像に特定の処理を実行する処理手段をさらに有することを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項６】
前記処理手段は、前記特定の処理として、前記画像の回転、前記画像の切り出し、決定された前記情報の前記画像への属性情報としての付加の、少なくとも一つを行うことを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記画像を表示する表示手段をさらに有し、
前記表示手段は、決定された上下方向に応じた向きで前記画像を表示することを特徴とする請求項１乃至６のいずれか１項に記載の撮像装置。
【請求項８】
前記制御手段は、前記撮影方向が所定の範囲内にある場合に、使用者による撮影指示よりも前に前記撮像手段により撮像された前記画像に対して画像認識を行い、前記画像認識の結果に基づいて、使用者による撮影指示に応じて撮像された前記画像の上下方向に関する情報を決定することを特徴とする請求項１乃至７のいずれか１項に記載の撮像装置。
【請求項９】
前記制御手段は、前記撮影方向が所定の範囲内にある場合に、使用者による撮影指示に応じて撮像された前記画像に対して画像認識を行い、前記画像認識の結果に基づいて、使用者による撮影指示に応じて撮像された前記画像の上下方向に関する情報を決定することを特徴とする請求項１乃至７のいずれか１項に記載の撮像装置。
【請求項１０】
前記画像認識は、顔検出と文字認識の少なくとも一方であることを特徴とする請求項１に記載の撮像装置。
【請求項１１】
前記所定の範囲は、撮影方向の重力方向に対する角度が閾値以内の方向であることを特徴とする請求項１乃至１０のいずれか１項に記載の撮像装置。
【請求項１２】
画像を撮像する撮像手段を有する撮像装置の制御方法であって、
重力方向を検出する重力方向検出ステップと、
前記撮像手段により撮像された画像の上下方向に関する情報を決定する制御ステップと、を有し、
前記制御ステップでは、
撮影方向が所定の範囲外である場合には、前記重力方向検出ステップにおいて検出した重力方向に基づいて前記情報を決定し、
前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された前記画像に対して画像認識を行い、前記画像認識により前記画像を認識できたときは、前記画像認識の結果に基づいて前記情報を決定し、前記画像認識により前記画像を認識できなかったときは、前記撮影方向が所定の範囲内となる直前に前記重力方向検出ステップにおいて検出した重力方向に基づいて前記情報を決定する、
ことを特徴とする撮像装置の制御方法。
【請求項１３】
画像を撮像する撮像手段を有する撮像装置の制御方法であって、
重力方向を検出する重力方向検出ステップと、
前記撮像手段により撮像された画像の上下方向に関する情報を決定するステップであって、撮影方向が所定の範囲外である場合には、前記重力方向検出ステップにおいて検出した重力方向に基づいて前記情報を決定し、前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された画像に対して画像認識を行い、前記画像認識の結果に基づいて前記情報を決定する制御ステップと、を有し、
前記画像認識では、顔検出または文字認識を行い、
前記制御ステップでは、前記顔検出により顔が検出できた場合には、前記顔検出の検出結果に基づいて前記情報を決定し、前記顔検出により顔が検出できなかった場合には、前記文字認識の認識結果に基づいて前記情報を決定することを特徴とする撮像装置の制御方法。
【請求項１４】
画像を撮像する撮像手段を有する撮像装置の制御方法であって、
重力方向を検出する重力方向検出ステップと、
前記撮像手段により撮像された画像の上下方向に関する情報を決定するステップであって、撮影方向が所定の範囲外である場合には、前記重力方向検出ステップにおいて検出した重力方向に基づいて前記情報を決定し、前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された画像に対して画像認識を行い、前記画像認識の結果に基づいて前記情報を決定する制御ステップと、を有し、
前記画像認識では、顔検出または文字認識を行い、
前記制御ステップは、前記文字認識により文字を認識できた場合には、前記文字認識の認識結果に基づいて前記情報を決定し、前記文字認識により文字を認識できなかった場合には、前記顔検出の検出結果に基づいて前記情報を決定することを特徴とする撮像装置の制御方法。
【請求項１５】
前記制御ステップでは、
前記画像認識において文字認識よりも顔検出を優先する第１のモードにおいては、前記顔検出により顔が検出できた場合には、前記顔検出の検出結果に基づいて前記情報を決定し、前記顔検出により顔が検出できなかった場合には、前記文字認識の認識結果に基づいて前記情報を決定し、
前記画像認識において顔検出よりも文字認識を優先する第２のモードにおいては、前記文字認識により文字を認識できた場合には、前記文字認識の認識結果に基づいて前記情報を決定し、前記文字認識により文字を認識できなかった場合には、前記顔検出の検出結果に基づいて前記情報を決定する、
ことを特徴とする請求項１３に記載の撮像装置の制御方法。
【請求項１６】
前記制御ステップでは、前記撮影方向が所定の範囲内にある場合に、使用者による撮影指示よりも前に前記撮像手段により撮像された前記画像に対して画像認識を行い、前記画像認識の結果に基づいて、使用者による撮影指示に応じて撮像された前記画像の上下方向に関する情報を決定することを特徴とする請求項１２乃至１５のいずれか１項に記載の撮像装置の制御方法。
【請求項１７】
前記制御ステップでは、前記撮影方向が所定の範囲内にある場合に、使用者による撮影指示に応じて撮像された前記画像に対して画像認識を行い、前記画像認識の結果に基づいて、使用者による撮影指示に応じて撮像された前記画像の上下方向に関する情報を決定することを特徴とする請求項１２乃至１６のいずれか１項に記載の撮像装置の制御方法。
【請求項１８】
画像を撮像する撮像手段を有する撮像装置のコンピュータに、請求項１２乃至１７のいずれか１項に記載の撮像装置の制御方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置、撮像装置の制御方法、プログラム、記録媒体に関する。特には、撮影画像の方向を修正して記録する撮像装置と、この撮像装置の制御方法と、この撮像装置を制御するためのプログラムと、このプログラムが格納された記録媒体に関する。
【背景技術】
【０００２】
従来の撮像装置には、撮像した画像に撮像装置の姿勢情報を付加して記録媒体に記録し、画像を再生する際に前記画像に付加されている姿勢情報に基づいて前記画像の回転処理を行うものがある。また、特許文献１には、撮影モード選択手段により選択された撮影モードごとに、撮像手段により出力された画像に姿勢検出手段から出力される姿勢情報を付加するか否かを選択する構成が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２５９２９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、撮像装置の姿勢を検出し、その検出結果に応じて画像データの上下方向を決定する構成では、次のような問題が生じることがある。すなわち、撮像装置の撮影方向が上下方向に平行に近いと、そうでない姿勢と比較して、使用者等の意図している画像データの上下方向と検出された姿勢に基づく上下方向とが一致しなくなりやすい。このため、画像データの上下方向が、使用者等の意図しない方向に乱雑に変化し、視聴しにくくなってしまうという課題があった。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明は、画像を撮像する撮像手段と、重力方向を検出する重力方向検出手段と、前記撮像手段により撮像された画像の上下方向に関する情報を決定する制御手段と、を有し、前記制御手段は、撮影方向が所定の範囲外である場合には、前記重力方向検出手段により検出した重力方向に基づいて前記情報を決定し、前記撮影方向が所定の範囲内にある場合には、前記撮像手段により撮像された前記画像に対して画像認識を行い、前記画像認識により前記画像を認識できたときは、前記画像認識の結果に基づいて前記情報を決定し、前記画像認識により前記画像を認識できなかったときは、前記撮影方向が所定の範囲内となる直前に前記重力方向検出手段により検出した重力方向に基づいて前記情報を決定する、ことを特徴とする。
【発明の効果】
【０００６】
本発明によれば、撮影方向が所定の範囲内にある場合には、画像の内容に応じて画像の上下方向が決定される。このため、画像の方向が乱雑に変化することが抑制される。
【図面の簡単な説明】
【０００７】
【図１Ａ】本実施形態に係る撮像装置の第１の姿勢の例を示す外観斜視図である。
【図１Ｂ】本実施形態に係る撮像装置の第２の姿勢の例を示す外観斜視図である。
【図１Ｃ】本実施形態に係る撮像装置の第３の姿勢の例を示す外観斜視図である。
【図１Ｄ】本実施形態に係る撮像装置の表示部側の外観斜視図である。
【図２】本実施形態による撮像装置の構成例を示す機能ブロック図である。
【図３】本実施形態の重力方向を基準とした所定の範囲を示す図である。
【図４】本実施形態に係る撮像装置の制御の例を示すフローチャートである。
【図５】本実施形態に係る撮像装置の制御の他の例を示すフローチャートである。
【図６】本実施形態に係る撮像装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について、図面を参照して詳細に説明する。以下の本発明の実施形態では、撮像装置の例としてデジタルカメラを示す。ただし、本発明が適用できる撮像装置はデジタルカメラに限定されるものではない。
【０００９】
図１Ａ〜図１Ｄは、本発明の実施形態に係る撮像装置１００の構成例を模式的に示す外観斜視図である。なお、図１Ａと図１Ｂは撮像装置１００を前面側から見た図であり、図１Ｃは撮像装置１００を上面側から見た図であり、図１Ｄは撮像装置１００を背面側から見た図である。図１Ａ〜図１Ｄに示すように、撮像装置１００の本体１０１には、操作部２０６として機能する電源釦１０４、シャッター釦１０３およびタッチパネル６１３と、撮像部２０１として機能する撮影光学系１０２と、表示部２０４として機能する表示装置６１２とが設けられる。
【００１０】
図１Ａと図１Ｄは撮像装置１００の第１の姿勢を示し、図１Ｂは撮像装置１００の第２の姿勢を示し、図１Ｃは撮像装置１００の第３の姿勢を示す。図１Ａ〜図１Ｄにおいて、矢印Ｖ１，Ｖ２，Ｖ３は、それぞれの姿勢における撮影方向を示す。なお、撮影方向とは、撮影の際に撮像装置１００を被写体に向ける向き（撮影光学系１０２の光軸の方向）である。また、図１Ａ〜図１Ｄにおいて、図中の矢印Ｇは重力方向（鉛直下向き）を示す。第１の姿勢と第２の姿勢は、それぞれ撮影方向Ｖ１，Ｖ２が略水平方向である姿勢の例である。そして、第１の姿勢と第２の姿勢とは、撮像装置１００の本体１０１の向きが撮影光学系１０２の光軸回りに互いに９０°異なる（光軸回りに９０°回転している）。第３の姿勢は、撮影方向Ｖ３が重力方向Ｇと略平行な姿勢である。
【００１１】
図２は、本実施形態に係る撮像装置１００の機能構成の例を示すブロック図である。本実施形態に係る撮像装置１００は、制御部２０２と、記憶部２０７と、撮像部２０１と、重力方向検出部２０３と、表示部２０４と、記録部２０５と、操作部２０６とを有する。
【００１２】
制御部２０２は、撮像装置１００を制御する。制御部２０２には、ＣＰＵ６０１とＲＯＭ６０２とＲＡＭ６０３を有するコンピュータ６００が適用される（後述）。ＲＯＭ６０２には、撮像装置１００を制御するためのコンピュータプログラムや、撮像装置１００の制御に用いられる各種設定（定数や変数）があらかじめ格納されている。ＣＰＵ６０１は、ＲＯＭ６０２に格納されるコンピュータプログラムを読み出し、ＲＡＭ６０３に展開して（ＲＡＭ６０３をワークエリアとして用いて）実行する。この際、ＣＰＵ６０１は、ＲＯＭ６０２に格納される各種設定を適宜読み出して使用する。これによりコンピュータ６００は、撮像装置１００を制御する制御部２０２として機能し、後述する処理が実現する。
【００１３】
記憶部２０７は、撮像部２０１が出力した画像データや、制御部２０２が生成したデータなど、各種データを格納することができる。例えば、前述のコンピュータ６００のＲＡＭ６０３が、記憶部２０７の例として機能する。
【００１４】
撮像部２０１は、撮影光学系１０２と、撮像素子６１１と、Ａ／Ｄ変換器６１０とを含む（図１および図６参照）。撮影光学系１０２は、所定の数の撮影レンズ群により構成される。撮像素子６１１は、撮影光学系１０２の撮像レンズ群により結像した被写体の光学像から、アナログ形式の電気信号（画像データ）を生成する。撮像素子６１１には、入射した光を電気信号に変換するＣＣＤやＣＭＯＳなどの光電変換素子を有する固体撮像素子が適用される。Ａ／Ｄ変換器６１０は、撮像素子６１１が出力したアナログ形式の電気信号を、コンピュータで処理できるデジタル形式の電気信号である画像データに変換する。Ａ／Ｄ変換器６１０が変換した画像データは、制御部２０２に出力される。なお、撮像部２０１を構成する撮影光学系１０２、撮像素子６１１およびＡ／Ｄ変換器６１０の構成は、特に限定されるものではなく、従来公知の各種構成が適用できる。要は、撮像部２０１は被写体の光学像から電気信号（画像データ）を生成して出力できる構成であればよい。説明の便宜上、撮像部２０１が出力する画像データのうち、後述する撮影処理において出力する画像データを「第２の画像データ」と称する。第２の画像データは、使用者等による撮影指示に応じて出力される画像データである。また、使用者等による撮影指示に応じ出力される画像データ以外の画像データ（例えば、ライブビューの実行中に出力する画像データ）を「第１の画像データ」と称する。
【００１５】
重力方向検出部２０３は、重力方向Ｇを検出する。重力方向検出部２０３による重力方向の検出結果は、制御部２０２に出力される。重力方向検出部２０３には、例えば加速度センサが適用できる。
【００１６】
表示部２０４は、制御部２０２による制御にしたがい、撮像部２０１が出力する画像データの内容を表示する。表示部２０４が表示する画像データには、ライブビューの実行中に取得される第１の画像データと、撮影処理により取得され制御部２０２により特定の処理が行われた第２の画像データが含まれる。また、表示部２０４は、制御部２０２による制御にしたがい、撮像装置１００を操作するための操作メニューなども表示する。表示部２０４には、液晶表示パネルや有機ＥＬ等といった公知の各種表示装置が適用できる。
【００１７】
記録部２０５は、制御部２０２により特定の処理が施された第２の画像データを記録する。記録部２０５は、第２の画像データを記録するための記録媒体６１５である。記録部２０５の例としての記録媒体６１５には、メモリーカードなどの半導体メモリや磁気ディスクや磁気テープや光ディスクなどといった公知の各種記録媒体が適用できる。要は、記録部２０５は、制御部２０２により特定の処理が施された第２の画像データを記録できる記録媒体であればよく、その構成は特に限定されるものではない。
【００１８】
操作部２０６は、撮像装置１００を制御するために操作される部分である。本実施形態においては、操作部２０６には、電源釦１０４と、シャッター釦１０３と、表示装置６１２およびタッチパネル６１３が含まれる。電源釦１０４とシャッター釦１０３は、撮像装置１００の本体１０１に設けられる。ここでは、電源釦１０４が本体１０１の上面に設けられる構成を示す。電源釦１０４は、撮像装置１００の電源ＯＮ／ＯＦＦの操作を行うための部材である。制御部２０２は、使用者等による電源釦１０４の操作を検出すると、撮像装置１００の電源のＯＮ／ＯＦＦを行う。シャッター釦１０３は、使用者等が撮像装置１００に対して撮影指示を与えるための操作部である。シャッター釦１０３は、半押しでＯＮになる第１のシャッタースイッチと、全押しでＯＮになる第２のシャッタースイッチとを有する。制御部２０２は、シャッター釦１０３が半押しされて第１のシャッタースイッチがＯＮになったことを検出すると、撮影準備処理（後述）を実行する。さらに、制御部２０２は、シャッター釦１０３が全押しされて第２のシャッタースイッチがＯＮになったことを検出すると、撮影処理を開始する。撮影処理は、撮像部２０１が出力した第２の画像データを取得して記憶部２０７に記憶し、記憶部２０７に記憶させた第２の画像データに対して特定の処理を実行し、特定の処理を実行した第２の画像データを記録部２０５に記録するまでの一連の処理をいう。
【００１９】
タッチパネル６１３は、表示部２０４として機能する表示装置６１２（液晶表示パネルや有機ＥＬ）の表面に重畳して設けられる。使用者等によるタッチパネル６１３の操作は制御部２０２に出力される。制御部２０２は、表示部２０４に所定のアイコンを表示し、その状態でタッチパネル６１３への操作（タッチなど）を検出すると、タッチ等された位置に表示しているアイコンに対応する処理を実行する。このように、表示装置６１２とタッチパネル６１３とは、操作部２０６の例である各種機能釦として機能する。機能釦としては、例えば、撮影モードを切り替える撮影モード切替釦、ズームを行うズーム釦、各種メニューを表示するメニュー釦などが挙げられる。例えば、使用者等は、ズーム釦として機能するアイコンをタッチすることにより、ズーム機能を実行して所望の画角に調整することができる。このように、使用者等は、表示部２０４の例である表示装置６１２に表示されたアイコンを操作（正確には、表示装置６１２の表面に設けられるタッチパネル６１３を操作）することにより、直感的に各種設定や動作を行うことができる。
【００２０】
このほか、撮像装置１００には、駆動用の電力の供給源である電源部や、外部機器との間で音声を入出力する音声入出力部や、被写体に向けて光を発して被写体輝度を調整する発光部などが設けられる。これらには従来公知の構成が適用できるため、図示および詳細な説明を省略する。
【００２１】
ここで、撮像部２０１が出力する第１および第２の画像データの上下方向の決定について説明する。撮像装置１００は重力方向検出部２０３を有し、制御部２０２は、重力方向検出部２０３による重力方向Ｇの検出結果から、撮影方向（特に、重力方向と撮影方向との角度）を算出する。そして、制御部２０２は、撮影方向が所定の範囲内にある場合と所定の範囲外にある場合とで、第１および第２の画像データの上下方向決定手段を変更する。
【００２２】
図３は、前述の所定の範囲を模式的に示す図である。「所定の範囲」とは、撮影方向が重力方向に平行に近い範囲をいう。図３中において、矢印Ｇは重力方向（鉛直下向き）を示す。図３に示すように、本実施形態では、重力方向Ｇに対してある角度θ内の範囲（すなわち、図３中の円錐面３０１の内側）を「所定の範囲」とする。そして、この角度θが、第１および第２の画像データの上下方向を決定する方法の変更の閾値となる。すなわち、この所定の範囲は、重力方向Ｇに対してある角度θを閾値とし、重力方向Ｇに対する角度がこの閾値以内となる方向である。
【００２３】
図３中、矢印Ｖ１は、撮像装置１００が第１の姿勢である場合の撮影方向を示す。矢印Ｖ２は、撮影方向が第２の姿勢である場合の撮影方向を示す。ここでは、第１の姿勢の撮影方向と第２の姿勢の撮影方向が略水平方向である例を示す。なお、図３中において第１の姿勢の撮影方向Ｖ１と第２の姿勢の撮影方向Ｖ２とが異なる場合を示すが、同じ方向である場合もある。図３に示すように、撮影方向Ｖ１，Ｖ２は所定の範囲外にある。このような場合には、制御部２０２は、第１の上下方向決定手段として機能し、重力方向検出部２０３による重力方向Ｇの検出結果に基づいて第１および第２の画像データの上下方向を決定する。すなわち、第１の上下方向決定手段は、撮影方向が所定の範囲外にある姿勢で取得した第１および第２の画像データについては、検出した重力方向Ｇを基準として上下方向を決定する。具体的には例えば、重力方向Ｇを第１および第２の画像データの下側とし、その反対側を上側とする。
【００２４】
図３中、矢印Ｖ３は、撮像装置１００が第３の姿勢である場合の撮影方向を示す。第３の姿勢の撮影方向Ｖ３は、重力方向Ｇに略平行な方向であり、前述の所定の範囲内（図３の円錐面３０１の内側）にある。第３の姿勢で撮影を行う場合とは、例えば、机上に置かれた書類を上方から撮影する場合などが挙げられる。このような場合において、重力方向検出部２０３による重力方向Ｇの検出結果に基づいて第１および第２の画像データの上下方向を決定する方法では、撮影方向が変動すると、第１および第２の画像データの上下方向も変化することがある。また、使用者等は真上から撮影しているつもりであっても、撮像装置１００の本体１０１の姿勢の変化によって画像の上下方向が変化することがある。したがって、第１および第２の画像データの上下方向が、使用者等の意図する方向と異なる場合が生じやすくなる。また、このような場合に同じ被写体に対して複数回にわたって撮影を行うと、使用者等は同じ被写体を同じ方向から撮影したつもりであるにもかかわらず、撮像装置１００の本体１０１の姿勢の変動により、第２の画像データごとに上下方向が異なる場合が生じ得る。
【００２５】
そこでこの場合には、制御部２０２は、第２の上下方向決定手段として機能し、第１の画像データに対してその内容（写っているオブジェクト）を認識するための画像認識を実行し、その画像認識の結果に基づいて第１の画像データの上下方向を決定する。すなわち、第２の上下方向決定手段は、第１の画像データの内容（写り込んでいるオブジェクトとその向き）に応じて、第１の画像データの上下方向を決定する。本実施形態では、制御部２０２は、画像認識の例として、顔認識と文字認識の少なくとも一方を実行し、その結果に基づいて第１の画像データの上下方向を決定する。より具体的には、制御部２０２は、第１の画像データに対して顔認識を実行し、画像データに人間等の顔が写っていると認識できた場合には、認識できた顔の方向を基準として第１の画像データの上下方向を決定する。また、制御部２０２は、第１の画像データに対して文字認識を実行し、第１の画像データに文字が写っていると認識できた場合には、認識できた文字の方向を基準として第１の画像データの上下方向を決定する。そして、制御部２０２は、第２の画像データの上下方向を、第１の画像データの上下方向と同じ方向に決定する。
【００２６】
なお、所定の範囲の閾値となる角度θは、使用者等が撮影方向を重力方向Ｇに平行な方向に向けたとみなせる角度が適用できる。ただし、この角度θの具体的な値は特に限定されない。また、使用者等がこの角度θを設定できる構成であってもよい。なお、この角度θは、あらかじめコンピュータ６００のＲＯＭ６０２に格納されている。
【００２７】
制御部２０２は、第１の画像データの上下方向の決定において、複数の画像認識のうち、いずれの画像認識の結果を優先するかを、撮影モードによって変更する。本実施形態では、複数の画像認識として、顔検出と文字認識が適用される。そして、顔検出の検出結果を優先するか、文字認識の認識結果を優先するかを、撮影モードによって変更する。具体的には、撮像装置１００は、第１の画像データの上下方向の決定に顔検出の検出結果を優先して用いる第１の撮影モード群と、文字認識の認識結果を優先して用いる第２の撮影モード群を有する。第１の撮影モード群は、例えば、ポートレイト撮影モード、マクロ撮影モード、美肌撮影モード等である。第２の撮影モード群は、例えば、文書撮影モード、ホワイトボード撮影モード等である。
【００２８】
なお、第１の画像データの内容（写っているオブジェクト）によっては、画像認識ができないことがある。すなわち、第１の画像データに対する顔検出により顔が検出できず、かつ、文字認識により文字が認識できない場合がある。この場合には、制御部２０２は、重力方向検出部２０３により検出された重力方向Ｇを基準として、第１の画像データの上下方向を決定する。さらに、重力方向検出部２０３により重力方向が検出されない場合には、制御部２０２は、あらかじめ設定されている上下方向を、第１の画像データの上下方向に決定する。そして、制御部２０２は、第２の画像データの上下方向を、このように決定した第１の画像データの上下方向と同じ方向に決定する。
【００２９】
次に、本発明の実施形態に係る撮像装置１００の制御方法について説明する。図４は、本実施形態に係る撮像装置１００の制御方法の処理を示すフローチャートである。このフローチャートに示す制御を実行するためのコンピュータプログラムは、あらかじめ撮像装置１００のコンピュータ６００のＲＯＭ６０２に格納されている。そして、ＣＰＵ６０１がＲＯＭ６０２に格納されているこのコンピュータプログラムを読み出し、ＲＡＭ６０３に展開して実行する。これにより、コンピュータ６００が撮像装置１００の制御部２０２として機能し、図４に示す制御方法が実現される。
【００３０】
ステップＳ４０１において、制御部２０２は撮像装置１００の制御を開始する。なお、ステップＳ４０１の時点において、撮像装置１００の電源はＯＦＦであるものとする。
【００３１】
ステップＳ４０２において、制御部２０２は、電源釦１０４に対して電源をＯＮにする操作が行われたかの判断を行う。制御部２０２は、撮像装置１００の電源がＯＦＦである場合に電源釦１０４の操作（押下）を検出すると、電源釦１０４に対して電源をＯＮにする操作があったと判断する。電源釦１０４に対する電源をＯＮにする操作がないと判断した場合には、操作が検出されるまでこのステップＳ４０２で待機する。電源釦１０４に対して電源をＯＮにする操作があったと判断した場合には、ステップＳ４０３へ進む。
【００３２】
ステップＳ４０３においては、制御部２０２は、撮像部２０１が出力する画像データを取得して記憶部２０７へ記憶する。なお、このステップで取得される画像データは、使用者等による撮影指示によらずに取得される画像データであり、「第１の画像データ」の例である。そして、ステップＳ４０４に進む。
【００３３】
ステップＳ４０４においては、制御部２０２は、重力方向検出部２０３による重力方向Ｇの検出結果を取得し、取得した検出結果の情報を含むデータ（以下、「重力方向データ」と称する）を生成する。そして、制御部２０２は、生成した重力方向データを記憶部２０７に記憶させる。そして、ステップＳ４０５に進む。
【００３４】
ステップＳ４０５においては、制御部２０２は、記憶部２０７に記憶させた重力方向データから、撮像装置１００の撮影方向を算出する。そして、制御部２０２は、算出結果から、撮像装置１００の撮影方向（換言すると、撮像装置１００の本体１０１の姿勢）を示すデータ（以下、「撮影方向データ」と称する）を生成し、生成した撮影方向データを記憶部２０７に記憶させる。そして、ステップＳ４０６に進む。
【００３５】
ステップＳ４０６においては、制御部２０２は、ステップＳ４０５で記憶部２０７に記憶させた撮影方向データから、撮像装置１００の撮影方向が所定の範囲内にあるか範囲外にあるかを判断する。撮像装置１００の撮影方向が所定の範囲外にある場合には、ステップＳ４０７に進む。一方、撮像装置１００の撮影方向が所定の範囲内（重力方向Ｇに対する角度が閾値以内）にある場合には、ステップＳ４１６に進む。
【００３６】
ステップＳ４０７においては、制御部２０２は、記憶部２０７に記憶される撮影方向データと重力方向データに基づいて、第１の画像データの上下方向を決定する。すなわち、重力方向データに含まれる重力方向Ｇを基準として、第１の画像データの上下方向を決定する。例えば、制御部２０２は、重力方向Ｇを第１の画像データの下側とし、その反対側を上側とする。そして、制御部２０２は、決定した第１の画像データの上下方向を示すデータ（以下、「上下方向データ」と称する）」を記憶部２０７に記憶させる。
【００３７】
ステップＳ４０８においては、制御部２０２は、記憶部２０７に記憶した第１の画像データを表示部２０４に表示する。さらに、制御部２０２は、記憶部２０７に記憶させた上下方向データに基づいて、第１の画像データの上下方向を表示部２０４に重ねて表示する。たとえば、制御部２０２は、上下方向を示すアイコンなどを、表示部２０４に第１の画像データに重ねて表示する。これにより、使用者等は、現在の姿勢で撮影を行った場合に、撮影される画像のいずれの方向が上下方向になるかを確認することができる。
【００３８】
ステップＳ４０９においては、制御部２０２は、シャッター釦１０３が操作されたか否かを判断をする。シャッター釦１０３が操作されたと判断した場合には、ステップＳ４１０に進む。そうでない場合には、ステップＳ４１０〜Ｓ４１３を経ずにステップＳ４１５に進む。
【００３９】
ステップＳ４１０では、制御部２０２は、使用者等による撮影指示に応じて（シャッター釦１０３の操作に応じて）、撮影準備処理を実行し、撮影処理を開始する。具体的には、シャッター釦１０３が半押しされて第１のシャッタースイッチがＯＮになると、制御部２０２は、撮影準備処理を実行する。撮影準備処理には、ＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理、ＥＦ（フラッシュプリ発光）処理が含まれる。さらにシャッター釦１０３が全押しされて第２のシャッターボタンがＯＮになると、制御部２０２は、撮影処理を開始する。このステップＳ４１１では、制御部２０２は、撮影処理の一部として、撮像部２０１から画像データを取得する。そして、取得した画像データを記憶部２０７に記憶させる。このステップＳ４１１で取得される画像データは、使用者等による撮影指示に応じて撮影されて生成される画像データであり、「第２の画像データ」の例である。
【００４０】
ステップＳ４１１においては、制御部２０２は、ステップＳ４０７、Ｓ４１８、Ｓ４２０、Ｓ４２２、Ｓ４２４、Ｓ４２６、Ｓ４２７のいずれかで記憶部２０７に記憶させた上下方向データに基づき、取得した第２の画像データの上下方向を決定する。具体的には、第２の画像データの上下方向を、直前に取得された第１の画像データと同じ方向に決定する。そして、制御部２０２は、決定した第１の画像データの上下方向の情報を含む上下方向データを生成し、生成した上下方向データを、記憶部２０７に記憶させる。
【００４１】
ステップＳ４１２においては、制御部２０２は、処理手段の例として機能し、第２の画像データに現像処理などの画像処理、及び、記憶部２０７に記憶された上下方向データに基づく特定の処理を行う。ここでいう特定の処理とは、第２の画像データに対して、回転、切り出し、上下方向データ（上下方向の情報、画像の向きを示す属性情報）の付加、を行う処理の中で、少なくとも一つ以上の処理である。例えば制御部２０２は、第２の画像データを、ステップＳ４１１で決定した上下方向を向くように回転させる。回転処理を行った場合は、回転処理に応じて記憶部２０７に記憶された上下方向データを修正しても良い。例えば、画像の上下方向データが９０度（右回りに９０、すなわち、回転前の画像の右側が上という情報）を示すものであった場合には、このステップで画像を２７０度回転（左周りに９０度回転）し、画像の上下方向データは０度に修正する。これにより、回転後の画像の向きが正しい、という意味となる。なお、このステップでは特に上下方向に基づく特定の処理（回転など）を行わないものとしても良い。
【００４２】
ステップＳ４１３においては、制御部２０２は、記憶部２０７に格納した第２の画像データを、表示部２０４に所定時間（例えば２秒）、表示する（クイックレビュー、レックレビュー表示）。この際、表示部２０４に表示する第２の画像データの向きを、この第２の画像データに対応する上下方向データに含まれる上下方向と一致するように表示する。なおこの処理は省いても良い。
【００４３】
ステップＳ４１４においては、制御部２０２は、一連の撮影処理の残りの一部として、前述の特定の処理を施した第２の画像データを、記録部２０５に記録する。ここで行う残りの特定の処理としては、例えば、記憶部２０７に記憶された上下方向データが示す上下方向の情報を、第２の画像データの画像ファイルに画像の向きを示す属性情報（例えばExifファイルのOrientaion情報）として記録する処理がある。この情報により、ステップＳ４１２で回転処理を施していない場合でも、再生時に回転させて正しい向きで表示させることができる。以上で、一連の撮影処理が完了する。
【００４４】
ステップＳ４１５においては、制御部２０２は、電源釦１０４に対して電源をＯＦＦにする操作があったか否かの判断を行う。制御部２０２は、撮像装置１００の電源がＯＮである場合に電源釦１０４の操作を検出すると、電源をＯＦＦにする操作があったと判断する。電源釦１０４へ電源をＯＦＦにする操作が無かったと判断した場合には、ステップＳ４０３へ戻り、ステップＳ４０３以降の処理を繰り返す。電源釦１０４へ電源をＯＦＦにする操作があったと判断した場合には、ステップＳ４２８へ進む。
【００４５】
ステップＳ４２８では、制御部２０２は図４のフローチャートに示す処理を終了する。たとえば制御部２０２は、所定の終了処理を実行し、撮像装置１００の電源をＯＦＦにする。
【００４６】
このように、電源がＯＮの間は、ステップＳ４１５からＳ４０３に戻る。このため、制御部２０２は、使用者等による撮影指示によらず、第１の画像データの取得と、取得した第１の画像データの上下方向を決定する処理を継続的に実行する。そして、制御部２０２は、使用者等による撮影指示があった場合（シャッター釦１０３の操作を検出した場合）には、撮影準備処理および撮影処理を実行する。この際、制御部２０２は、撮影処理において取得した第２の画像データの上下方向を、その直前に決定して記憶した上下方向に決定する。
【００４７】
また、電源がＯＮになっており、第１の画像データを継続的に取得している間は、ステップＳ４０８が実行されることにより、第１の画像データの上下方向がリアルタイムで継続的に表示部２０４に表示される。前述のとおり、第２の画像データの上下方向は、その直前に取得した第１の画像データの上下方向と同じ方向に決定される。したがって、使用者等は、現在の撮像装置１００の本体１０１の姿勢で撮影した場合の第２の画像データの上下方向を、リアルタイムで把握することができる。
【００４８】
次に、ステップＳ４０６において撮影方向が所定の範囲内にあると判断された場合の処理を説明する。この場合には、ステップＳ４０６からステップＳ４１６に進む。
【００４９】
ステップＳ４１６においては、制御部２０２は、現在設定されている撮影モードが第１の撮影モード群であるか第２の撮影モード群であるかを判断する。現在設定されている撮影モードが第１の撮影モード群である場合には、ステップＳ４１７へ進む。第１の撮影モード群は、第１の画像データの上下方向の決定において、文字認識の認識結果よりも顔検出の検出結果を優先する撮影モードである。現在設定されている撮影モードが第２の撮影モード群である場合には、ステップＳ４２１へ進む。
【００５０】
ステップＳ４１７においては、制御部２０２は、撮像部２０１から出力されて記憶部２０７に記憶させた第１の画像データに対して、顔検出を実行する。顔検出の実行の結果、人間の顔が検出された場合にはステップＳ４１８に進む。人間の顔が検出されなかった場合にはステップＳ４１９に進む。なお、このステップで実行する顔検出のアルゴリズムは特に限定されるものではなく、従来公知の各種顔検出のアルゴリズムが適用できる。したがって、説明は省略する。
【００５１】
ステップＳ４１８においては、制御部２０２は、顔検出の検出結果に基づき、第１の画像データの上下方向を決定する。具体的には、第１の画像データに写っている顔（検出された顔）の上下方向を基準として、第１の画像データの上下方向を決定する。例えば、検出された顔の上側を、この第１の画像データの上側に決定する。そして、制御部２０２は、第１の画像データの上下方向の情報を含む上下方向データを生成し、生成した上下方向データを記憶部２０７に記憶させる。そして、ステップＳ４０８に進む。ステップＳ４０８以降の処理は、前述のとおりである。
【００５２】
ステップＳ４１９においては、制御部２０２は、第１の画像データに対して、文字認識を実行する。文字認識の結果、文字が認識できた場合にはステップＳ４２０に進む。文字認識ができなかった場合には、ステップＳ４２５に進む。なお、このステップで実行する文字認識のアルゴリズムは特に限定されるものではなく、公知の各種文字認識のアルゴリズムが適用できる。したがって説明を省略する。
【００５３】
ステップＳ４２０においては、制御部２０２は、文字認識の認識結果に基づき、認識された文字の上下方向を基準として第１の画像データの上下方向を決定する。例えば、認識された文字の上側を、第１の画像データの上側に決定する。そして、制御部２０２は、第１の画像データの上下方向の情報を含む上下方向データを生成し、生成した上下方向データを記憶部２０７に格納する。そして、ステップＳ４０８に進む。ステップＳ４０８以降は、前述のとおりである。
【００５４】
ステップＳ４１７の顔検出で人間の顔が検出されず、かつ、ステップＳ４１９の文字認識で文字が認識できなかった場合には、ステップＳ４２５へ進む。すなわち、第１の画像データに対する複数の画像認識がいずれもできなかった場合には、ステップＳ４２５に進む。ステップＳ４２５においては、制御部２０２は、記憶部２０７に上下方向データが記憶されているか否かを判断する。記憶されている場合には、ステップＳ４２６に進む。なお、記憶部２０７に記憶される上下方向データは、ステップＳ４０７において記憶部２０７に記憶させた上下方向データである。
【００５５】
ステップＳ４２６においては、制御部２０２は、記憶部２０７に記憶される上下方向データに基づいて、第１の画像データの上下方向を決定する。そして、この上下方向データを、この第１の画像データに対応する上下方向データとして、記憶部２０７に記憶させる。そして、ステップＳ４０８に進む。ステップＳ４０８以降は前述したので割愛する。
【００５６】
記憶部２０７に上下方向データが記憶されていない場合には、ステップＳ４２７へ進む。ステップＳ４２７においては、制御部２０２は、予め設定されている上下方向データを、この第１の画像データに対応する上下方向データとして記憶部２０７に記憶する。予め設定されている上下方向データとしては、最も使用されると考えられる撮像装置１００の姿勢に基づいたデータとする。例えば、第１の姿勢（第１および第２の画像データが横長になる姿勢）で撮影された第１および第２の画像データの上下方向を基準とする。なお、この上下方向データは、「設定方向」としてあらかじめＲＯＭ６０２に格納されている。また、この上下方向は、使用者等によって設定できる構成であってもよい。そして、ステップＳ４０８に進む。ステップＳ４０８以降は前述したので割愛する。
【００５７】
このように、第１の撮影モード群に設定されている場合には、制御部２０２は第１の画像データに対して顔検出を実行し、顔が検出された場合には、検出された顔の方向を基準として第１の画像データの上下方向を決定する。そして、顔検出により顔が検出されなかった場合には、制御部２０２は、文字認識を実行し、認識された文字の方向を基準として第１の画像データの上下方向を決定する。顔検出により顔が検出されず、かつ、文字認識により文字が認識されなかった場合には、制御部２０２は、重力方向検出部２０３により検出される重力方向Ｇを基準として、第１の画像データの上下方向を決定する。さらに、重力方向検出部２０３により検出された重力方向が存在しない場合には、あらかじめ設定された方向を基準に用いる。そして、制御部２０２は、第２の画像データの上下方向を、記憶された第１の画像データの上下方向と同じ方向に決定する。
【００５８】
次に、撮影モードが第２の撮影モード群に設定されている場合について説明する。第２の撮影モード群は、第１の画像データの上下方向を決定に当たり、顔検出の検出結果よりも文字認識の認識結果を優先して用いる撮影モード群である。ステップＳ４１６において、撮影モードが第２の撮影モード群に設定されていると判断された場合には、ステップＳ４２１に進む。
【００５９】
ステップＳ４２１においては、制御部２０２は、記憶部２０７に記憶される第１の画像データに対して文字認識を実行する。文字認識の結果、文字が認識できた場合にはステップＳ４２２に進む。文字が認識できなかった場合には、ステップＳ４２３に進む。
【００６０】
ステップＳ４２２においては、制御部２０２は、文字認識により認識された文字の方向を基準として第１の画像データの上下方向を決定する。すなわち、第１の画像データに写っている文字（認識された文字）の上下方向を、第１の画像データの上下方向に決定する。そして、制御部２０２は、決定した上下方向の情報を含む上下方向データを生成し、生成した上下方向データをこの第１の画像データに対応する上下方向データとして記憶部２０７に記憶させる。そして、ステップＳ４０８に進む。ステップＳ４０８以降は、前述のとおりである。
【００６１】
ステップＳ４２３においては、制御部２０２は、記憶部２０７に記憶される第１の画像データに対して、顔検出を実行する。顔検出の結果、人間の顔が検出された場合には、ステップＳ４２４へ進む。人間の顔が検出されなかった場合には、ステップＳ４２５に進む。
【００６２】
ステップＳ４２４においては、制御部２０２は、第１の画像データに写っている顔の方向（検出された顔の方向）を基準として、第１の画像データの上下方向を決定する。そして、制御部２０２は、決定した上下方向の情報を含む上下方向データを生成し、生成した上下方向データをこの第１の画像データに対応する上下方向データとして記憶部２０７へ記憶させる。そして、ステップＳ４０８に進む。ステップＳ４０８以降は、前述のとおりである。ステップＳ４２３における文字認識で文字が検出されず、かつ、ステップＳ４２３の顔検出で顔が検出されなかった場合には、Ｓ４２５へ進む。ステップＳ４２５以降は前述のとおりである。したがって説明を省略する。
【００６３】
このように、ステップＳ４０６からステップＳ４１６に進み、その後ステップＳ４１１に至った場合には、制御部２０２は、第２の画像データの上下方向を、第１の画像データに対する画像認識の結果に基づいて決定する。この場合には、制御部２０２は、第２の上下方向決定手段の例として機能する。
【００６４】
以上のように、本実施形態によれば、撮影方向が重力方向に平行に近くなった場合には、第１の画像データに写っている被写体（オブジェクト）に応じて第１および第２の画像データの上下方向が決定される。このため、第２の画像データの上下方向が乱雑に変化することを抑制し、使用者等の意図する画像の上下方向での視聴が可能になる。すなわち、特定の処理として第２の画像データを上下方向に応じて回転させる処理が適用される場合には、表示部２０４には、回転させた後の第２の画像データが表示される。また、特定の処理として第２の画像データに上下方向データを付加する処理が適用される場合には、表示部２０４に表示させる際に、第２の画像データを付加された上下方向データに応じて回転させることができる。
【００６５】
なお、上述の説明では、撮影処理において取得される第２の画像データの上下方向を、その直前に取得される第１の画像データの上下方向を基準に用いて決定する構成を示したが、この構成に限定されない。例えば、撮影処理（ステップＳ４１０）において取得した第２の画像データに対して画像認識を実行し、その結果に基づいて当該第２の画像データの上下方向を決定してもよい。図５は、第２の画像データに対して画像認識を行う場合の処理を示すフローチャートである。なお、図４と同じステップには同じ符号を付してある。また、図４と共通するステップについては一部を省略してある。
【００６６】
図５に示すように、ステップＳ４１１に代えて、ステップＳ５０１〜Ｓ５１５が挿入される。これらステップＳ５０１〜Ｓ５１５は、図４のステップＳ４０４〜Ｓ４０６、Ｓ４１６〜Ｓ４２７のそれぞれに対応する。ただし、ステップＳ５０１においては、制御部２０２は、第２の画像データを取得する際（シャッター釦１０３が操作された時点）の重力方向Ｇを検出する。そして、制御部２０２は、ステップＳ５０２において、第２の画像データを取得するの際の撮像装置１００の撮影方向を算出し、ステップＳ５０３において、その際の撮影方向が所定の範囲外であるか範囲内であるかを判断する。また、図４のステップＳ４１６〜Ｓ４２７においては、ステップＳ４０３で取得した第１の画像データに対して画像認識を実行し、その結果に基づいて第２の画像データの上下方向を決定する。これに対し、図５に示すステップＳ５０４〜Ｓ５１５においては、ステップＳ４１０で取得した第２の画像データに対して画像認識を実行し、その結果に基づいて第２の画像データの上下方向を決定する。このため、ステップＳ５０３からＳ５０４以降に進み、その後Ｓ４１２に至った場合には、制御部２０２は、撮影処理で取得した第２の画像データに対して実行した画像認識の結果に基づいて、当該第２の画像データの上下方向を決定することになる。
【００６７】
このように、制御部２０２は、撮影処理を実行する前に取得される第１の画像データの内容に基づいて、撮影処理において取得される第２の画像データの上下方向を決定してもよい。また、制御部２０２は、撮影処理において取得される第２の画像データの内容に基づいて、この第２の画像データの上下方向を決定してもよい。いずれの構成であっても、同様の効果を奏することができる。
【００６８】
また、本実施形態では、画像認識の例として顔検出と文字認識を示したが、画像認識はこれらに限定されるものではない。画像認識としては、このほか、動物、建物、植物等を認識する画像認識であってもよい。そしてこの場合には、第１および第２の画像データの上下方向を決定するために用いる画像認識の優先順位によって、撮影モード群を増やしてもよい。撮影モード群を増やした場合には、例えばステップＳ４１６〜ステップＳ４２０のような、撮影モード群を判断する処理を増やせば良い。このように、撮影モード群における画像認識方法や、撮影モード群の数は限定されない。また、本発明の撮影画像処理は静止画、動画によらず処理が可能であり、撮影形態により限られない。
【００６９】
さらに、撮影方向が所定の範囲内にあると判断され（ステップＳ４０６において「ＮＯ」）、かつ、画像認識によりオブジェクトが認識できない場合（ステップＳ４１７，４１９で「ＮＯ」）には、ステップＳ４２５に進む。このような構成であれば、制御部２０２は、第２の画像データの上下方向を、撮影方向が所定の範囲内に入る直前の上下方向を基準として決定する。これにより、撮影方向が上下方向に平行な向きに近くなった場合には、第２の画像データの上下方向は、撮影方向が所定の範囲内に入る直前の上下方向に固定される。したがって、第２の画像データの上下方向が乱雑に変化することなく、第２の画像データの視聴が可能となる。
【００７０】
ここで、撮像装置１００のハードウェア構成例について、図６を参照して説明する。図６は、撮像装置１００のハードウェア構成例を模式的に示す図である。図６に示すように、撮像装置１００は、ＣＰＵ６０１とＲＯＭ６０２とＲＡＭ６０３とデータ入出力回路６０４とを有するコンピュータ６００を有する。ＲＯＭ６０２は、電気的に消去と記録が可能なメモリであり、例えばＥＥＰＲＯＭなどが適用される。ＲＯＭ６０２には、ＣＰＵ６０１の動作用の定数や変数、ＣＰＵ６０１が実行するコンピュータプログラムなどが格納されている。ここでいうコンピュータプログラムには、前述の処理を含む撮像装置１００を制御するためのコンピュータプログラムが含まれる。ＣＰＵ６０１は、ＲＯＭ６０２からコンピュータプログラムを読み出し、ＲＡＭ６０３に展開して（ＲＡＭ６０３をワークエリアに用いて）実行する。また、この際、ＣＰＵ６０１は、ＲＯＭ６０２に格納される変数や定数を、ＲＡＭ６０３に適宜展開してコンピュータプログラムの実行に用いる。これにより、コンピュータ６００は撮像装置１００を制御する制御部２０２として機能し、前述の処理が実現する。また、ＲＡＭ６０３は、記憶部２０７の例として機能し、撮像部２０１が出力した第１および第２の画像データや、制御部２０２が生成した重力方向データや、上下方向データや、特定の処理を行った第２の画像データを記憶する。
【００７１】
Ａ／Ｄ変換器６１０、表示装置６１２、タッチパネル６１３、インターフェース６１４、電源釦１０４、シャッター釦１０３は、データ入出力回路６０４を介してＣＰＵ６０１、ＲＯＭ６０２、ＲＡＭ６０３に接続される。データ入出力回路６０４は、ＣＰＵ６０１、ＲＯＭ６０２、ＲＡＭ６０３と他の機器との間でのデータの入出力を制御する。第１および第２の画像データを記録する記録媒体６１５は、インターフェース６１４を介してデータ入出力回路６０４に着脱可能に接続される。記録媒体６１５は、記録部２０５の例である。記録媒体６１５には、公知の各種記録媒体が適用できる。インターフェース６１４は、記録媒体６１５を着脱可能であり、コンピュータ６００は、インターフェース６１４に接続された記録媒体６１５とデータの送受信を行う。
【００７２】
なお、図６は撮像装置１００のハードウェア構成の一例であり、本発明の撮像装置１００のハードウェア構成は図６に示す構成に限定されない。例えば、制御部２０２の制御は単一のハードウェアが行ってもよいし、複数のハードウェアが処理を分担することで、装置全体の制御を行ってもよい。また、撮像装置１００を制御するためのコンピュータプログラムがＲＯＭ６０２に格納される構成を示すが、このコンピュータプログラムが格納される記録媒体はＲＯＭ６０２に限定されない。
【００７３】
また、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
【００７４】
また、上述した実施形態においては、本発明をデジタルカメラに適用した場合を例に示して説明したが、これはこの例に限定されず、撮像部２０１と重力方向検知手段を有する機器であれば適用可能である。すなわち、本発明は、撮像部２０１と重力方向検知手段を有する機器であれば、パーソナルコンピュータ、ＰＤＡ、携帯電話端末、携帯型の画像ビューワ、ゲーム機などにも適用可能である。
【００７５】
（他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記録媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１Ａ】
0006497887.tif 000002
【図１Ｂ】
0006497887.tif 000003
【図１Ｃ】
0006497887.tif 000004
【図１Ｄ】
0006497887.tif 000005
【図２】
0006497887.tif 000006
【図３】
0006497887.tif 000007
【図４】
0006497887.tif 000008
【図５】
0006497887.tif 000009
【図６】
0006497887.tif 000010