説明

電子機器およびプログラム

【課題】多様な表示制御を可能にしつつ、リアルタイム性の高い表示を行うこと。
【解決手段】電子機器は、表示部に対する表示制御機能を有するリアルタイムオペレーティングシステムである第1OS、および、表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである第2OSを格納する格納部と、第1OSによる表示制御と第2OSによる表示制御とを切り替える制御部と、を備える。プログラムは、表示部に対する表示制御機能を有するリアルタイムオペレーティングシステムである第1OS、および、表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである第2OSを動作させるステップと、第1OSによる表示制御と第2OSによる表示制御とを切り替える制御部と、コンピュータに実行させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子機器およびプログラムに関する。
【背景技術】
【0002】
オペレーティングシステムの起動後に復帰すべきプログラム位置を設定して、起動時にはそのプログラム位置に速やかに復帰させる情報処理装置が知られている(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特開2007−249418号公報
【発明の概要】
【発明が解決しようとする課題】
【0003】
リアルタイムオペレーティングシステムを用いる場合と比較すると、高機能な汎用オペレーティングシステムを搭載することで、操作形態を多様化することが容易となる。また、無線通信機能やリッチUIの機能を組み込むことが容易となる。しかし、汎用オペレーティングシステム上で固定時間処理を実現することは期待できない。例えばいわゆるライブビュー時の表示制御等、高い応答性能を要する表示制御を汎用オペレーティングシステム上で実現することは容易ではない。また、汎用オペレーティングシステムは、起動するのに比較的に長い時間を要する。このように、多様な表示制御を可能にしつつ、リアルタイム性の高い表示を行うことができないという課題があった。
【課題を解決するための手段】
【0004】
本発明の第1の態様においては、電子機器は、表示部に対する表示制御機能を有するリアルタイムオペレーティングシステムである第1OS、および、表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである第2OSを格納する格納部と、第1OSによる表示制御と第2OSによる表示制御とを切り替える制御部と、を備える。
【0005】
本発明の第2の態様によると、プログラムは、表示部に対する表示制御機能を有するリアルタイムオペレーティングシステムである第1OS、および、表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである第2OSを動作させるステップと、第1OSによる表示制御と第2OSによる表示制御とを切り替える制御部と、コンピュータに実行させる。
【0006】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0007】
【図1】一実施形態に係る撮像装置10の要部断面図である。
【図2】撮像装置10のシステム構成を概略的に示すブロック図である。
【図3】撮像装置10のソフトウェア構成の一例を示す。
【図4】SoC51の機能ブロックの一例を示す。
【図5】表示制御部400の機能ブロックの一例を示す。
【図6】ビデオレイヤおよびOSDレイヤを制御するOSの切り替え例を示す。
【図7】表示部53による表示例を模式的に示す。
【図8】撮像装置10の起動から終了までの処理フローを示す。
【図9】撮像処理における動作フローの一例を示す。
【発明を実施するための形態】
【0008】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0009】
図1は、一実施形態に係る撮像装置10の要部断面図である。撮像装置10は、レンズ交換式カメラの一例としての一眼レフレックスカメラである。撮像装置10は、レンズユニット20およびカメラユニット30を備える。レンズユニット20はカメラユニット30に装着される。カメラユニット30には、焦点距離、開放F値等の異なる複数のレンズユニット20が、交換レンズとして交換可能に装着される。
【0010】
レンズユニット20は、光軸11に沿って配列され鏡筒26に支持されたレンズ群21と、絞り装置28とを備える。撮像レンズの一例としてのレンズ群21は、入射される被写体光束をカメラユニット30へ導く。図においては、レンズ群を構成するレンズとして前玉22および後玉23の他に、フォーカスレンズ24、ズームレンズ25等が含まれる。フォーカスレンズ24、ズームレンズ25は、それぞれ焦点調整、画角調整の指示に応じて光軸方向に移動できるように構成されている。
【0011】
鏡筒26は、レンズ回路基板27を支持しており、レンズ回路基板27は、レンズユニット20を制御する各種回路の電子素子等を搭載している。レンズユニット20は、カメラユニット30との接続部にレンズマウント29を備え、カメラユニット30が備えるカメラマウント31と係合して、カメラユニット30と一体化する。レンズマウント29とカメラマウント31はそれぞれ通信端子を備えており、マウント同士が係合したときに互いの通信端子が接続される。これにより、レンズ回路基板27に搭載された各種回路、電子素子等は、カメラユニット30側と電気的に接続される。カメラユニット30は、カメラユニット30およびレンズユニット20の通信端子を介して、レンズユニット20の固有情報のデータを、レンズユニット20から取得する。
【0012】
カメラユニット30は、レンズユニット20から入射される被写体光束を反射するメインミラー32と、メインミラー32で反射された被写体光束が結像するピント板33を備える。メインミラー32は、ミラーボックス35の内部でメインミラー回転軸34周りに揺動して、光軸11を中心とする被写体光束中に斜設される反射状態と、被写体光束から退避する退避状態を取り得る。サブミラー40は、メインミラー32が被写体光束から退避する場合は、メインミラー32に連動して被写体光束から退避する。メインミラー回転軸34は、ミラーボックス35の側壁に支持される。
【0013】
操作入力部の一部としてのライブビューボタンが押し下げられた場合、または、操作入力部の一部としてのレリーズボタンが最下部まで押し下げられた場合、図の破線で示した退避状態を取る。例えば、メインミラー32は、被写体光束中に斜設された状態で、ライブビューボタンが押し下げられた場合またはレリーズボタンが最下部まで押し下げられた場合、破線で示した退避位置に移動する。ライブビューボタンが押し下げられた場合、メインミラー32は、再度ライブビューボタンが押し下げられるまで退避位置に留まる。一方、レリーズボタンが押し下げられた場合は、所定の撮像動作を終えると、メインミラー32はダウンされ元の斜設状態の位置に戻される。
【0014】
シャッタの一例としてのフォーカルプレーンシャッタ43および撮像素子36は、光軸11に沿って配列されている。したがって被写体光束は、レンズ群21を透過してカメラユニットへ入射し、メインミラー32およびサブミラー40が退避状態となったミラーボックス35の内部と開放状態のフォーカルプレーンシャッタ43を通過して、撮像素子36の受光面で結像する。フォーカルプレーンシャッタ43および撮像素子36は、撮像部の一部を構成する。
【0015】
撮像素子36は、受光面で結像した被写体像を電気信号として出力する複数の光電変換素子を有する。撮像素子36としては、CMOSセンサ、CCDセンサ等を例示することができる。撮像素子36は、サブ基板44上に設けられ、メイン基板50と電気的に接続されている。メイン基板50には、撮像装置10全体を制御するSoC51、電源等を制御するMPU52等の電気素子が搭載されている。MPU52は、レリーズボタン、ライブビューボタン等を含むユーザ操作入力部で生成されるユーザ操作を示す信号を処理してよい。MPU52は、SoC51よりも単位時間当たりの電力消費量が小さいプロセッサであることが望ましい。
【0016】
SoC51は、被写体像の電気信号から画像データを生成する。また、SoC51は、画像データから、1以上の画像領域、例えば予め定められた複数の焦点調整領域毎にコントラスト量を算出する。フォーカスレンズ24の位置は、SoC51等の制御によって、コントラスト量に基づき決定された目標位置に向けて制御される。
【0017】
カメラユニット30の背面には、電子ビューファインダーとして機能する表示部53が配設されている。表示部53は、カラー表示可能な液晶モニタ等であってよい。表示部53は、一の表示領域を持つ。表示部53は、SoC51が被写体像の電気信号から生成した表示用の画像データを用いて、一の表示領域に被写体像を表示する。表示部53は、撮像後の画像に限らず、各種メニュー情報、撮像情報、告知情報等を一の表示領域に表示する。ライブビューボタンが押し下げられてライブビュー動作を行っている場合、SoC51は、上述の焦点調節をしながら、撮像素子36から順次に出力される被写体像の電気信号から表示用の画像データを順次に生成する。表示部53は、生成された表示用の画像データを用いて、被写体像を順次に表示する。
【0018】
撮像装置10は、光学ファインダを有する。具体的には、ピント板33は、撮像素子36の受光面と共役の位置に配置されている。ピント板33で結像した被写体像は、ペンタプリズム37で正立像に変換され、接眼光学系38を介してユーザに観察される。また、ペンタプリズム37の射出面上方にはAEセンサ39が配置されており、被写体像の輝度分布を検出する。SoC51は、AEセンサ39で検出された輝度分布に基づいて、適正露出値を算出する。
【0019】
斜設状態におけるメインミラー32の光軸11の近傍領域は、ハーフミラーとして形成されており、入射される被写体光束の一部が透過する。透過した被写体光束は、メインミラー32と連動して揺動するサブミラー40で反射されて、合焦光学系41へ導かれる。合焦光学系41を通過した被写体光束は、合焦センサ42へ入射される。合焦センサ42は、受光した被写体光束から位相差信号を出力する複数の光電変換素子列を有する。合焦センサ42は、被写体像の特定の領域に対応して設けられる複数の焦点調整領域のそれぞれにおいて、合焦状態、前ピン状態、後ピン状態を検出でき、前ピン状態、後ピン状態の場合には、合焦状態からのずれ量も検出することができるように構成されている。SoC51は、位相差検出信号を相関演算することでレンズ群21の焦点状態を検出する。SoC51は、焦点状態に基づきフォーカスレンズ24の目標位置を決定し、決定した目標位置に向けてフォーカスレンズ24を制御する。すなわち、メインミラー32がダウンし斜設状態にある場合、合焦センサ42からの出力を用いて、位相差検出方式で焦点状態を検出して焦点調節することができる。
【0020】
また、カメラユニット30には電源部54が設けられる。電源部54は、カメラユニット30に限らず、レンズユニット20にも電力を供給する。電源部54は、着脱可能な二次電池を含むことができる。電源部54は、二次電池に限らず非充電式の電池を含んでよい。また、電源部54は、商用電源等の外部電源から電力を受け取って、撮像装置10の各部に電力を供給してよい。
【0021】
図2は、撮像装置10のシステム構成を概略的に示すブロック図である。撮像装置10のシステムは、レンズユニット20とカメラユニット30のそれぞれに対応して、駆動ドライバ73を含むレンズ制御系と、SoC51を中心とするカメラ制御系により構成される。そして、レンズ制御系とカメラ制御系は、レンズマウント29とカメラマウント31によって接続される通信端子を介して、相互に各種データ、制御信号の授受を行う。
【0022】
SoC51は、複数のプロセッサコアを有するマルチコアプロセッサである。本実施形態の説明において、プロセッサコアを単にコアと略称する。本実施形態において、SoC51は、第1コア221および第2コア222を有する。SoC51は、同種のプロセッサコアを持つホモジニアスマルチコアであってよい。SoC51は、異種のプロセッサコアを持つヘテロジニアスマルチコアであってもよい。
【0023】
SoC51は、リアルタイムオペレーティングシステム(RTOS)と、非リアルタイムオペレーティングシステムである汎用オペレーティングシステム(汎用OS)とを動作させる。RTOSは、表示部53に対する表示制御機能を有する第1OSの一例であり、汎用OSは、同じ表示部53に対する表示制御機能を有する第2OSの一例である。なお、カーネル、ライブラリ、撮像装置10の制御用のプログラム等を含むソフトウェアコンポーネントを、オペレーティングシステム(OS)と総称する。本実施形態では、第1コア221がRTOSを動作させ、第2コア222が汎用OSを動作させる。
【0024】
RTOSは、要求された処理を予め定められた時間内に終えることを保証する。RTOSは、ハードウェア割込みが生じてから、対応する処理ルーチンが呼び出されるまでの最悪値が保証されているオペレーティングシステムである。一方、汎用OSは、要求された処理を予め定められた時間内に終えることを必ずしも保証していない。汎用OSは、ハードウェア割込みが生じてから、対応する処理ルーチンが呼び出されるまでの最悪値が必ずしも保証されていない。しかし、汎用OSは、例えばグラフィカル・ユーザ・インタフェース(GUI)等のユーザインタフェース用のライブラリ、TCP/IPスタック等の通信用のライブラリ等を標準で備える。このため、リアルタイムOSと比較すると、汎用OSの方が、ユーザインタフェース用や通信用のソフトウェアコンポーネントを実装し実行するための環境が整備されている。したがって、対話型のユーザインタフェース機能やネットワーク通信機能を汎用OS上に容易に実装することができる。
【0025】
RTOSは、主として撮像装置10における固定時間処理を担う。例えば、第1コア221は、RTOSを実行することにより、レンズユニット20、メインミラー32、フォーカルプレーンシャッタ43、撮像素子36、アナログ処理部70、AD変換部71、タイミングジェネレータ72、AEセンサ39、合焦センサ42、メインミラー32、駆動ドライバ73等の制御等、比較的にリアルタイム性が要求される処理を制御する。例えば、第1コア221は、アナログ部48の各部および撮像素子36の動作タイミングを示す駆動信号を供給するタイミングジェネレータ72を駆動することにより、撮像素子36、アナログ処理部70、AD変換部71の動作タイミングを制御する。また、第1コア221は、RTOSを実行することにより、AD変換部71から出力された画像データに対する画像処理を制御する。また、第1コア221は、表示部53による簡易的な表示を制御する。第1コア221は、記録媒体IF56を通じてメモリカード100への記録を制御する。
【0026】
汎用OSは、撮像装置10における通信機能、ユーザインタフェース機能を主として担う。汎用OSとしては、Linux(登録商標)等のUnix(登録商標)系のオペレーティングシステム、Android(登録商標)、Windows(登録商標)等を例示することができる。第2コア222は、外部接続IF55を通じて外部機器110との間の通信を制御する。外部接続IF55としては、ネットワークインタフェースを例示することができる。ネットワークインタフェースは、有線通信インタフェースであってよく無線通信インタフェースであってもよい。また、第2コア222は、表示部53を通じたリッチなユーザインタフェース(UI)を制御する。また、第2コア222は、記録媒体IF56を通じてメモリカード100への記録を制御する。
【0027】
システムメモリ57は、例えばフラッシュメモリ等の不揮発性メモリである。システムメモリ57は、RTOSおよび汎用OS等、SoC51で実行されるソフトウェアコンポーネントを格納する。システムメモリ57は、表示部53に対する表示制御機能を有するリアルタイムオペレーティングシステムであるRTOS、および、表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである汎用OSを格納する格納部の一例である。システムメモリ57はまた、撮像装置10を制御するための各種パラメータなどを格納する役割を担う。システムメモリ57に格納された各種パラメータは、起動時に第1コア221、第2コア222においてロードされて使用される。
【0028】
第1コア221は、起動時に、システムメモリ57からRTOSのカーネル等をSDRAM58にロードして、SDRAM58から命令を読み出して実行する。また、第2コア222は、起動時に、システムメモリ57からSDRAM58に汎用OSのカーネル等をロードして、SDRAM58から命令を読み出して実行する。なお、システムメモリ57には各OSの実行時のメモリイメージが格納されてよく、各コアはメモリイメージをSDRAM58に展開して各オペレーティングシステムの動作を開始してよい。
【0029】
SDRAM58は、RTOSが専用するRTOS用メモリ領域81、複数のOSが共有して使用するメモリ領域である共有メモリ領域80、および、汎用OSが専用する汎用OS用メモリ領域82を持つ。共有メモリ領域80は、第1コア221と第2コア222とにより共有される。RTOSおよび汎用OSは、OS間通信機能を有する。OS間通信は、例えば共有メモリ領域、コア間割り込みにより実装される。SDRAM58は、撮像装置10の動作に必要なデータを一時的に記憶するワークメモリとして機能する。例えば、SDRAM58は、撮像素子36で撮像することにより得られた画像データを一時的に記憶する役割を担う。SDRAM58は、第1コア221、第2コア222の少なくとも一方により処理される画像データを一時的に記憶する。
【0030】
ユーザ操作を受け付ける操作入力部の一例としての操作入力部61およびタッチ入力部62は、ユーザ操作に対応する信号をMPU52へ出力する。操作入力部61は、操作入力部61は、ボタン、スイッチ、ダイヤル、種々のキーとして実装された機械式の入力部材を含む。例えば、操作入力部61は、ユーザ操作による入力部材の変位または位置等の状態を検出して、当該状態を示す信号を出力する。具体的には、操作入力部61は、電気接点がON状態であるかOFF状態であるかを示す信号、可変抵抗器の抵抗値を示す信号等を出力する。操作入力部61としては、電源ボタン、レリーズボタン、ライブビューボタン、動画ボタン、再生ボタン、動作モードダイヤル等を例示することができる。第1コア221は、MPU52を介して、操作入力部61へのユーザ操作を取得する。第1コア221は、取得した信号に対応するユーザ操作に基づき、撮像装置10の各部を制御する。なお、制御内容、撮像装置10の動作モード等によっては、第1コア221は、ユーザ操作に基づく制御を第2コア222に実行させてよい。
【0031】
タッチ入力部62は、ユーザの指、ペン等によるタッチ操作を受け付けて、タッチ操作を示す信号を、SoC51に出力する。タッチ操作とは、操作面上を移動する操作を含む。タッチ入力部62は、タッチパネルの一部として機能する。具体的には、タッチ入力部62は、表示部53の表示面に平行に実装された検出部材を含む。検出部材としては、抵抗膜方式、静電容量方式、光センサ方式など、種々の方式の検出部材を例示することができる。タッチ入力部62は、ユーザ、ペン等によるタッチ位置を示す信号を、SoC51に出力する。タッチ位置の信号は、表示部53の表示面内における2次元の位置情報を示す。
【0032】
第2コア222は、タッチ入力部62から出力された信号を取得して、取得した信号に基づきユーザ操作を識別して、撮像装置10の各部を制御する。具体的には、第2コア222は、表示部53への表示内容と、タッチ入力部62から出力された信号とに基づき、撮像装置10の各部を制御する。例えば、第2コア222は、タッチ位置に表示した表示内容に対応する制御を行う。したがって、汎用OSの制御によれば、いわゆるタッチパネル機能を用いた比較的にリッチなユーザインタフェースを提供することができる。また、第2コア222は、操作入力部61を通じたユーザ操作によるユーザインタフェースも提供する。
【0033】
撮像装置10における撮像動作は、第1コア221によって制御される。具体的には、第1コア221は、レリーズボタンの押し下げを検出すると、メインミラー32を斜設状態として、フォーカルプレーンシャッタ43を制御して撮像素子36で露光させる。また、第1コア221は、撮像素子36が有する光電変換素子の読み出しを制御する。撮像素子36が出力したアナログの被写体像の電気信号は、アナログ処理部70で前処理されて、AD変換部71でデジタルの電気信号に変換される。アナログ処理部70は、アナログフロントエンドとして機能するアナログ処理回路を含む。AD変換部71から出力されたデジタルの電気信号はSoC51に供給される。このように、第1コア221は、フォーカルプレーンシャッタ43および撮像素子36の駆動を制御する。そして、第1コア221は、被写体を撮像させ、被写体像を画像データとして取り込む処理を行う。
【0034】
また、第1コア221は、合焦センサ42からの位相差検出信号に基づいて焦点状態を検出する。すなわち、第1コア221は、位相差検出方式による焦点調節を行う。また、第1コア221は、合焦制御用に取り込まれた画像データを処理して、コントラスト量を示すコントラスト評価値を生成する。第1コア221は、コントラスト検出方式による焦点調節を行う。第1コア221は、コントラスト評価値および位相差データの少なくとも一方に基づき焦点調節用の制御信号を生成して、駆動ドライバ73に供給する。駆動ドライバ73は、第1コア221からの制御信号を受けて各種動作を制御する。例えば、駆動ドライバ73は、制御信号に従って、フォーカスレンズ24、ズームレンズ25、絞り装置28等を駆動する。
【0035】
第1コア221は、AD変換部71から供給された画像データに対する画像処理を制御する。第1コア221は、SoC51に組み込まれたデジタル処理回路に画像処理の少なくとも一部を実行させてよく、第1コア221自身が画像処理を行ってもよい。本画像処理としては、例えば、シェーディング補正、ホワイトバランス補正、ガンマ補正、色補間処理、輪郭強調処理、YC変換等の色変換処理、間引き処理等を例示することができる。また、画像処理として、多重露光処理、ダイナミックレンジを拡大する処理、赤目補正処理、ぼかし処理、美肌処理、デコレーション処理等、種々の加工処理を含む。また、第1コア221は、画像処理が施された画像データの符号化に関する処理を制御する。符号化に関する処理としては、画像データを予め定められたフォーマットの画像データに変換する符号化処理、予め定められたフォーマットの画像データに対する復号処理を含む。例えば、符号化処理としては、JPEG、MPEG、H.264等のデジタル圧縮処理の規格に準拠した符号化処理を例示することができる。同様に、復号処理としては、デジタル圧縮処理の規格に準拠した符号化に対応する復号処理を例示することができる。これらの画像処理により、メモリカード100等への記録用の画像データ、表示部53への表示用の画像データが生成される。また、ネットワークを通じたストリーミング出力用の画像データが生成される。
【0036】
記録用の画像データは、記録媒体IF56を介してメモリカード100に書き込まれる。メモリカード100への書き込みは、第2コア222よって制御される。また、第2コア222は、汎用OSを実行することにより、外部機器110との間でデータ通信を担う外部接続IF55を制御する。すなわち、第2コア222は、外部接続IF55を介するデータ通信を制御する。外部機器110としては、パーソナルコンピュータ等のコンピュータ、他の撮像装置、モニタ、テレビジョン装置、プリンタ等を例示することができる。
【0037】
MPU52は、電源部54から、カメラユニット30、レンズユニット20の各部への電力供給を制御する。MPU52は、電源部54から電力を供給することができる電力量を示す信号をSoC51に出力する。例えば、MPU52は、電池残量を示す信号をSoC51に出力する。具体的には、第1コア221は、MPU52から出力された信号を取得して、取得した信号に基づいて撮像装置10の各部を制御する。また、第2コア222は、MPU52から出力された信号に基づく電池残量を表示部53に表示する。第2コア222は、MPU52から当該信号を取得してよく、第2コア222は第1コア221からコア間通信等により電池残量を示す情報を取得してもよい。
【0038】
図3は、撮像装置10のソフトウェア構成の一例を示す。撮像装置10用のソフトウェア300は、RTOS310および汎用OS320を含む。
【0039】
RTOS310は、撮像制御用コンポーネント311、画像データの取り込み制御用コンポーネント312、画像処理用コンポーネント314、符号化処理用コンポーネント、復号処理用コンポーネント315、コア間通信用コンポーネント316を有する。
【0040】
撮像制御用コンポーネント311は、操作入力部61に対する撮像指示を受け付け、撮像素子36における電荷蓄積を制御するためのプログラム、駆動ドライバ73、撮像素子36の露光等を制御するためのプログラム等、撮像素子36における撮像を制御する機能を担うソフトウェアコンポーネントを含む。また、撮像制御用コンポーネント311は、撮像装置10に内蔵された閃光装置を駆動するためのプログラム等、閃光制御用のソフトウェアコンポーネントを含む。撮像制御用コンポーネント311は、メインミラー32、フォーカルプレーンシャッタ43等のメカ機構を駆動するためのプログラムを等、撮像装置10が有するメカ機構の制御を担うソフトウェアコンポーネントを含む。取り込み制御用コンポーネント312は、撮像素子36の蓄積電荷の転送、アナログ処理部70、AD変換部71等の動作タイミングを制御するためのプログラム等、画像データとして取り込む処理を担うソフトウェアコンポーネントを含む。
【0041】
画像処理コンポーネント313は、取り込まれた画像データに対する画像処理を制御するソフトウェアコンポーネントである。画像処理コンポーネント313により制御される画像処理としては、上述したシェーディング補正、ホワイトバランス補正、ガンマ補正、色補間処理、輪郭強調処理、色変換処理、間引き処理等を例示することができる。また、画像処理コンポーネント313は、画像データを修整するためのプログラム、ライブラリ等を含む。画像データの修整処理としては、上述した多重露光処理、ダイナミックレンジを拡大する処理、赤目補正処理、ぼかし処理、美肌処理、デコレーション処理等、種々の加工処理を含む。また、画像処理コンポーネント313は、撮像素子36が順次に撮像することにより画像データを処理して表示部53に順次に表示させる。また、画像処理コンポーネント313は、撮像素子36が順次に撮像することにより順次に取得された画像データを解析して焦点調節させ、焦点調節の結果を示す情報を表示部53に表示させる。また、画像処理コンポーネント313は、撮像素子36が順次に撮像することにより順次に取得された画像データを解析して予め定められたオブジェクトを検出して、検出したオブジェクトを示す情報を表示部53に表示させる。予め定められたオブジェクトとしては、人物の顔等、予め定められた種類の被写体のオブジェクトを例示することができる。
【0042】
符号化処理コンポーネント314は、上述した符号化処理の制御を担うソフトウェアコンポーネントである。復号処理コンポーネント315は、メモリカード100等に記録された符号化された画像データを復号する復号処理を制御する機能を担うソフトウェアコンポーネントである。コア間通信用コンポーネント316は、汎用OSとの間のOS間通信を担うソフトウェアコンポーネントである。コア間通信用コンポーネント316は、汎用OSに情報を送信するプログラム、汎用OSから情報を受信するプログラムを含む。
【0043】
汎用OS320は、グラフィカルユーザインタフェース(GUI)用コンポーネント321、ネットワーク通信用コンポーネント322、アプリケーションコンポーネント323、ファイルシステム用コンポーネント324、メディアアクセス用コンポーネント325およびコア間通信用コンポーネント326を含む。
【0044】
GUI用コンポーネント326は、表示部53を介した比較的に複雑なGUIを提供するソフトウェアコンポーネントである。GUI用コンポーネント326は、撮像装置10の動作を設定する設定メニューを表示部53に表示させるプログラム、表示画像上に種々の情報を表示部53に表示させるプログラム、タッチ入力部62に対するユーザ操作を認識するプログラム、GUI用のライブラリ等を含む。ユーザ操作としては、撮像指示を示すタッチ操作を例示することができる。GUI用コンポーネント326は、ユーザインタフェース用のオブジェクトを表示部53に表示するための機能を有する。すなわち、汎用OSはユーザインタフェース用のオブジェクトを表示部53に表示させる機能を有する。
【0045】
ネットワーク通信用コンポーネント322は、外部機器110との間のネットワーク通信を担うソフトウェアコンポーネントである。ネットワーク通信用コンポーネント322は、TCP/IP等の通信プロトコルスタック等を含む。
【0046】
アプリケーションコンポーネント323は、アプリケーションソフトウェアとして汎用OSに組み込まれる。アプリケーションコンポーネント323としては、再生用のアプリケーションプログラム、画像処理を支援するためのアプリケーションソフトウェア、汎用OSを更新するためのアプリケーションソフトウェア、撮像装置10のガイド機能を提供するプログラム等を例示することができる。
【0047】
ファイルシステム用コンポーネント324は、記録メディアのフォーマット機能、記録デバイスへの実際の書き込み制御等、ファイルとしてのデータ入出力機能を提供するソフトウェアコンポーネントである。メディアアクセス用コンポーネント325は、メモリカード100、外部接続IF55を通じて接続された外部記録装置に画像データ等をファイルとして書き込む処理を制御するためのプログラム等を含むソフトウェアコンポーネントである。
【0048】
コア間通信用コンポーネント326は、RTOSとの間のOS間通信を担うソフトウェアコンポーネントである。コア間通信用コンポーネント326は、RTOSに情報を送信するプログラム、RTOSから情報を受信するプログラム等を含む。RTOSに送信する情報としては、後述するタッチパネルにより受け付けたユーザ指示の内容を示す情報等を例示することができる。
【0049】
本図に関連して説明したように、RTOSは、撮像素子36の駆動を制御する機能を含む。また、RTOSは、撮像部に対する撮像指示を操作入力部61で受け付ける機能を含む。汎用OSは、撮像指示をタッチ操作で受け付ける機能を含む。また、汎用OSは、ユーザインタフェース用のオブジェクトを表示部53に表示させる機能を含む。
【0050】
図4は、SoC51の機能ブロックの一例を示す。SoC51は、表示制御部400、前処理部410、画像処理部420、符号化部430、復号部440、GUI制御部450、メディア制御部460および外部通信制御部470を有する。前処理部410、画像処理部420、符号化部430および復号部440の機能は、第1コア221がRTOSを実行することにより実現される。GUI制御部450、メディア制御部460および外部通信制御部470の機能は、第2コア222が汎用OSを実行することにより実現される。
【0051】
前処理部410は、取り込まれた画像データに前処理を施す。前処理部410の機能は、画像処理コンポーネント313に含まれるシェーディング補正、ホワイトバランス補正、ガンマ補正、色補間処理、輪郭強調処理等を制御するソフトウェアコンポーネントによって実現される。画像処理部420は、前処理された画像データに画像処理を施して、表示部53への表示用の画像データを生成する。また、画像処理部420は、取り込まれた画像データに基づいて焦点調節を行わせ、焦点調節の結果を示す表示用のデータを生成する。焦点調節の結果を示す表示用のデータとしては、焦点調節位置を示すAFポイントを示すデータを例示することができる。また、画像処理部420は、撮像素子36が順次に撮像することにより順次に取得された画像データを解析して人物の顔等のオブジェクトを検出して、検出したオブジェクトの位置を示す表示用のデータを生成する。検出したオブジェクトの位置を示す表示用のデータとしては、顔検出枠のデータを例示することができる。
【0052】
また、画像処理部420は、ユーザによって設定された記録条件に従って間引き処理、赤目補正等の画像処理を施して、記録用の画像データを生成する。画像処理部420の機能は、画像処理コンポーネント313に含まれる色変換処理、間引き処理、画像修整処理を制御するソフトウェアコンポーネントによって実現される。画像処理部420によって生成された表示用の画像データや表示用のデータは表示制御部400に供給される。画像処理部420によって生成された記録用の画像データは符号化部430に供給される。
【0053】
符号化部430は、画像処理部420によって生成された画像データに符号化処理を施す。符号化部430の機能は、符号化処理コンポーネント314によって実現される。符号化部430により符号化された画像データは、共有メモリ領域80に記憶される。共有メモリ領域80への記憶が完了すると、第1コア221は、コア間通信用コンポーネント316によって、記録用の画像データが生成された旨を第2コア222に通知する。
【0054】
第2コア222において、記録用の画像データが生成された旨が第1コア221から通知されると、メディア制御部460は、記録媒体IF56を制御して、共有メモリ領域80に記憶された画像データを画像メモリカード100に転送する。メディア制御部460の機能は、メディアアクセス用コンポーネント325によって実現される。また、記録用の画像データが生成された旨が第1コア221から通知されると、外部通信制御部470は、外部接続IF55を制御して、共有メモリ領域80に記憶された画像データを外部機器に転送する。外部通信制御部470の機能のうちネットワーク通信により外部機器に転送する機能は、ネットワーク通信用コンポーネント322によって実現される。
【0055】
また、GUI制御部450は、操作入力部61およびタッチ入力部62に対するユーザ操作に応じてGUIオブジェクトのデータを生成して、表示制御部400に供給する。また、GUI制御部450は、操作入力部61およびタッチ入力部62に対するユーザ操作に応じて撮像装置10の各部を制御する。
【0056】
なお、メディア制御部460は、メモリカード100から再生用の画像データを読み出して、共有メモリ領域80に記憶する。共有メモリ領域80への記憶が完了すると、第2コア222は、コア間通信用コンポーネント326によって、再生用の画像データが記憶された旨を第1コア221に通知する。また、外部通信制御部470は、外部機器から受信した再生用の画像データを、共有メモリ領域80に記憶する。共有メモリ領域80への記憶が完了すると、第2コア222は、コア間通信用コンポーネント326によって、再生用の画像データが記憶された旨を第1コア221に通知する。
【0057】
第1コア221において、再生用の画像データが記憶された旨が第2コア222から通知されると、復号部440は、共有メモリ領域80に記憶された画像データを復号して、画像処理部420に供給する。復号部440の機能は、復号処理コンポーネント315によって実現される。画像処理部420は、復号部440から供給された画像データを表示用の画像データに変換して、表示制御部400に供給する。このように、画像処理部420は、撮像素子36が撮像することにより取得された画像データを処理して表示部53に表示させる機能を有する。
【0058】
表示制御部400は、画像処理部420から供給された画像データに従って表示部53を駆動して、画像データによって示される画像を表示部53に表示する。また、表示制御部400は、GUI制御部450から供給されたGUIオブジェクトのデータに従って表示部53を駆動して、GUIオブジェクトのデータによって示される画像オブジェクトを表示部53に表示する。
【0059】
図5は、表示制御部400の機能ブロックの一例を示す。表示制御部400は、ビデオレイヤ500、OSDレイヤ510および合成部520を有する。ビデオレイヤ500は、主画像レイヤの一例であり、OSDレイヤ510は副画像レイヤの一例である。一例として、ビデオレイヤ500は、ビデオレイヤの画像データを受け付けるメモリにより実装される。一例として、OSDレイヤ510は、ビデオレイヤに重畳される画像の画像データを受け付けるメモリにより実現される。ビデオレイヤ500およびOSDレイヤ510は、一のメモリにより実現されてよい。ビデオレイヤ500は一のレイヤであり、OSDレイヤ510は複数のレイヤを有してよい。
【0060】
合成部520は、ビデオレイヤ500により受け付けた主画像データの画像と、OSDレイヤ510により受け付けた1以上の副画像データの画像とが合成された画像を表す画像信号を生成して、表示部53に供給する。例えば、合成部520は、主画像データおよび1以上の副画像データを用いて、主画像データの画像に1以上の副画像データの画像が重畳された画像を表す画像信号を生成して、表示部53に供給する。
【0061】
画像処理部420は、表示用の画像データをビデオレイヤ500に書き込む。この場合、GUI制御部450は、OSDレイヤ510にGUIオブジェクトを書き込む。例えば、撮像装置10がライブビュー動作をしている場合に、画像処理部420は、連続して撮像素子36が撮像することにより得られた表示用の画像データを順次にビデオレイヤ500に書き込む。この場合、GUI制御部450は、シャッタ、フォーカス、ズーム、露出等の各種設定や撮像用操作に関するGUIオブジェクトの画像データをOSDレイヤ510に書き込む。これにより、リアルタイムなライブビュー表示とともにリッチな操作設定用のGUIオブジェクトを表示部53同時に表示させることができる。
【0062】
また、撮像装置10が画像データを再生する動作をしている場合に、画像処理部420は、復号部440により復号された画像データから生成した表示用の画像データを、ビデオレイヤ500に書き込む。例えば、画像処理部420は、復号部440により復号された動画の画像データから生成した表示用の画像データをビデオレイヤ500に一定の表示レートで書き込む。この場合、GUI制御部450は、他の画像データを選択するためのオブジェクト、現在選択されている画像データの削除するためのオブジェクト、現在選択されている画像データを外部機器への転送するためのオブジェクト等、再生用操作に関するGUIオブジェクトの画像データをOSDレイヤ510に書き込む。これにより、例えばリアルタイムな動画表示とともにリッチな再生設定用のGUIオブジェクトを表示部53に同時に表示させることができる。
【0063】
このように、表示制御部400は、RTOSにより生成された第1画像データおよび汎用OSにより生成された第2画像データを用いて、第1画像データの画像に第2画像データの画像を重畳して表示部に表示させる。具体的には、表示制御部400は、ビデオレイヤの画像データおよびOSDレイヤの画像データを用いて表示部53にオンスクリーン表示をさせる。これにより、表示制御部400は、表示用の画像データによって示される画像に重ねて、画像オブジェクトを重畳して表示することができる。ビデオレイヤ500に対する表示制御は、ビデオレイヤ500の画像データを生成するOSを切り替えることによって切り替えることができる。具体的には、ビデオレイヤ500に書き込むOSを切り替えることにより、ビデオレイヤ500に対する表示制御を切り替えることができる。同様に、OSDレイヤ510の画像データを生成するOSを切り替えることによって、OSDレイヤ510に対する表示制御を切り替えることができる。具体的には、OSDレイヤ510に書き込むOSを切り替えることにより、OSDレイヤ510に対する表示制御を切り替えることができる。
【0064】
図6は、ビデオレイヤ500およびOSDレイヤ510を制御するOSの切り替え例をテーブル形式で示す。本図では、ビデオレイヤ500ならびにOSDレイヤ510が有する第1OSDレイヤおよび第2OSDレイヤを制御するOSを、撮像装置10の状態および動作モードに対応づけて示す。
【0065】
汎用OSが未起動状態にある場合、RTOSが起動状態にあることを条件として、全レイヤをRTOSが制御する。具体的には、RTOSは、ビデオレイヤ500、第1OSDレイヤおよび第2OSDレイヤを制御する。このため、汎用OSが立ち上がっていない場合でも、RTOSにより簡易な表示を行うことができる。このように、撮像装置10を起動した場合に、汎用OSが立ち上がるまでの間、RTOSに表示部53への表示を制御させ、汎用OSが立ち上がった場合に、汎用OSによる表示制御に切り替える。
【0066】
撮像装置10の動作モードが撮像モードにある場合、ビデオレイヤおよび第1OSDレイヤをRTOSが制御する。撮像装置10がライブビュー動作をしている場合、RTOSは、順次に生成された表示用の画像データをビデオレイヤに書き込む。また、RTOSは、順次に生成された表示用の画像データをビデオレイヤに書き込む。また、RTOSは、決定したAFのポイント、顔認識結果を示す枠等のオブジェクトを第1OSDレイヤに書き込む。また、汎用OSは、第2OSDレイヤに撮像操作用のGUIオブジェクトを書き込む。このため、撮像により得られた画像や、AFポイント、顔認識枠等のオブジェクトを表示部53にリアルタイムに表示しつつ、リッチなGUIを表示部53に表示させることができる。このように、表示部53に対する表示制御は、撮像素子36に撮像させる指示を受け付けた場合に、RTOSによる表示制御に切り替えられる。
【0067】
また、撮像装置10の動作モードが設定モードまたは通信モードにある場合、全レイヤを汎用OSが制御する。具体的には、汎用OSは、ビデオレイヤ500、第1OSDレイヤおよび第2OSDレイヤを制御する。このため、設定モードや通信モード等のように、リアルタイム性を必要としない動作時は、汎用OSで表示を制御する。このため、設定内容や通信状況等を分かり易くユーザに提示することができる。このように、汎用OSは、外部機器との通信を制御する機能を有しており、外部機器110と通信を行う場合に、汎用OSによる表示制御に切り替えられる。
【0068】
また、撮像装置10の動作モードが再生モードにある場合、ビデオレイヤをRTOSが制御し、汎用OSが第1OSDレイヤおよび第2OSDレイヤを制御する。このため、画像データを即時に表示しつつ、リッチな再生メニューを汎用OSで表示することができる。
【0069】
本図に例示したRTOSによる表示制御と汎用OSによる表示制御とを切り替え制御は、RTOSおよび汎用OSの共同動作によって実現される。例えば、動作モードを切り替えるユーザ指示を検出した場合に、当該ユーザ指示を検出した一方のOSが主体となって他方のOSを制御することによって、表示制御の切り替え制御を行ってよい。他にも、表示制御を切り替える機能ブロックがSoC51内に別途に設けられてよい。また、本例では、OSDレイヤを2つ有するとして説明したが、3以上のOSDレイヤを有するとしてもよい。OSDレイヤを複数用意することで、画像だけでなく、AFポイントや顔認識枠等のようにリアルタイム性が必要であり、かつ、RTOSでも表示が容易なGUIオブジェクトについては、RTOSで制御することが可能になる。なお、OSD表示の各レイヤを制御するOSの組み合わせは、本図で例示した組み合わせに限られない。本図で例示した撮像装置10の他の状態や、他の動作モードに応じて、各レイヤを制御するOSを切り替えてよい。
【0070】
図7は、表示部53による表示例を模式的に示す。ここでは、ライブビュー動作をしている場合に表示部53に表示される合成画像の一例を示す。
【0071】
合成画像710は、RTOSにより生成された表示用の画像データに基づく画像700と、RTOSにより生成された顔認識枠702と、汎用OSにより生成されたオブジェクト711〜719とを含む。オブジェクト711、712、713、714、715、716、717は、それぞれ撮像モード、閃光モード、フォーカスモード、電池残量、シャッタスピード、F値、ISO感度の設定モードを示すオブジェクトである。オブジェクト718および719は、タッチ操作用のオブジェクトである。
【0072】
RTOSは、表示用の画像データをビデオレイヤに順次に書き込む。また、表示用の画像データから検出された顔認識枠を第1OSDレイヤに順次に書き込む。これにより、被写体像および顔認識枠をリアルタイムに更新することができる。一方、汎用OSは、GUI用コンポーネントを用いて、オブジェクト711〜719を含む重畳用の画像データを生成して第2OSDレイヤに書き込む。このため、撮像動作に関する動作条件等やタッチ用のオブジェクトを分かり易くユーザに提示することができる。
【0073】
次に、合成画像720について説明する。合成画像720は、オブジェクト718の表示位置がタッチされた場合に表示部53に表示される合成画像の一例である。汎用OSは、タッチ入力部62から取得したタッチ位置がオブジェクト718内の位置である場合に、タッチ操作のオブジェクト721を生成して、第2OSDレイヤに書き込む。オブジェクト721には、レリーズ指示を受け付けるためのオブジェクト722、フォーカス指示を受け付けるためのオブジェクト723、連写モードを設定するためのオブジェクト724、ISO感度の設定モードを変更するためのオブジェクト725、および、諸設定を行うためのオブジェクト726を含む。
【0074】
撮像装置10によれば、リッチなGUIを提供するソフトウェアコンポーネントを汎用OSに実装すればよく、RTOSにそのようなソフトウェアコンポーネントを実装する必要がない。このため、汎用のオペレーティングシステムと、汎用のフォントライブラリ、グラフィックライブラリ等の汎用のライブラリとを用いて、リッチなGUIを提供する汎用OSを構築すればよい。このため、開発工数を著しく削減することができる。一方、リアルタイム性を要する表示制御はRTOSが担う。このため、撮像装置10によれば、リアルタイム性に優れた表示を行うことができる。
【0075】
図8は、撮像装置10の起動から終了までの処理フローを示す。本フローは、操作入力部61の一部としての電源スイッチがON位置にされた場合に、開始される。
【0076】
電源ボタンがONにされると、ステップS802において、第1コア221がRTOSを起動し、第2コア222が汎用OSを起動する。具体的には、第1コア221はシステムメモリ57からRTOSの実行イメージを読み出してSDRAM58に展開して、動作を開始する。また、第2コア222はシステムメモリ57から汎用OSの実行イメージを読み出してSDRAM58に展開して、動作を開始する。
【0077】
具体的には、第1コア221は、RTOSの制御に従って、ビデオレイヤ500の制御を獲得する(ステップS804)。また、第1コア221は、RTOSの制御に従って、OSDレイヤ510の制御を獲得する(ステップS806)。汎用OSOSの実行イメージは比較的に大きいため、SDRAM58への転送に時間を要する。また、汎用OSは比較的に多機能であるため、汎用OSが立ち上がってユーザ指示等に応答することができるようになるまでに時間を要する。このため、汎用OSが立ち上がるまではRTOSが全レイヤを制御する。
【0078】
続いて、第1コア221は、RTOSの制御に従って、初期設定を開始する(ステップS808)。例えば、RTOSの制御に従って、撮像装置10を制御するための各種パラメータ等が、システムメモリ57からSDRAM58に展開される。また、RTOSの制御に従って、レンズユニット20からレンズ固有情報が取得されて、SDRAM58にレンズパラメータとして展開される。レンズ固有情報としては、レンズの種類、レンズユニット20を制御するための制御パラメータ等を例示することができる。また、RTOSの制御に従って、操作入力部61等、撮像装置10の各部の状態に基づき、動作モードが決定される。
【0079】
ステップS810において、第1コア221は、RTOSの制御に従って設定結果等を表示する。ここでは、RTOSは、重要な項目に関する簡易的な表示をしてよい。例えば、メモリカード100が装着されていないことが検出された場合は、メモリカード100が装着されていない旨を表示する。また、AEセンサ39の出力に基づき予め定められた値より低い輝度レベルが検出された場合は、被写体が暗すぎる等、輝度レベルが低い旨を表示する。このように、汎用OSが立ち上がっていない場合には、RTOSは予め定められた項目に関する簡易的な表示制御を行う。
【0080】
ステップS812において、ユーザ操作等により生じるイベントの種類を判定する。イベントとしては、撮像装置10の諸設定処理を行うべき設定イベント、撮像を行うべき撮像イベント、画像データに基づく表示処理を行うべき再生イベント、汎用OSが立ち上がったことを示す立ち上がりイベント等を例示することができる。
【0081】
ステップS812において汎用OSの立ち上がりイベントが生じたと判定された場合、RTOSによるOSD表示を停止し(ステップS820)、汎用OSによるOSD表示を開始する(ステップS822)。例えば、RTOSが主体となって、少なくとも第2OSDレイヤに対する書き込みを停止して、第2OSDレイヤに対する書き込みを汎用OSに許可する。汎用OSにいずれのレイヤへの書き込みを許可するかは、図6等に関連して説明した動作モードに基づき決定してよい。
【0082】
ステップS812において設定イベントが生じたと判定された場合、指示された設定処理を行う(ステップS814)。ここではRTOSの制御により、撮像装置10の動作モードが設定モードに定められる。設定内容をユーザから受け付ける処理は、汎用OSが立ち上がってから開始されてよい。
【0083】
ステップS812において撮像イベントが生じたと判定された場合、撮像動作を含む処理を行う(ステップS816)。ここではRTOSの制御により、撮像装置10の動作モードが撮像モードに定められる。ステップS816における動作の一例については、図9に関連して説明する。
【0084】
ステップS812において再生イベントが生じたと判定された場合、再生処理を実行する(ステップS818)。ここではRTOSの制御により、撮像装置10の動作モードが再生モードに定められる。再生処理としては、メモリカード100に記録された画像データに基づきサムネイル表示する処理、ユーザにより指示された画像データに基づき表示する処理等を例示することができる。ステップS818の一部として、選択された画像等をネットワーク通信で送信するべき旨が指定された場合、撮像装置10の動作モードは通信モードに定められ、ネットワーク通信によって外部機器に送信される。
【0085】
ステップS814、ステップS816、ステップS818、ステップS822の処理が完了すると、ステップS830に処理を移行する。また、ステップS812においてイベントが生じていないと判定された場合も、ステップS830に処理を移行する。ステップS830において、電源をOFFするか否かを判断する。例えば、電源がONされてから予め定められた期間、ユーザ指示無しの状態が継続した場合等に、電源をOFFすると判断する。電源スイッチがOFF位置に切り替えられた場合も、電源をOFFすると判断する。電源をOFFしないと判断した場合はステップS812に処理を移行させる。電源をOFFすると判断した場合、第1コア221は、第2コア222に汎用OSの動作を終了させる。また、第1コア221は、RTOSの動作を終了するルーチンを実行し、処理を終了する。
【0086】
このように、汎用OSが立ち上がるまでは、起動時に限りリアルタイムおSのみで表示制御を行い、汎用OSが立ち上がってからは、少なくとも一部の表示制御を汎用OSに切り替える。このため、汎用OSの立ち上がりを待つことなく、RTOSにより撮像装置10の状況を簡易的にユーザに提示することができる。
【0087】
図9は、撮像処理における動作フローの一例を示す。本例は、ステップS816における詳細な動作フローの一例である。ここでは、ライブビュー動作時における処理を取り上げて説明する。
【0088】
ステップS902において、RTOSは、ビデオレイヤおよび第1OSDレイヤの制御を開始する。すなわち、ビデオレイヤ500を汎用OSが制御していた場合には、RTOSは、汎用OSによるビデオレイヤ500の書き込みを禁止させ、ビデオレイヤ500に対する書き込み権を獲得する。同様に、RTOSは、第1OSDレイヤを汎用OSが制御していた場合には、RTOSは、汎用OSによる第1OSDレイヤの書き込みを禁止させ、第1OSDレイヤに対する書き込み権を獲得する。第2OSDレイヤについては、汎用OSによる制御が継続される。
【0089】
続いて、RTOSの制御により、撮像素子36により撮像された画像の画像データを読み出し(ステップS904)、表示用の画像データが生成される(ステップS906)。続いて、RTOSの制御により、表示用の画像データがビデオレイヤ500に書き込まれる(ステップS908)。また、RTOSの制御により、焦点調節および顔検出が行われ(ステップS910)、AFポイントおよび顔検出枠を含むOSDデータが生成され(ステップS912)、生成されたOSDデータが第11OSDレイヤに書き込まれる(ステップS914)。
【0090】
続いて、RTOSの制御により、撮像指示の有無が判断される(ステップS916)。具体的には、操作入力部61の一部としてのレリーズボタンの押し込みを検出した場合に、撮像指示ありと判断してよい。また、汎用OSの制御により、タッチ操作によるレリーズ指示が検出された場合に、撮像指示ありと判断してよい。汎用OSでレリーズ指示が検出された場合、レリーズ指示があった旨をコア間通信でRTOSに通知されてよい。
【0091】
撮像指示ありと判断された場合、RTOSの制御によりフォーカルプレーンシャッタ43、撮像素子36等が駆動されて撮像素子36に撮像させ、撮像により得られた画像データが読み出される(ステップS918)。続いて、RTOSの制御により、画像処理や符号化処理等が施されて記録用の画像データが共有メモリ領域80に生成され、画像データが生成された旨がコア間通信によって汎用OSに通知される(ステップS920)。画像データが生成された旨が汎用OSに通知されると、汎用OSの制御により、共有メモリ領域80からメモリカード100に画像データ転送され(ステップS922)、ステップS924に処理を進める。ステップS916において撮像指示がないと判断された場合、ステップS924に処理を進める。
【0092】
ステップS924において、RTOSの制御により、撮像動作を終了するか否かが判断される。撮像動作を終了すると判断された場合、汎用OSによるビデオレイヤおよび第1OSDレイヤの制御を開始させて(ステップS926)、動作を終了する。ステップS924において、撮像動作を終了しない旨が判断された場合、ステップS904に処理を移行させる。
【0093】
以上に説明したように、撮像装置10によれば、RTOSおよび汎用OSが、表示部53に対する表示制御を同時に行うことができる。このため、各OSがそれぞれ得意な部分を描画させ、リアルタイム性が必要なライブビュー表示等はRTOSによる制御、リアルタイム性が必要でないリッチなUI表現は汎用OSで制御することができる。このように、撮像装置10によれば、複数の異なるOSを搭載して、リアルタイムなライブビュー表示とリッチなGUIを共存させた撮像装置を提供することができる。また、撮像装置10において実行すべき機能や撮像装置10の状態に応じて、ROTSに基づく表示制御と、汎用OSに基づく表示制御とを適応的に切り替えることができる。
【0094】
以上の説明においては、SoC51は、マルチコアプロセッサであるとして説明した。特に、SoC51が2つのコアを有するとして説明したが、SoC51は3以上のコアを有してよい。また、第1コア221がRTOSを動作させ、第2コア222が汎用OSを動作させるとして説明したが、第1コア221および第2コア222がRTOSを動作させてもよい。また、第1コア221および第2コア222が、RTOSおよび汎用OSを動作させてもよい。また、SoC51は、シングルチップ化されたマルチプロセッサを有してよい。また、SoC51は、シングルコアプロセッサを有してよい。すなわち、SoC51は、単一のプロセッサを有してもよい。SoC51が単一のプロセッサを有する場合、単一のプロセッサがRTOSおよび汎用OSを動作させるとしてよい。また、SoC51に限られず、様々なパッケージでプロセッサが撮像装置10に実装されてよい。
【0095】
本実施形態の撮像装置10に関連して説明した処理は、撮像装置10の各部、例えばSoC51等として組み込まれたプロセッサが、プログラムに従って動作することにより、実現することができる。すなわち、当該処理を、いわゆるコンピュータ装置によって実現することができる。コンピュータ装置は、上述した処理の実行を制御するプログラムをロードして、読み込んだプログラムに従って動作して、当該処理を実行してよい。コンピュータ装置は、当該プログラムを記憶しているコンピュータ読取可能な記録媒体を読み込むことによって、当該プログラムをロードすることができる。
【0096】
本実施形態において、撮像装置10を取り上げて電子機器の一例を説明した。撮像装置としては、レンズ非交換式カメラの一例としてのコンパクトデジタルカメラ、ミラーレス一眼カメラ、ビデオカメラ、撮像機能付きの携帯電話機、撮像機能付きの携帯情報端末、撮像機能付きのゲーム機器等の娯楽装置、スキャナ、ファクシミリ等、撮像機能を有する機器を適用の対象とすることができる。また、電子機器は、テレビ、ビデオ、デジタルフォトフレーム、プロジェクタ装置、ゲーム機器等の娯楽装置等の電子画像機器として実現されてよい。また、電子機器は、録音装置等の電子音声機器として実現されてよい。
【0097】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0098】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0099】
10 撮像装置、11 光軸、20 レンズユニット、21 レンズ群、22 前玉、23 後玉、24 フォーカスレンズ、25 ズームレンズ、26 鏡筒、27 レンズ回路基板、28 絞り装置、29 レンズマウント、30 カメラユニット、31 カメラマウント、32 メインミラー、33 ピント板、34 メインミラー回転軸、35 ミラーボックス、36 撮像素子、37 ペンタプリズム、38 接眼光学系、39 AEセンサ、40 サブミラー、41 合焦光学系、42 合焦センサ、43 フォーカルプレーンシャッタ、44 サブ基板、48 アナログ部、50 メイン基板、51 SoC、52 MPU、53 表示部、54 電源部、55 外部接続IF、56 記録媒体IF、57 システムメモリ、58 SDRAM、61 操作入力部、62 タッチ入力部、70 アナログ処理部、71 AD変換部、72 タイミングジェネレータ、73 駆動ドライバ、80 共有メモリ領域、81 RTOS用メモリ領域、82 汎用OS用メモリ領域、100 メモリカード、110 外部機器、221 第1コア、222 第2コア、300 ソフトウェア、311、312、313、314、315、316、321、322、323、324、325、326 コンポーネント、400 表示制御部、410 前処理部、420 画像処理部、430 符号化部、440 復号部、450 GUI制御部、460 メディア制御部、470 外部通信制御部、500 ビデオレイヤ、510 OSDレイヤ、520 合成部、700 画像、702 顔認識枠、710、720 合成画像、711、712、713、714、715、716、717、718、721、722、723、724、725、726 オブジェクト

【特許請求の範囲】
【請求項1】
表示部に対する表示制御機能を有するリアルタイムオペレーティングシステムである第1OS、および、前記表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである第2OSを格納する格納部と、
前記第1OSによる表示制御と前記第2OSによる表示制御とを切り替える制御部と、
を備える電子機器。
【請求項2】
前記第2OSはユーザインタフェース用のオブジェクトを前記表示部に表示させる機能を有する
請求項1に記載の電子機器。
【請求項3】
前記第1OSにより生成された第1画像データおよび前記第2OSにより生成された第2画像データを用いて、前記第1画像データの画像に前記第2画像データの画像を重畳して前記表示部に表示させる表示制御部
をさらに備える請求項1または2に記載の電子機器。
【請求項4】
前記表示制御部は、主画像レイヤの画像データおよび副画像レイヤの画像データを用いて前記表示部にオンスクリーン表示させ、
前記制御部は、前記主画像レイヤの画像データを生成させるOSを切り替える
請求項3に記載の電子機器。
【請求項5】
前記制御部は、前記電子機器を起動した場合に、前記第2OSが立ち上がるまでの間、前記第1OSに前記表示部への表示を制御させ、前記第2OSが立ち上がった場合に、前記第2OSによる表示制御に切り替える
請求項1から4のいずれか一項に記載の電子機器。
【請求項6】
前記第2OSは、外部機器との通信を制御する機能を有し、
前記制御部は、前記外部機器と通信を行う場合に、前記第2OSによる表示制御に切り替える
請求項1から5のいずれか一項に記載の電子機器。
【請求項7】
撮像部
をさらに備え、
前記第1OSは、前記撮像部が撮像することにより取得された画像データを処理して前記表示部に表示させる機能を有する
請求項1から6のいずれか一項に記載の電子機器。
【請求項8】
前記制御部は、前記撮像部に撮像させる指示を受け付けた場合に、前記第1OSによる表示制御に切り替える
請求項7に記載の電子機器。
【請求項9】
前記第1OSは、前記撮像部が順次に撮像することにより画像データを処理して前記表示部に順次に表示させる機能を有する
請求項7または8に記載の電子機器。
【請求項10】
前記第1OSは、前記撮像部が順次に撮像することにより順次に取得された画像データを解析して焦点調節し、焦点調節の結果を示す情報を前記表示部に表示させる機能を有する
請求項7から9のいずれか一項に記載の電子機器。
【請求項11】
前記第1OSは、前記撮像部が順次に撮像することにより順次に取得された画像データを解析して予め定められたオブジェクトを検出して、オブジェクトの検出結果を示す情報を前記表示部に表示させる機能を有する
請求項7から10のいずれか一項に記載の電子機器。
【請求項12】
前記第2OSは、前記撮像部の動作設定をするためのユーザインタフェース用のオブジェクトを前記表示部に表示させる機能を有する
請求項7から11のいずれか一項に記載の電子機器。
【請求項13】
表示部に対する表示制御機能を有するリアルタイムオペレーティングシステムである第1OS、および、前記表示部に対する表示制御機能を有する非リアルタイムオペレーティングシステムである第2OSを動作させるステップと、
前記第1OSによる表示制御と前記第2OSによる表示制御とを切り替える制御部と、
コンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2013−97728(P2013−97728A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−242608(P2011−242608)
【出願日】平成23年11月4日(2011.11.4)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】