本明細書及び添付図面の記載により、少なくとも、以下の事項が明らかとなる。
画像を表示する表示部を備える情報処理装置において実行される情報処理方法であって、画像データに予め付加されている付加データから、当該画像データに対応する画像が属するシーンに関するシーン情報を取得するシーン情報取得ステップと、前記画像データに基づいて、当該画像データに対応する画像が属するシーンを推定シーンとして推定するシーン推定ステップと、前記シーン情報が示すシーンと前記推定シーンとが一致するか否かを判別するシーン判別ステップと、前記シーン判別ステップにおける判別の結果、前記シーン情報が示すシーンと前記推定シーンとが不一致である場合には、当該不一致に関連する不一致関連情報を前記表示部に表示する不一致情報表示ステップとを有することを特徴とする情報処理方法が明らかになる。
このような情報処理方法によれば、画像データの内容と付加データの内容との不一致を不一致関連情報としてユーザに報知することができ、ユーザは表示部を閲覧することにより、不一致関連情報を確認することができる。
また、前記シーン情報が示すシーンに応じて前記画像データに施すべき第1の画像補正、及び前記推定シーンに応じて前記画像データに施すべき第2の画像補正の一方の画像補正を選択する選択ステップを有することが望ましい。これにより、シーンに応じた画像処理が画像データに施されることになるので、出力された画像の画質を向上させることができる。
さらに、前記不一致関連情報は、前記選択ステップにおいて前記第2の画像補正を選択すべきか否かに関する情報であることが望ましい。これにより、第2の画像処理を選択するだけで、第1の画像処理が選択されることをなくすことができる。
さらに、前記選択ステップにおいて前記第2の画像補正が選択されたときは、前記画像データの付加データとして前記推定シーンに関するシーン情報を付加することが望ましい。これにより、画像データに基づいたシーンの推定を再び行う必要をなくすことができる。
また、前記シーン推定ステップは、前記画像データに対応する画像を特徴付ける特徴量を取得する特徴量取得ステップと、前記特徴量に基づいて前記推定シーンの確からしさを示す確信度を設定する確信度設定ステップとを含むことが望ましい。これにより、ユーザは、推定シーンの確信度から、シーン情報が示すシーンの確からしさも容易に推定することができる。したがって、ユーザは、シーン情報が示すシーンの内容と推定シーンの内容とがどの程度不一致であるかを確認(比較)することができる。
また、前記特徴量取得ステップでは、前記画像データ全体に対応する画像の特徴量を示す全体特徴量を取得し、前記シーン推定ステップでは、前記全体特徴量に基づいて前記画像が所定のシーンに属するか否かを識別することが望ましい。このとき、取得した全体特徴量のうち、画像データ全体の特徴を顕著に示している特徴量を用いることにより、識別の精度を向上させることができる。
また、前記特徴量取得ステップでは、前記画像データの一部に対応する画像の特徴量を示す部分特徴量を取得し、前記シーン推定ステップでは、少なくとも前記部分特徴量に基づいて前記画像が所定のシーンに属するか否かを識別することが望ましい。このとき、取得した部分特徴量のうち、画像データの一部の特徴を顕著に示している特徴量を用いることにより、識別の精度を向上させることができる。
さらに、前記確信度を前記表示部に表示する確信度表示ステップを有することが望ましい。これにより、ユーザは、表示された確信度に基づいて、シーン情報が示すシーンの内容と推定シーンの内容とがどの程度不一致であるかの確認(比較)を容易に行うことができる。
また、前記不一致情報表示ステップにおいて前記表示部で前記不一致関連情報の表示を行うべき時間を設定する表示時間設定ステップを有することが望ましい。これにより、設定された時間が経過するまで放置することにより、ユーザは、表示部に表示された不一致関連情報を確認する手間を省略することができる。
また、画像を表示する表示部と、画像データに関する情報を処理するためのコントローラとを備える情報処理装置であって、前記コントローラは、画像データに予め付加されている付加データから、当該画像データに対応する画像が属するシーンに関するシーン情報を取得するシーン情報取得ステップと、前記画像データに基づいて、当該画像データに対応する画像が属するシーンを推定シーンとして推定するシーン推定ステップと、前記シーン情報が示すシーンと前記推定シーンとが一致するか否かを判別するシーン判別ステップと、前記シーン判別ステップにおける判別の結果、前記シーン情報が示すシーンと前記推定シーンとが不一致である場合には、当該不一致に関連する不一致関連情報を前記表示部に表示する不一致情報表示ステップとを実行することを特徴とする情報処理装置が明らかになる。
画像を表示する表示部を備える情報処理装置が実行するプログラムであって、画像データに予め付加されている付加データから、当該画像データに対応する画像が属するシーンに関するシーン情報を取得するシーン情報取得モジュールと、前記画像データに基づいて、当該画像データに対応する画像が属するシーンを推定シーンとして推定するシーン推定モジュールと、前記シーン情報が示すシーンと前記推定シーンとが一致するか否かを判別するシーン判別モジュールと、前記シーン判別モジュールによる判別の結果、前記シーン情報が示すシーンと前記推定シーンとが不一致である場合には、当該不一致に関連する不一致関連情報を前記表示部に表示する不一致情報表示モジュールとを備えることを特徴とするプログラムも明らかになる。
さらに、上記プログラムを記憶したことを特徴とする前記情報処理装置が読み取り可能な記憶媒体も明らかになる。
===全体構成===
図1は、第1実施形態による画像処理システムの説明図である。この画像処理システムは、デジタルスチルカメラ2と、プリンタ4とを備える。
デジタルスチルカメラ2は、被写体をデジタルデバイス(CCDなど)に結像させることによりデジタル画像を取得するカメラである。デジタルスチルカメラ2には、モード設定ダイヤル2Aが設けられている。ユーザは、ダイヤル2Aによって、撮影条件に応じた撮影モードを設定することができる。例えば、ダイヤル2Aによって「夜景」モードが設定されると、デジタルスチルカメラ2は、シャッター速度を遅くしたり、ISO感度を高くしたりして、夜景撮影に適した撮影条件にて撮影を行う。
デジタルスチルカメラ2は、ファイルフォーマット規格に準拠して、撮影により生成した画像ファイルをメモリカード6に保存する。画像ファイルには、撮影した画像のデジタルデータ(画像データ)だけでなく、撮影時の撮影条件(撮影データ)等の付加データも保存される。
プリンタ4は、画像データの示す画像を紙に印刷する印刷装置である。プリンタ4には、メモリカード6を挿入するスロット21が設けられている。ユーザは、デジタルスチルカメラ2で撮影した後、デジタルスチルカメラ2からメモリカード6を取り出し、スロット21にメモリカード6を挿入することができる。
図2は、プリンタ4の構成の説明図である。プリンタ4は、印刷部としての印刷機構10と、この印刷機構10を制御するプリンタ側コントローラ20とを備える。印刷機構10は、インクを吐出するヘッド11と、ヘッド11を制御するヘッド制御部12と、紙を搬送するため等のモータ13と、センサ14とを有する。プリンタ側コントローラ20は、メモリカード6からデータを送受信するためのメモリ用スロット21と、CPU22と、メモリ23と、モータ13を制御する制御ユニット24と、駆動信号(駆動波形)を生成する駆動信号生成部25とを有する。
また、プリンタ4は、入力機構80及び表示機構90で構成されたユーザインターフェース(UI)を備える。入力機構80は、ユーザにより操作されてユーザの指示をプリンタ側コントローラ20に入力するための操作部を含む。表示機構90は、色空間がsRGBで表現された画像データに対応する画像を表示部に表示する。
メモリカード6がスロット21に挿入されると、プリンタ側コントローラ20は、メモリカード6に保存されている画像ファイルを読み出してメモリ23に記憶する。そして、プリンタ側コントローラ20は、画像ファイルの画像データを、印刷機構10で印刷するための印刷データに変換し、印刷データに基づいて印刷機構10を制御し、紙に画像を印刷する。この一連の動作は、「ダイレクトプリント」と呼ばれている。
なお、「ダイレクトプリント」は、メモリカード6をスロット21に挿入することによって行われるだけでなく、デジタルスチルカメラ2とプリンタ4とをケーブル(不図示)で接続することによっても可能である。
===画像ファイルの構造===
画像ファイルは、画像データと、付加データとから構成されている。画像データは、複数の画素データから構成されている。画素データは、画素の色情報(階調値)を示すデータである。画素がマトリクス状に配置されることによって、画像が構成される。このため、画像データは、画像を示すデータである。付加データには、画像データの特性を示すデータや、撮影データや、サムネイル画像データ等が含まれる。
以下、画像ファイルの具体的な構造について説明する。
図3は、画像ファイルの構造の説明図である。図中の左側には画像ファイルの全体構成が示されており、右側にはAPP1領域の構成が示されている。
画像ファイルは、SOI(Start of image)を示すマーカで始まり、EOI(End of Image)を示すマーカで終わる。SOIを示すマーカの後に、APP1のデータ領域の開始を示すAPP1マーカがある。APP1マーカの後のAPP1のデータ領域には、撮影データやサムネイル画像等の付加データが含まれている。また、SOS(Start of Stream)を示すマーカの後には、画像データが含まれている。
APP1マーカの後、APP1のデータ領域のサイズを示す情報があり、ExifヘッダとTiffヘッダが続き、IFD領域となる。
各IFD領域は、複数のディレクトリエントリと、次のIFD領域の位置を示すリンクと、データエリアとを有する。例えば、最初のIFD0(IFD of main image)では次のIFD1(IFD of thumbnail image)の位置がリンクされる。但し、ここではIFD1の次のIFDが存在しないのでIFD1では他のIFDへのリンクは行われない。各ディレクトリエントリには、タグとデータ部が含まれる。格納すべきデータ量が小さい場合にはデータ部に実際のデータがそのまま格納され、データ量が多い場合には実際のデータはIFD0データエリアに格納されて、データ部にはデータの格納場所を示すポインタが格納される。なお、IFD0には、ExifSubIFDの格納場所を意味するタグ(Exif IFD Pointer)と、ExifSubIFDの格納場所を示すポインタ(オフセット値)とが格納されているディレクトリエントリがある。
ExifSubIFD領域は、複数のディレクトリエントリを有する。このディレクトリエントリにも、タグとデータ部が含まれる。格納すべきデータ量が小さい場合にはデータ部に実際のデータがそのまま格納され、データ量が多い場合には実際のデータはExifSubIFDデータエリアに格納されて、データ部にはデータの格納場所を示すポインタが格納される。なお、ExifSubIFDの中には、MakernoteIFDの格納場所を意味するタグと、MakernoteIFDの格納場所を示すポインタとが格納されている。
MakernoteIFD領域は、複数のディレクトリエントリを有する。このディレクトリエントリにも、タグとデータ部が含まれる。格納すべきデータ量が小さい場合にはデータ部に実際のデータがそのまま格納され、データ量が多い場合には実際のデータはMakernoteIFDデータエリアにデータが格納されて、データ部にはデータの格納場所を示すポインタが格納される。但し、MakernoteIFD領域ではデータの格納形式を自由に定義できるので、必ずしもこの形式でデータを格納しなくても良い。以下の説明では、MakernoteIFD領域に格納されるデータのことを「MakerNoteデータ」と呼ぶ。
図4Aは、IFD0で使われるタグの説明図である。図に示す通り、IFD0には一般的なデータ(画像データの特性を示すデータ)が格納され、詳細な撮影データは格納されていない。
図4Bは、ExifSubIFDで使われるタグの説明図である。図に示す通り、ExifSubIFDには詳細な撮影データが格納されている。なお、シーン識別処理の際に抽出される撮影データの大部分は、ExifSubIFDに格納されている撮影データである。なお、撮影シーンタイプタグ(Scene Capture Type)は、撮影シーンのタイプを示すタグである。また、Makernoteタグは、MakernoteIFDの格納場所を意味するタグである。
ExifSubIFD領域の撮影シーンタイプタグに対するデータ部(撮影シーンタイプデータ)が、「ゼロ」ならば「標準」を意味し、「1」ならば「風景」を意味し、「2」ならば「人物」を意味し、「3」ならば「夜景」を意味する。なお、ExifSubIFDに格納されたデータは規格化されているため、この撮影シーンタイプデータの内容を誰でも知ることが可能である。
本実施形態では、MakerNoteデータの一つに、撮影モードデータが含まれている。この撮影モードデータでは、モード設定ダイヤル2Aで設定されたモード毎に異なる値を示す。但し、MakerNoteデータは、メーカ毎に形式が異なるため、MakerNoteデータの形式が分からなければ、撮影モードデータの内容を知ることはできない。
図5は、モード設定ダイヤル2Aの設定とデータとの対応表である。ExifSubIFDで使われる撮影シーンタイプタグは、ファイルフォーマット規格に準拠しているため、特定できるシーンが限定されており、「夕景」等のシーンを特定するデータをデータ部に格納することはできない。一方、MakerNoteデータは自由に定義できるので、MakerNoteデータの一つである撮影モードタグにより、モード設定ダイヤル2Aの撮影モードを特定するデータをデータ部に格納できる。
前述のデジタルスチルカメラ2は、モード設定ダイヤル2Aの設定に応じた撮影条件にて撮影を行った後、上記の画像ファイルを作成し、メモリカード6に保存する。この画像ファイルには、モード設定ダイヤル2Aに応じた撮影シーンタイプデータ及び撮影モードデータが、画像データに付加されるシーン情報として、それぞれExifSubIFD領域及びMakernoteIFD領域に格納される。
===補正機能の概要===
「人物」の写真を印刷するときには、肌色をきれいにしたいという要求がある。また、「風景」の写真を印刷するときには、空の青色を強調し、木や草の緑色を強調したいという要求がある。そこで、本実施形態のプリンタ4は、画像ファイルを分析した結果決定したシーン修正候補に基づいて補正処理を行う補正機能と、該補正機能を実施する前にシーン修正候補をユーザに確認するユーザ確認機能と、上記ユーザ確認機能によりシーン修正候補の確認(承認)が得られなかった場合に画像ファイルの撮影データに基づいて補正処理を行う補正機能とを備えている。ここで、シーン修正候補とは、プリンタ4が画像ファイルを分析した結果得られる、画像ファイルの画像データに対応する画像が属するべきシーンを示す。
図6は、プリンタ4の補正機能の説明図である。図中のプリンタ側コントローラ20の各要素は、ソフトウェアとハードウェアによって実現される。
記憶部31は、メモリ23の一部の領域及びCPU22によって実現される。メモリカード6から読み出された画像ファイルの全部又は一部は、記憶部31の画像記憶部31Aに展開される。また、プリンタ側コントローラ20の各要素の演算結果は、記憶部31の結果記憶部31Bに格納される。
顔識別部32は、CPU22と、メモリ23に記憶された顔識別プログラムとによって実現される。顔識別部32は、画像記憶部31Aに記憶された画像データを分析し、顔の有無を識別する。顔識別部32によって顔が有ると識別された場合、識別対象となる画像が「人物」のシーンに属すると確信度100%で識別される。なお、確信度とは、識別対象となる画像が特定のシーンに属するという識別の確からしさを示す。この場合、シーン識別部33によるシーン識別処理は行われない。この結果、「人物」がデフォルトのシーン修正候補として決定される。
顔識別部32による顔識別処理は、既に広く行われている処理と同様なので、以下に簡略的に説明する。
まず、顔識別部32は、画像記憶部31Aの画像データから顔画像データを抽出する。顔画像データとは、識別対象となる画像における被写体の一部である人物(主要被写体)の顔部分に対応する画像データである。本実施形態では、所定サイズ、例えば400(20×20)画素以上の顔画像データであって顔部分の面積が最大のものが抽出される。続いて、顔識別部32は、顔画像データに基づいて人物の顔部分の長手方向における長さを示す顔長さを検出し、検出した顔長さが、識別対象となる画像の短辺方向の長さ、例えば240画素分に対応する長さの30%(72画素分)以上であるときに、識別対象となる画像内に、顔画像が有ると識別する。
シーン識別部33は、CPU22と、メモリ23に記憶されたシーン識別プログラムとによって実現される。シーン識別部33は、画像記憶部31Aに記憶された画像ファイルを分析し、画像データの示す画像のシーンを識別する。顔識別部32によって顔が無いと識別された場合に、シーン識別部33によるシーン識別処理が行われる。後述するように、シーン識別部33は、識別対象となる画像が「風景」、「夕景」、「夜景」、「花」、「紅葉」のいずれの画像であるかを識別する。識別対象となる画像がいずれの画像でもない場合、「その他」の画像であると識別される。この結果、「風景」、「夕景」、「夜景」、「花」、「紅葉」「その他」のいずれか一つがデフォルトのシーン修正候補として決定される。
図7は、画像のシーンと補正内容との関係の説明図である。
画像補正部34は、CPU22と、メモリ23に記憶された画像補正プログラムとによって実現される。画像補正部34は、記憶部31の結果記憶部31B(後述)に記憶されている識別結果(顔識別部32やシーン識別部33の識別結果)に基づいて、画像記憶部31Aの画像データを補正する。例えば、シーン識別部33の識別結果が「風景」である場合には、青色を強調し、緑色を強調するような補正が行われる。なお、画像補正部34は、シーンの識別結果だけでなく、画像ファイルの撮影データの内容も反映して、画像データを補正しても良い。例えば、露出補正がマイナスの場合、暗い雰囲気の画像を明るくしないように画像データを補正しても良い。
また、画像補正部34は、上記ユーザ確認機能によりシーン修正候補の確認(承認)が得られなかった場合には、画像ファイルの撮影データに含まれる撮影シーンタイプデータ及び撮影モードデータに基づいて画像補正を行う。この際にも撮影シーンタイプデータ及び撮影モードデータだけでなく、他の撮影データの内容も反映して、画像データを補正しても良い。
表示制御部36は、CPU22と、メモリ23に記憶された画像補正プログラムとによって実現される。表示制御部36は、表示機構90の表示部に表示するための表示用画像データ(以下、「表示用データ」という)を、記憶部31の画像記憶部31Aの画像データから生成する。さらに、表示制御部36は、表示機構90による画像の表示や、後述する図23乃至図26及び図29A乃至図30に示すような表示画面の表示を制御する。
プリンタ制御部35は、CPU22、駆動信号生成部25、制御ユニット24及びメモリ23に記憶されたプリンタ制御プログラムによって、実現される。プリンタ制御部35は、補正後の画像データを印刷データに変換し、印刷機構10に画像を印刷させる。
===シーン識別処理===
図8は、シーン識別部33によるシーン識別処理のフロー図である。図9は、シーン識別部33の機能の説明図である。図中のシーン識別部33の各要素は、ソフトウェアとハードウェアによって実現される。
最初に、特徴量取得部40が、記憶部31の画像記憶部31Aに展開された画像データを分析し、部分特徴量を取得する(S101)。具体的には、特徴量取得部40は、画像データを8×8の64ブロックに分割し、各ブロックの色平均と分散を算出し、この色平均と分散を部分特徴量として取得する。なお、ここでは各画素はYCC色空間における階調値のデータをもっており、ブロックごとに、Yの平均値、Cbの平均値及びCrの平均値がそれぞれ算出され、Yの分散、Cbの分散及びCrの分散がそれぞれ算出される。つまり、ブロックごとに3つの色平均と3つの分散が部分特徴量として算出される。これらの色平均や分散は、各ブロックにおける部分画像の特徴を示すものである。なお、RGB色空間における平均値や分散を算出しても良い。
ブロックごとに色平均と分散が算出されるので、特徴量取得部40は、画像記憶部31Aには画像データの全てを展開せずに、ブロック分の画像データをブロック順に展開する。このため、画像記憶部31Aは、必ずしも画像ファイルの全てを展開できるだけの容量を備えていなくても良い。
次に、特徴量取得部40が、全体特徴量を取得する(S102)。具体的には、特徴量取得部40は、画像データの全体の色平均、分散、重心及び撮影情報を、全体特徴量として取得する。なお、これらの色平均や分散は、画像の全体の特徴を示すものである。画像データ全体の色平均、分散及び重心は、先に算出した部分特徴量を用いて算出される。このため、全体特徴量を算出する際に、画像データを再度展開する必要がないので、全体特徴量の算出速度が高くなる。全体識別処理(後述)は部分識別処理(後述)よりも先に行われるにも関わらず、全体特徴量が部分特徴量よりも後に求められるのは、このように算出速度を高めるためである。なお、撮影情報は、画像ファイルの撮影データから抽出される。具体的には、絞り値、シャッター速度、フラッシュ発光の有無などの情報が全体特徴量として用いられる。但し、画像ファイルの撮影データの全てが全体特徴量として用いられるわけではない。
次に、全体識別器50が、全体識別処理を行う(S103)。全体識別処理とは、全体特徴量に基づいて、画像データの示す画像のシーンを識別(推定)する処理である。全体識別処理の詳細については、後述する。
全体識別処理によってシーンの識別ができる場合(S104でYES)、シーン識別部33は、記憶部31の結果記憶部31Bに識別結果を記憶することによって一つのシーンをデフォルトのシーン修正候補として決定し(S109)、シーン識別処理を終了する。つまり、全体識別処理によってシーンの識別ができた場合(S104でYES)、部分識別処理や統合識別処理(後述)が省略される。これにより、シーン識別処理の速度が高くなる。
全体識別処理によってシーンの識別ができない場合(S104でNO)、次に部分識別器60が、部分識別処理を行う(S105)。部分識別処理とは、部分特徴量及び全体特徴量に基づいて、画像データの示す画像全体のシーンを識別する処理である。部分識別処理の詳細については、後述する。
部分識別処理によってシーンの識別ができる場合(S106でYES)、シーン識別部33は、記憶部31の結果記憶部31Bを識別結果に記憶することによって一つのシーンをデフォルトのシーン修正候補として決定し(S109)、シーン識別処理を終了する。つまり、部分識別処理によってシーンの識別ができた場合(S106でYES)、統合識別処理が省略される。これにより、シーン識別処理の速度が高くなる。
部分識別処理によってシーンの識別ができない場合(S106でNO)、次に統合識別器70が、統合識別処理を行う(S107)。統合識別処理の詳細については、後述する。
統合識別処理によってシーンの識別ができる場合(S108でYES)、シーン識別部33は、記憶部31の結果記憶部31Bに識別結果を記憶することによって一つのシーンをデフォルトのシーン修正候補として決定し(S109)、シーン識別処理を終了する。ここで、例えばシーン修正候補が複数ある場合には、確信度に基づいて一つのシーン修正候補がデフォルトのシーン修正候補として決定される。
一方、統合識別処理によってシーンの識別ができない場合(S108でNO)、画像データの示す画像が「その他」のシーン(「風景」、「夕景」、「夜景」、「花」、「紅葉」以外のシーン)である旨の識別結果を結果記憶部31Bに記憶する(S110)。この結果、「その他」がデフォルトのシーン修正候補として決定される。
===全体識別処理===
図10は、全体識別処理のフロー図である。ここでは図9も参照しながら全体識別処理について説明する。
まず、全体識別器50は、複数のサブ識別器51の中から1つのサブ識別器51を選択する(S201)。全体識別器50には、識別対象となる画像(識別対象画像)が特定のシーンに属するか否かを識別するサブ識別器51が5つ設けられている。5つのサブ識別器51は、それぞれ風景、夕景、夜景、花、紅葉のシーンを識別する。ここでは、全体識別器50は、風景→夕景→夜景→花→紅葉の順に、サブ識別器51を選択する。このため、最初には、識別対象画像が風景のシーンに属するか否かを識別するサブ識別器51(風景識別器51L)が選択される。
次に、全体識別器50は、識別対象テーブルを参照し、選択したサブ識別器51を用いてシーンを識別すべきか否かを判断する(S202)。
図11は、識別対象テーブルの説明図である。この識別対象テーブルは、記憶部31の結果記憶部31Bに記憶される。識別対象テーブルは、最初の段階では全ての欄がゼロに設定される。S202の処理では、「否定」欄が参照され、ゼロであればYESと判断され、1であればNOと判断される。ここ(図11)では、全体識別器50は、識別対象テーブルにおける「風景」欄の「否定」欄を参照し、ゼロであるのでYESと判断する。
次に、サブ識別器51は、全体特徴量に基づいて、識別対象画像が特定のシーンに属する確率を算出する(S203)。この際に用いられる全体特徴量は、特徴量取得部40が取得した複数種類の特徴量から、識別対象画像全体に特定のシーンの特徴が顕著に現れやすい特徴量を選択的に用いる。これにより、サブ識別器51による識別の精度を向上させることができる。
また、本実施形態のサブ識別器51には、サポートベクタマシン(SVM)による識別手法が用いられている。なお、サポートベクタマシンについては、後述する。識別対象画像が特定のシーンに属する場合、サブ識別器51の判別式は、プラスの値になる。識別対象画像が特定のシーンに属しない場合、サブ識別器51の判別式は、マイナスの値になりやすい。また、判別式は、識別対象画像が特定のシーンに属する確率が高いほど、大きい値になる。このため、判別式の値が大きければ、識別対象画像が特定のシーンに属する確率が高くなり、判別式の値が小さければ、識別対象画像が特定のシーンに属する確率が低くなる。本実施形態では、判別式の値が肯定閾値(後述)よりも大きいとき、シーン修正候補の確信度を100%としている。
次に、サブ識別器51は、判別式の値が肯定閾値より大きいか否かを判断する(S204)。判別式の値が肯定閾値より大きければ、サブ識別器51は、識別対象画像が特定のシーンに属すると判断することになる。
図12は、全体識別処理でサブ識別器51が用いる肯定閾値の説明図である。同図において、横軸は肯定閾値を示し、縦軸はRecall又はPrecisionの確率を示す。図13は、RecallとPrecisionの説明図である。判別式の値が肯定閾値以上の場合には識別結果はPositiveであり、判別式の値が肯定閾値以上でない場合には識別結果はNegativeである。
Recallは、再現率や検出率を示すものである。Recallは、特定のシーンの画像の総数に対する、特定のシーンに属すると識別された画像の数の割合である。言い換えると、Recallは、特定のシーンの画像をサブ識別器51に識別させたときに、サブ識別器51がPositiveと識別する確率(特定のシーンの画像が特定のシーンに属すると識別される確率)を示すものである。例えば、風景画像を風景識別器51Lに識別させたときに、風景のシーンに属すると風景識別器51Lが識別する確率を示すものである。
Precisionは、正答率や正解率を示すものである。Precisionは、Positiveと識別された画像の総数に対する、特定のシーンの画像の数の割合である。言い換えると、Precisionは、特定のシーンを識別するサブ識別器51がPositiveと識別したときに、識別対象画像が特定のシーンである確率を示すものである。例えば、風景識別器51Lが風景のシーンに属すると識別したときに、その識別した画像が本当に風景画像である確率を示すものである。
図12から分かる通り、肯定閾値を大きくするほど、Precisionが大きくなる。このため、肯定閾値を大きくするほど、例えば風景のシーンに属すると識別された画像が風景画像である確率が高くなる。つまり、肯定閾値を大きくするほど、誤識別の確率が低くなる。
一方、肯定閾値を大きくするほど、Recallは小さくなる。この結果、例えば、風景画像を風景識別器51Lで識別した場合であっても、風景のシーンに属すると正しく識別しにくくなる。ところで、識別対象画像が風景のシーンに属すると識別できれば(S204でYES)、残りの別のシーン(夕景など)の識別を行わないようにして全体識別処理の速度を高めている。このため、肯定閾値を大きくするほど、全体識別処理の速度は低下することになる。また、全体識別処理によってシーンが識別できれば部分識別処理を行わないようにしてシーン識別処理の速度を高めているため(S104)、肯定閾値を大きくするほど、シーン識別処理の速度は低下することになる。
つまり、肯定閾値が小さすぎると誤識別の確率が高く、大きすぎると処理速度が低い。本実施形態では、正答率(Precision)を97.5%に設定するため、風景の肯定閾値は1.72に設定されている。
判別式の値が肯定閾値より大きければ(S204でYES)、サブ識別器51は、識別対象画像が特定のシーンに属すると確信度100%で判断し、肯定フラグを立てる(S205)。「肯定フラグを立てる」とは、図11の「肯定」欄を1にすることである。この場合、全体識別器50は、次のサブ識別器51による識別を行わずに、全体識別処理を終了する。例えば、風景画像であると識別できれば、夕景などの識別を行わずに、全体識別処理を終了する。この場合、次のサブ識別器51による識別を省略しているので、全体識別処理の速度を高めることができる。
判別式の値が肯定閾値より大きくなければ(S204でNO)、サブ識別器51は、識別対象画像が特定のシーンに属すると判断できず、次のS206の処理を行う。
次に、サブ識別器51は、判別式の値と否定閾値とを比較する(S206)。これにより、サブ識別器51は、識別対象画像が所定のシーンに属しないかを判断する。このような判断としては、2種類ある。第1に、ある特定のシーンのサブ識別器51の判別式の値が第1否定閾値より小さければ、その特定のシーンに識別対象画像が属しないと判断されることになる(この場合、そのシーンの確信度は0%である)。例えば、風景識別器51Lの判別式の値が第1否定閾値より小さければ、識別対象画像が風景のシーンに属しないと判断されることになる。第2に、ある特定のシーンのサブ識別器51の判別式の値が第2否定閾値より大きければ、その特定のシーンとは別のシーンに識別対象画像が属しないと判断されることになる。例えば、風景識別器51Lの判別式の値が第2否定閾値より大きければ、識別対象画像が夜景のシーンに属しないと判断されることになる。
図14は、第1否定閾値の説明図である。同図において、横軸は第1否定閾値を示し、縦軸は確率を示す。グラフの太線は、True Negative Recallのグラフであり、風景画像以外の画像を風景画像ではないと正しく識別する確率を示している。グラフの細線は、False Negative Recallのグラフであり、風景画像なのに風景画像ではないと誤って識別する確率を示している。
図14から分かる通り、第1否定閾値を小さくするほど、False Negative Recallが小さくなる。このため、第1否定閾値を小さくするほど、例えば風景のシーンに属しないと識別された画像が風景画像である確率が低くなる。つまり、誤識別の確率が低くなる。
一方、第1否定閾値を小さくするほど、True Negative Recallも小さくなる。この結果、風景画像以外の画像を風景画像ではないと識別しにくくなる。その一方、全体識別処理の際に、識別対象画像が特定シーンでないことを識別できれば、部分識別処理の際に、その特定シーンのサブ部分識別器61による処理を省略してシーン識別処理速度を高めている(後述、図17のS302)。このため、第1否定閾値を小さくするほど、シーン識別処理速度は低下する。
つまり、第1否定閾値が大きすぎると誤識別の確率が高くなり、小さすぎると処理速度が低下することになる。本実施形態では、False Negative Recallを2.5%に設定するため、第1否定閾値は−1.01に設定されている。
ところで、ある画像が風景のシーンに属する確率が高ければ、必然的にその画像が夜景のシーンに属する確率は低くなる。このため、風景識別器51Lの判別式の値が大きい場合には、夜景ではないと識別できる場合がある。このような識別を行うために、第2否定閾値が設けられる。
図15は、第2否定閾値の説明図である。同図において、横軸は第2否定閾値を示し、縦軸は確率を示す。同図には、図12のRecallとPrecisionのグラフとともに、夜景のRecallのグラフが点線で描かれている。この点線のグラフに注目すると、風景の判別式の値が−0.44よりも大きければ、その画像が夜景画像である確率は2.5%である。言い換えると、風景の判別式の値が−0.44より大きい場合にその画像が夜景画像でないと識別しても、誤識別の確率は2.5%にすぎない。そこで、本実施形態では、第2否定閾値が−0.44に設定されている。
そして、判別式の値が第1否定閾値より小さい場合、又は、判別式の値が第2否定閾値より大きい場合(S206でYES)、サブ識別器51は、識別対象画像が所定のシーンに属しないと判断し(この場合、そのシーンの確信度は0%に設定される。)、否定フラグを立てる(S207)。「否定フラグを立てる」とは、図11の「否定」欄を1にすることである。例えば、第1否定閾値に基づいて識別対象画像が風景のシーンに属しないと判断された場合、「風景」欄の「否定」欄が1になる。また、第2否定閾値に基づいて識別対象画像が夜景のシーンに属しないと判断された場合、「夜景」欄の「否定」欄が1になる。
図16Aは、上記で説明した風景識別器51Lにおける閾値の説明図である。風景識別器51Lには、肯定閾値及び否定閾値が予め設定されている。肯定閾値として1.72が設定されている。否定閾値には第1否定閾値と第2否定閾値とがある。第1否定閾値として−1.01が設定されている(図16B)。また、第2否定閾値として、風景以外の各シーンに値が設定されている。
図16Bは、上記で説明した風景識別器51Lの処理の概要の説明図である。ここでは、説明の簡略化のため、第2否定閾値については夜景についてのみ説明する。風景識別器51Lは、判別式の値が1.72より大きければ(S204でYES)、識別対象画像が風景のシーンに属すると確信度100%で判断する。また、判別式の値が1.72以下であり(S204でNO)、−0.44より大きければ(S206でYES)、風景識別器51Lは、識別対象画像が夜景のシーンに属しないと判断する(即ち、夜景の確信度は0%である)。また、判別式の値が−1.01より小さければ(S206でYES)、風景識別器51Lは、識別対象画像が風景のシーンに属しないと判断する(即ち、風景の確信度は0%である)。なお、風景識別器51Lは、夕景や紅葉についても、第2否定閾値に基づいて、識別対象画像がそのシーンに属しないかを判断する。但し、本実施形態では、全体識別処理で用いる花の第2否定閾値は肯定閾値よりも大きいため、識別対象画像が花のシーンに属しないことを風景識別器51Lが判断することはない。
S202においてNOの場合、S206でNOの場合、又はS207の処理を終えた場合、全体識別器50は、次のサブ識別器51の有無を判断する(S208)。ここでは風景識別器51Lによる処理を終えた後なので、全体識別器50は、S208において、次のサブ識別器51(夕景識別器51S)があると判断する。
そして、S205の処理を終えた場合(識別対象画像が一つの特定のシーンに属すると判断された場合)、又は、S208において次のサブ識別器51がないと判断された場合(識別対象画像が特定のシーンに属すると判断できなかった場合)、全体識別器50は、全体識別処理を終了する。
なお、既に説明した通り、全体識別処理が終了すると、シーン識別部33は、全体識別処理によってシーンの識別ができたか否かを判断する(図8のS104)。このとき、シーン識別部33は、図11の識別対象テーブルを参照し、「肯定」欄に1があるか否かを判断する。
全体識別処理によってシーンの識別ができた場合(S104でYES)、部分識別処理や統合識別処理が省略される。これにより、シーン識別処理の速度が高くなる。
===部分識別処理===
図17は、部分識別処理のフロー図である。部分識別処理は、全体識別処理によってシーンの識別ができなかった場合(図8のS104でNO)に行われる。以下に説明するように、部分識別処理は、分割された部分画像のシーンをそれぞれ識別することによって、画像全体のシーンを識別する処理である。ここでは図9も参照しながら部分識別処理について説明する。
まず、部分識別器60は、複数のサブ部分識別器61の中から1つのサブ部分識別器61を選択する(S301)。部分識別器60には、サブ部分識別器61が3つ設けられている。各サブ部分識別器61は、8×8の64ブロックに分割された部分画像がそれぞれ特定のシーンに属するか否かを識別する。ここでの3つのサブ部分識別器61は、それぞれ夕景、花、紅葉のシーンを識別する。部分識別器60は、夕景→花→紅葉の順に、サブ部分識別器61を選択する。このため、最初には、部分画像が夕景のシーンに属するか否かを識別するサブ部分識別器61(夕景部分識別器61S)が選択される。
次に、部分識別器60は、識別対象テーブル(図11)を参照し、選択したサブ部分識別器61を用いてシーンを識別すべきか否かを判断する(S302)。ここでは、部分識別器60は、識別対象テーブルにおける「夕景」欄の「否定」欄を参照し、ゼロであればYESと判断し、1であればNOと判断する。なお、全体識別処理の際に、夕景識別器51Sが第1否定閾値により否定フラグを立てたとき、又は、他のサブ識別器51が第2否定閾値により否定フラグを立てたとき、このS302でNOと判断される。仮にNOと判断されると夕景の部分識別処理は省略されることになるので、部分識別処理の速度が高くなる。但し、ここでは説明の都合上、YESと判断されるものとする。
次に、サブ部分識別器61は、8×8の64ブロックに分割された部分画像の中から、1つの部分画像を選択する(S303)。
図18は、夕景部分識別器61Sが選択する部分画像の順番の説明図である。部分画像から画像全体のシーンを識別するような場合、識別に用いられる部分画像は、被写体(シーンを象徴する主要被写体)が存在する部分であることが望ましい。そこで、本実施形態では、数千枚のサンプルの夕景画像を用意し、各夕景画像を8×8の64ブロックに分割し、夕景部分画像(夕景の太陽と空(主要被写体)の部分画像)を含むブロックを抽出し、抽出されたブロックの位置に基づいて各ブロックにおける夕景部分画像の存在確率を算出した。そして、本実施形態では、存在確率の高いブロックから順番に、部分画像が選択される。なお、図に示す選択順序の情報は、プログラムの一部としてメモリ23に格納されている。
なお、夕景画像の場合、画像の中央付近から上半分に夕景の空が広がっていることが多いため、中央付近から上半分のブロックにおいて存在確率が高くなる。また、夕景画像の場合、画像の下1/3では逆光で陰になり、部分画像単体では夕景か夜景か区別がつかないことが多いため、下1/3のブロックにおいて存在確率が低くなる。花画像の場合、花を中央付近に配置させる構図にすることが多いため、中央付近における花部分画像の存在確率が高くなる。
次に、サブ部分識別器61は、選択された部分画像の部分特徴量及び全体特徴量に基づいて、その部分画像が特定のシーンに属するか否かを判断する(S304)。この際に用いられる部分特徴量は、特徴量取得部40が取得した複数種類の特徴量から、部分画像に特定のシーンの特徴が顕著に現れやすい特徴量を選択的に用いる。これにより、サブ識別器61による識別の精度を向上させることができる。
また、サブ部分識別器61には、全体識別器50のサブ識別器51と同様に、サポートベクタマシン(SVM)による識別手法が用いられている。なお、サポートベクタマシンについては、後述する。判別式の値が正の値であれば、部分画像が特定のシーンに属すると判断し、サブ部分識別器61は正カウント値をインクリメントする。また、判別式の値が負の値であれば、部分画像が特定のシーンに属しないと判断し、サブ部分識別器61は負カウント値をインクリメントする。
次に、サブ部分識別器61は、正カウント値が肯定閾値よりも大きいか否かを判断する(S305)。なお、正カウント値は、特定のシーンに属すると判断された部分画像の数を示すものである。正カウント値が肯定閾値より大きければ(S305でYES)、サブ部分識別器61は、識別対象画像が特定のシーンに属すると確信度100%で判断し、肯定フラグを立てる(S306)。この場合、部分識別器60は、次のサブ部分識別器61による識別を行わずに、部分識別処理を終了する。例えば、夕景画像であると識別できれば、花や紅葉の識別を行わずに、部分識別処理を終了する。この場合、次のサブ部分識別器61による識別を省略しているので、部分識別処理の速度を高めることができる。
正カウント値が肯定閾値より大きくなければ(S305でNO)、サブ部分識別器61は、識別対象画像が特定のシーンに属すると判断できず、次のS307の処理を行う。
サブ部分識別器61は、正カウント値と残りの部分画像数との和が肯定閾値よりも小さければ(S307でYES)、S309の処理へ進む。正カウント値と残りの部分画像数との和が肯定閾値よりも小さい場合、残り全ての部分画像によって正カウント値がインクリメントされても正カウント値が肯定閾値より大きくなることがないので、S309に処理を進めることによって、残りの部分画像についてサポートベクタマシンによる識別を省略する。これにより、部分識別処理の速度を高めることができる。
サブ部分識別器61がS307でNOと判断した場合、サブ部分識別器61は、次の部分画像の有無を判断する(S308)。この判断は、上記残り部分画像数がゼロか否かで行うことができる。なお、本実施形態では、64ブロックに分割された部分画像の全てを順に選択していない。図18において太枠で囲まれた上位10番目までの10個の部分画像だけを順に選択している。このため、10番目の部分画像の識別を終えれば、サブ部分識別器61は、S308において次の部分画像はないと判断する(この点を考慮して、S307の「残りの部分画像数」も決定される。)。
図19は、64ブロックに分割された部分画像のうち、上位10番目までの10個の部分画像だけで夕景画像の識別をしたときのRecall及びPrecisionのグラフである。図に示すような肯定閾値を設定すれば、正答率(Precision)を80%程度に設定でき、再現率(Recall)を90%程度に設定でき、精度の高い識別が可能である。
本実施形態では、10個の部分画像だけで夕景画像の識別を行っている。このため、本実施形態では、64ブロックの全ての部分画像を用いて夕景画像の識別を行うよりも、部分識別処理の速度を高めることができる。
また、本実施形態では、夕景部分画像の存在確率の高い上位10番目までの部分画像を用いて夕景画像の識別を行っている。このため、本実施形態では、存在確率を無視して抽出された10個の部分画像を用いて夕景画像の識別を行うよりも、Recall及びPrecisionをともに高く設定することが可能になる。
また、本実施形態では、夕景部分画像の存在確率の高い順に部分画像を選択している。この結果、早い段階でS305の判断がYESになりやすくなる。このため、本実施形態では、存在確率の高低を無視した順で部分画像を選択したときよりも、部分識別処理の速度を高めることができる。
S307においてYESと判断された場合、又は、S308において次の部分画像がないと判断された場合、サブ部分識別器61は、負カウント値が否定閾値よりも大きいか否かを判断する(S309)。この否定閾値は、前述の全体識別処理における否定閾値(図10のS206)とほぼ同様の機能を果たすものなので、詳しい説明は省略する。S309でYESと判断された場合、図10のS207と同様に、否定フラグを立てる(S310)。
S302においてNOの場合、S309でNOの場合、又はS310の処理を終えた場合、部分識別器60は、次のサブ部分識別器61の有無を判断する(S311)。夕景部分識別器61Sによる処理を終えた後の場合、サブ部分識別器61として花部分識別器61Fや紅葉部分識別器61Rがまだあるので、部分識別器60は、S311において、次のサブ部分識別器61があると判断する。
そして、S306の処理を終えた場合(識別対象画像が特定のシーンに属すると判断された場合)、又は、S311において次のサブ部分識別器61がないと判断された場合(識別対象画像が特定のシーンに属すると判断できなかった場合)、部分識別器60は、部分識別処理を終了する。
なお、既に説明した通り、部分識別処理が終了すると、シーン識別部33は、部分識別処理によってシーンの識別ができたか否かを判断する(図8のS106)。このとき、シーン識別部33は、図11の識別対象テーブルを参照し、「肯定」欄に1があるか否かを判断する。
部分識別処理によってシーンの識別ができた場合(S106でYES)、統合識別処理が省略される。これにより、シーン識別処理の速度が高くなる。
===サポートベクタマシン===
統合識別処理について説明する前に、全体識別処理のサブ識別器51や部分識別処理のサブ部分識別器61において用いられている識別手法を実現するために用いたサポートベクタマシン(SVM)について説明する。
図20Aは、線形サポートベクタマシンによる判別の説明図である。ここでは、2つの特徴量x1、x2によって、学習用サンプルを2次元空間に示している。学習用サンプルは2つのクラスA、Bに分けられている。図中では、クラスAに属するサンプルは丸で示されており、クラスBに属するサンプルは四角で示されている。
学習用サンプルを用いた学習によって、2次元空間を2つに分ける境界が定義される。境界は、<w・x>+b=0で定義される(なお、x=(x1,x2)であり、wは重みベクトルであり、<w・x>はwとxの内積である)。但し、境界は、マージンが最大になるように、学習用サンプルを用いた学習によって定義される。つまり、図の場合、境界は、太点線ではなく、太実線のようになる。
判別は、判別式f(x)=<w・x>+bを用いて行われる。ある入力x(この入力xは学習用サンプルとは別である)について、f(x)>0であればクラスAに属すると判別され、f(x)<0であればクラスBに属すると判別される。
ここでは2次元空間を用いて説明しているが、これに限られない(つまり、特徴量は2以上でも良い)。この場合、境界は超平面で定義される。
ところで、2つのクラスに線形関数で分離できないことがある。このような場合に線形サポートベクタマシンによる判別を行うと、判別結果の精度が低下する。そこで、入力空間の特徴量を非線形変換すれば、すなわち入力空間からある特徴空間へ非線形写像すれば、特徴空間において線形関数で分離することができるようになる。非線形サポートベクタマシンでは、これを利用している。
図20Bは、カーネル関数を用いた判別の説明図である。ここでは、2つの特徴量x1、x2によって、学習用サンプルを2次元空間に示している。図20Bの入力空間からの非線形写像が図20Aのような特徴空間になれば、線形関数で2つのクラスに分離することが可能になる。この特徴空間においてマージンが最大になるように境界が定義されれば、特徴空間における境界の逆写像が、図20Bに示す境界になる。この結果、図20Bに示すように、境界は非線形になる。
本実施形態ではガウスカーネルを利用することにより、判別式f(x)は次式のようになる(なお、Mは特徴量の数であり、Nは学習用サンプルの数(若しくは境界に寄与する学習用サンプルの数)であり、wiは重み係数であり、yjは学習用サンプルの特徴量であり、xjは入力xの特徴量である)。
ある入力x(この入力xは学習用サンプルとは別である)について、f(x)>0であればクラスAに属すると判別され、f(x)<0であればクラスBに属すると判別される。また、判別式f(x)の値が大きい値になるほど、入力x(この入力xは学習用サンプルとは別である)がクラスAに属する確率が高くなる。逆に、判別式f(x)の値が小さい値になるほど、入力x(この入力xは学習用サンプルとは別である)がクラスAに属する確率が低くなる。前述の全体識別処理のサブ識別器51や部分識別処理のサブ部分識別器61では、上記のサポートベクタマシンの判別式f(x)の値を用いている。
したがって、プリンタ4は、サポートベクタの判別式f(x)の定数に関する定数情報と、判別式f(x)を求めるために用いた特徴量の種類を特定するための情報とを少なくとも実装する必要があるが、SVMそのものを実装する必要はない。なお、定数情報には、上記境界に寄与する学習用サンプルの特徴量yjの値と、重み係数wiの値と、ガウスカーネルに用いるカーネル係数σの値、バイアスbの値がある。
なお、学習用サンプルとは別に評価用サンプルが用意されている。前述のRecallやPrecisionのグラフは、評価用サンプルに対する識別結果(判別式f(x)の値)に基づくものである。
===統合識別処理===
前述の全体識別処理や部分識別処理では、サブ識別器51やサブ部分識別器61における肯定閾値を比較的高めに設定し、Precision(正解率)を高めに設定している。なぜならば、例えば全体識別部の風景識別器51Lの正解率が低く設定されると、風景識別器51Lが紅葉画像を風景画像であると誤識別してしまい、紅葉識別器51Rによる識別を行う前に全体識別処理を終えてしまう事態が発生してしまうからである。本実施形態では、Precision(正解率)が高めに設定されることにより、特定のシーンに属する画像が特定のシーンのサブ識別器51(又はサブ部分識別器61)に識別されるようになる(例えば紅葉画像が紅葉識別器51R(又は紅葉部分識別器61R)によって識別されるようになる)。
但し、全体識別処理や部分識別処理のPrecision(正解率)を高めに設定すると、全体識別処理や部分識別処理ではシーンの識別、即ち一つのシーン修正候補の決定(S108)ができなくなる可能性が高くなる。そこで、本実施形態では、全体識別処理及び部分識別処理によってシーンの識別ができなかった場合、以下に説明する統合識別処理が行われる。
図21は、統合識別処理のフロー図である。以下に説明するように、統合識別処理は、全体識別処理の各サブ識別器51の判別式の値に基づいて、最も確信度の高いシーンを選択する処理である。
まず、統合識別器70は、5つのサブ識別器51から、判別式の値と、その判別式の値に対応するPrecision(正解率)の値を取得する(S401)。このとき、全体識別処理の際に各サブ識別器51が算出した判別式の値が用いられる。また、このとき、否定フラグが立っているシーンのサブ識別器51からの判別式の値及び正解率の取得を省略してもよく、これにより、処理速度が高めることができる。
次に、統合識別器70は、判別式の値が正(プラス)であって、正解率の値が高いシーンが存在するか否かを判断する(S402)。ここで、正解率が高いか否かは、正解率が所定の閾値、例えば90%よりも大きいか否かで判断される。
判別式の値が高いシーンが存在する場合(S402でYES)、正解率が最大値のシーンの欄に肯定フラグを立てて(S403)、統合識別処理を終了する。これにより、最大値のシーンに識別対象画像が属すると判断される。このシーンは、デフォルトのシーン修正候補として設定される。
このときのシーン修正候補の確信度は、全体識別処理によって識別されたシーンの確信度100%よりも低く設定される。この理由は、全体識別処理では誤識別の確率を非常に低くするためにPrecision(正解率)が高め(例えば97.5%)に設定されており、一方、統合識別処理は全体識別処理や部分識別処理においてシーンの識別ができなかった場合に行われるからである。つまり、全体識別処理と統合識別処理の識別結果が同じ「風景」であっても、確信度が異なる場合がある。本実施形態では、統合識別処理の識別結果として得られたデフォルトのシーン修正候補の確信度の値を90%で固定的に設定する。これに代えて、判別式の値とPrecisionとの関係を示すテーブルを予め用意しておくことにより、判別式の値に対応するPrecisionの値を確信度として用いてもよい。
一方、正解率の値が高いシーンが存在しない場合(S402でNO)、肯定フラグを立てずに、統合識別処理を終了する。これにより、図11の識別対象テーブルの肯定欄において、1のシーンが無いままの状態になる。つまり、識別対象画像が、どのシーンに属するか識別できなかったことになる。
なお、既に説明した通り、統合識別処理が終了すると、シーン識別部33は、統合識別処理によってシーンの識別ができたか否かを判断する(図8のS108)。このとき、シーン識別部33は、図11の識別対象テーブルを参照し、「肯定」欄に1があるか否かを判断することになる。S402でNOとの判断の場合、S108の判断もNOになり、シーン修正候補「その他」が確信度80%で決定される。
===ユーザ確認機能===
<概要>
前述したように、ユーザは、モード設定ダイヤル2Aによって、撮影モードを設定することができる。そして、デジタルスチルカメラ2は、設定された撮影モードや撮影時の測光結果等に基づいて、撮影条件(露光時間、ISO感度等)を決定し、決定した撮影条件にて被写体を撮影する。撮影後、デジタルスチルカメラ2は、撮影時の撮影条件を示す撮影データを、画像データとともに、画像ファイルとしてメモリカード6に保存する。
ところで、ユーザが撮影モードを設定(変更)し忘れたために、撮影条件に不適切な撮影モードが設定されたまま、撮影が行われることがある。例えば、夜景モードが設定されたまま、日中の風景が撮影されることがある。この場合、画像ファイルの画像データは日中の風景の画像であるにも関わらず、撮影データには夜景モードを示すデータが記憶されることになる(例えば図5の撮影シーンタイプデータが「3」になる)。このとき、ユーザは、風景ではなく夜景を示す撮影データが画像ファイルに格納されていることを視認することができない。
一方、前述のシーン識別処理機能を備えないが、画像ファイルの撮影データに基づいて画像データの自動補正を行うプリンタも存在する。そして、仮に不適切な撮影モードで撮影された画像ファイルがこのようなプリンタによって印刷されると、誤った撮影データに基づいて画像データが補正されてしまうことになる。
そこで、本実施形態のプリンタ4では、シーン識別処理結果(シーン修正候補)と、画像ファイルのシーン情報(撮影シーンタイプデータや撮影モードデータ)の示すシーンとが不一致の場合、上記ユーザ確認機能にしたがって、シーン識別処理結果のシーンをユーザに確認するための確認画面を表示機構90の表示部に表示する。これにより、プリンタ4は上記不一致をユーザに報知することができ、ユーザは表示部を閲覧することにより、それを確認することができる。
なお、ユーザ確認が済んだシーンに関するシーン情報を付加データとして画像ファイルに格納してもよい。これにより、ユーザが別のプリンタで印刷を行う際に、シーン識別処理機能を備えないが自動補正処理を行うプリンタが用いられたとしても、適切に画像データが補正されるようになり、プリンタ4では、顔識別処理やシーン識別処理を再度実行する必要がなくなる。なお、シーン識別処理結果のシーン情報を画像ファイルに格納する方法としては、元のシーン情報を変更する方法と、元のシーン情報を残したままシーン識別処理結果のシーンを追加する方法とがあるが、いずれであってもよい。また、このとき、確信度に関する確信度データをMakernoteIFD領域に記録してもよい。確信度データは、判別式の値、判別式の値に対応するPrecisionの値、及びシーン修正候補の確信度の値のいずれか一つを用いて作成される。
図22は、本実施形態の不一致関連情報表示処理を含む印刷処理のフロー図である。この印刷処理は、メモリ23に記憶された印刷プログラムをCPU22が実行することによって実現される。また、本実施形態の不一致関連情報の表示は、前述のシーン識別処理後であって、印刷機構10による印刷開始前に行われる。
まず、プリンタ側コントローラ20は、画像ファイルの撮影データを取得する(S501)。具体的には、プリンタ側コントローラ20は、画像ファイルの付加データである撮影シーンタイプデータ(ExifSubIFD領域)や撮影モードデータ(MakernoteIFD領域)を取得する。これにより、プリンタ側コントローラ20は、画像ファイルの付加データの示すシーンを解析できる。
次に、プリンタ側コントローラ20は、識別結果を取得する(S502)。識別結果は、前述の顔識別部32の顔識別結果又は前述のシーン識別部33のシーン識別結果である。これにより、プリンタ側コントローラ20は、画像ファイルの画像データが「人物」「風景」「夕景」「夜景」「花」「紅葉」「その他」のいずれのシーンに属するかを推定できる。
次に、プリンタ側コントローラ20は、付加データの示すシーンと、推定されるシーン(シーン修正候補)とを比較する(S503)。2つのシーンが不一致ではない場合(S503でNO)、S510に進む。
2つのシーンが不一致の場合(S503でYES)、ユーザ確認機能に基づいて、後述するユーザ確認画面(図23乃至図26及び図29A乃至図30参照)を表示部に表示し(S504)、ユーザによる確認が入力されるのを待機する(S505)。
そして、ユーザが入力機構80の操作部を用いることにより、シーン修正候補を容認する旨の確認(ユーザ承認)がユーザから得られた場合(S505でYES)、印刷機構10は、シーン修正候補に応じた画像補正を画像データに施して(S506)、該画像データに対応する画像を印刷して(S507)、本処理を終了する。また、2つのシーンが一致した場合にも(S503でNO)、シーン修正候補に応じた画像補正を実行し(S506)、画像印刷を行って(S507)、本処理を終了する。
一方、ユーザ承認が得られなかった場合には(S505でNO)、S501で取得した撮影データの撮影シーンタイプデータ又は撮影モードデータが示すシーンに応じた画像補正を画像データに施して(S510)、該画像データに対応する画像を印刷する(S507)。そして、本処理を終了する。
図22の処理によれば、2つのシーンが不一致の場合、ユーザ確認機能により、プリンタ4にユーザ確認画面が表示される(S504)ので、プリンタ4は、2つのシーンの不一致をユーザに報知することができる。このとき、ユーザは表示部を閲覧することにより、不一致に関する不一致関連情報を確認することができる(S505)。ここで、従来のプリンタではユーザ確認画面が表示されることがない。したがって、ユーザ確認画面が表示されること自体が不一致関連情報の表示に該当する。
このとき、ユーザは、入力機構80の操作部を介して承認をプリンタ4に入力することができ、この結果、シーン修正候補に応じた画像補正が施された画像データに対応する画像の印刷が行われる(S506〜S507)。したがって、ユーザ承認は、シーン修正候補を選択すること、及びそれに伴って画像補正部34が、撮影シーンタイプデータ又は撮影モードデータが示すシーンに応じた画像補正を選択せずに、シーン修正候補に基づいた画像補正を選択することに該当する。一方で、ユーザは、入力機構80の操作部を介して承認ではない旨(否認)をプリンタ4に入力することも可能であり、この場合、撮影シーンタイプデータ又は撮影モードデータが示すシーンに応じた画像補正が施された画像データに対応する画像の印刷が行われる(S510,S507)。したがって、ユーザは、画像処理の種類を選択して、印刷された画像の画質を向上させることができる。
===不一致関連情報の表示===
上記のS503に続くS504〜S505の処理としては、様々な形態が考えられる。以下に、S504のユーザ確認処理の際に表示される表示画面の実施例を説明する。表示画面には、少なくとも上記S503において2つのシーンが不一致であった旨の情報又は不一致に関連する情報(以下、これらを「不一致関連情報」という)が表示される。
<実施例1:メッセージ表示>
不一致関連情報は、文字などのメッセージとして表示することが可能である。これにより、ユーザは文字を読むことにより不一致関連情報を確認することができる。
図23は、図22のステップS504において表示される表示画面の第1の例を示す図である。
図23に示す不一致関連情報メッセージ表示画面1200上には、画像表示領域1201と、メッセージ表示領域1210と、制限時間表示領域1220と、確信度表示領域1230と、アイコン表示領域1240とが設けられている。さらに、表示画面1200上には、「はい」ボタン1250と、「いいえ」ボタン1251と、「設定変更」ボタン1260とが配置されている。
図23において、画像表示領域1201には、画像記憶部31Aに記憶されている識別対象画像が表示される。ここで表示される画像は、画像補正部34がシーン修正候補に応じた画像補正を行った後の画像データに対応する画像(以下、「補正後画像」という)であることが好ましい。これにより、ユーザは、印刷前に補正後画像を確認することができる。なお、補正後画像に代えて、補正前画像を表示してもよい。この場合、補正前画像には、画像補正部34が撮影シーンタイプデータ又は撮影モードデータに応じた画像補正を行った後の画像データに対応する画像と、画像ファイルの画像データそのもの(sRGB色空間に変換したもの)に対応する画像との2種類があり、予め設定されたいずれか一方が表示される。
メッセージ表示領域1210には、撮影シーンタイプデータが示すシーンと、デフォルトのシーン修正候補とが不一致であることを示すメッセージが不一致関連情報として表示される。図23に示す例では、撮影シーンタイプデータが示すシーン「風景」から顔識別部32が決定したデフォルトのシーン修正候補「人物」へと撮影データを変更するか否かをメッセージ「風景→人物にモードを変更しますか?」でユーザに確認している。
このように、「変更」の旨(符号1210a参照)又はそれに類似した内容が少なくとも表示されることにより、ユーザは、上記不一致のために、プリンタ4から「変更」の確認が促されていることを容易に理解することができる。また、符号1210bに示すメッセージ「人物」のように、シーン修正候補に関する情報としてシーンの名称が表示されるので、ユーザは、画像データにシーン「人物」に応じた画像補正が施されることが容易に理解することができる。さらに、「風景→人物」のように、撮影シーンタイプデータが示すシーンが、上記デフォルトのシーン修正候補と関連付けて表示される。これにより、ユーザは、撮影したときに、デジタルスチルカメラに設定されていた撮影モードを容易に思い出すことができる。
制限時間表示領域1220には、例えば「あと10秒」という印刷機構10による印刷開始(S507)までの制限時間の残り時間を示すメッセージが表示される。このように、制限時間に関する情報が表示されるので、ユーザは、当該制限時間がタイムアウト(経過)するまでの間ボタン1250,1251を押下することなく放置することにより、不一致関連情報を確認する手間を省略することができると共に、自動的に印刷画像を得ることができる。また、ユーザは、シーン修正候補の確信度が高いからこそ制限時間が設定されていることを容易に把握することができるので、制限時間に関する情報を表示することにより、ユーザのプリンタ4に対する信頼性を向上させることができる。なお、制限時間の上限値はユーザが設定変更可能に構成されていることが好ましい。
確信度表示領域1230は、デフォルトのシーン修正候補の確信度が表示される。表示された確信度に基づいて、ユーザは、プリンタ4が表示画面を介してユーザに推奨しているシーン修正候補の確からしさを確認することができると共に、撮影シーンタイプデータが示すシーンの確からしさも容易に推定することができる。したがって、ユーザは、シーン修正候補とデジタルスチルカメラに設定した撮影モードとを比較して、どの程度不一致であるのかを確認することが容易に行うことができる。
アイコン表示領域1240には、デフォルトのシーン修正候補に対応する画像がアイコンとして表示される。なお、アイコンに限られることはなく、ユーザが撮影シーン又は撮影モードを容易に想起することができる画像であればいかなるものであってもよい。
ボタン1250,1251は、ユーザが入力機構80の操作部を用いることによって選択的に押下されるトグルタイプのボタン(トグルボタン)であり、押下により、シーン修正候補に応じた画像補正を行うか否かが表示制御部36を介してCPU22に入力される。「はい」ボタン1250は、トグルボタンが押下されたかのように見える状態(選択状態)でデフォルト表示されており、このことは、シーン修正候補の確信度が十分に高いことを示すと共に、制限時間表示領域1220に表示されている制限時間がタイムアウトしたときに自動的に選択されることを示している。
ここで、「いいえ」ボタン1251が押下されると、撮影シーンタイプデータが示すシーン(図23に示す例ではシーン「風景」)に応じた画像補正が施された画像データに対応する画像が印刷される(S510,S507)。この際、シーン情報の修正では、ユーザ確認の結果、承認が得られなかった旨の情報が付加データに追加(MakerNote領域に記録)される。これにより、本実施形態のプリンタ4で実行した顔識別処理やシーン識別処理の結果を他のプリンタでも参照することができる。また、プリンタ4は、識別対象画像に対する顔識別処理やシーン識別処理を再度実行する必要をなくすことができる。
一方、「はい」ボタン1250が押下された場合や、上記制限時間がタイムアウトした場合には、シーン修正候補に応じた画像補正が施された画像データに対応する画像が印刷される(S506〜S507)。シーン修正候補「人物」は、撮影シーンタイプデータとして格納可能であるので、シーン情報の修正の際には、撮影シーンタイプデータが「風景」を示す「1」から「人物」を示す「2」に書き換えられる。つまり、ユーザ確認の結果、承認が得られた場合には、シーン識別結果に基づいて決定されたシーン修正候補に関するシーン情報が画像ファイルに格納される。本実施形態のプリンタ4で実行した顔識別処理やシーン識別処理の結果を他のプリンタでも参照することができる。プリンタ4は、識別対象画像に対する顔識別処理やシーン識別処理を再度実行する必要をなくすことができる。
また、「設定変更」ボタン1260が押下されると、不一致関連情報メッセージ表示画面1200は、ユーザ確認で用いる表示画面の表示設定に関するメニュー画面(不図示)に遷移する。これにより、ユーザは、実施例1で説明した表示画面及び後述する実施例2〜6の表示画面の間で表示画面の切り替えをマニュアルで行うことができる。「設定変更」ボタン1260は、実施例2〜6の表示画面にも表示されるが以下の説明ではその説明及び図示を省略する。
本実施例(図23)によれば、各表示領域1210,1220,1230,1240,1250において、シーン修正候補があることをユーザに想起させる情報を不一致関連情報として表示することにより、不一致関連情報をユーザに報知する。このとき、ユーザは本実施例による表示画面を介してシーン修正候補を確認して、所望の画像補正をプリンタ4に指定することができる。この結果、デジタルスチルカメラによる撮影完了後であっても、プリンタ4において所望の画像補正をユーザが選択することができ、もって、画像データの内容と付加データの内容との不一致により生じる不都合(例えば不適切な画像補正)を解消することができる。したがって、プリンタ4は、このような表示がなされないプリンタと比較してユーザビリティが高い。
また、本実施例によれば、不一致関連情報がメッセージ表示領域1210に文字などのメッセージで表示されるので、ユーザは、不一致関連情報があることをユーザ確認画面が単に表示された場合に比べてより容易に把握することができる。
なお、図23に示す例では、撮影シーンタイプデータを用いたが、撮影モードデータを用いてよい。
<実施例2:画像並列表示>
不一致関連情報は、並列表示された二つの画像で表現することが可能である。これにより、ユーザは並列表示された二つの画像を比較することにより、不一致関連情報を確認することができる。
図24は、図22のステップS504において表示される表示画面の第2の例を示す図である。なお、図24において、実施例1(図23)と同様の構成要素又は表示領域には、同一の符号を付与しその説明を省略する。
図24に示す並列表示画面1500上に設けられた画像表示領域1201には、補正前画像1510と、補正後画像1511とが並列的に表示される。補正後画像1511は、画像補正部34がシーン修正候補に応じた画像補正を行った後の画像データに対応する画像に該当する。補正前画像1510は、画像補正部34が撮影シーンタイプデータが示すシーンに応じた画像補正を行った後の画像データに対応する画像に該当する。
また、並列表示画面1500上には、「OK」ボタン1550が配置されている。
図24において、ユーザにより、表示された画像1510,1511の一方が選択されると、選択された画像のフレームが太くなる。続いて、ユーザにより「OK」ボタン1550が押下されると、画像記憶部31Aに記憶されている画像データに対して、ユーザの選択に応じた画像補正を選択すべきである旨が表示制御部36を介してCPU22に入力される。具体的には、補正前画像1510が選択された状態で「OK」ボタン1550が押下されると、撮影シーンタイプデータが示すシーンに応じた画像補正が施された画像の印刷が行われ(S510,S507)、一方、補正後画像1511が選択された状態で「OK」ボタン1550が押下されると、シーン修正候補に応じた画像補正が施された画像データに対応する画像の印刷が行われる(S506〜S507)。
本実施例(図24)によれば、画像表示領域1201に補正後画像1511を不一致関連情報として表示することにより、不一致関連情報をユーザに報知するので、上記実施例1と同様の効果を奏することができる。また、本実施例によれば、画像表示領域1201において、互いに異なる二つの画像である補正前画像1510及び補正後画像1511が表示されるので、ユーザは、不一致関連情報があることをユーザ確認画面が単に表示された場合に比べてより容易に把握することができる。また、補正前画像1510と、補正後画像1511とが並列的に表示されるので、ユーザは、補正前画像1510の画質と、補正後画像1511の画質と間の差異を簡便に比較することができる。
なお、図24の並列表示画面1500に、実施例1(図23)に示したようなメッセージ表示領域1210、制限時間表示領域1220、及び確信度表示領域1230の少なくとも1つを設けてもよい。
なお、図24に示す例では、撮影シーンタイプデータを用いたが、撮影モードデータを用いてよい。また、補正前画像1510として、画像ファイルの画像データそのもの(sRGB色空間に変換したもの)に対応する画像を用いてもよい。
<実施例3:部分結合画像表示>
不一致関連情報は、実施例2(図24)で上述したように、並列表示された二つの画像で表現することが可能である。しかしながら、上記実施例2のように、補正前画像1510及び補正後画像1511が離間して配置されていると、二つの画像の比較がユーザにとって困難な場合がある。そこで、本実施例では、補正前画像の1ブロックと、補正後画像の1ブロックとを用いて、双方が見た目上結合して形成された一つの画像(以下、「部分結合画像」という)を構成する。これにより、補正前画像と補正後画像との間には境界線が形成され、ユーザはこの境界線の近傍において画像補正による画像の画質の差異をより明確に把握することができる。
図25は、図22のステップS504において表示される表示画面の第3の例を示す図である。なお、図25において、実施例1(図23)と同様の構成要素又は表示領域には、同一の符号を付与しその説明を省略する。
図25に示す部分結合画像表示画面1700上に設けられた画像表示領域1201には、補正前画像から抽出された1ブロックの部分補正前画像1710と、補正後画像から抽出された1ブロックの部分補正後画像1711とが表示される。部分補正前画像1710及び部分補正後画像1711は、上記部分結合画像を構成する。図25に示す境界線1720は、部分補正前画像1710及び部分補正後画像1711間の境界を示しているが、画像として実際に表示されたものではない。
ここで、図25に示す例では、上記補正前画像は、撮影シーンタイプデータが示すシーン「風景」に基づいて画像補正した後の画像データに対応する画像に該当する。上記補正後画像は、シーン修正候補「人物」に基づいて画像補正した後の画像データに対応する画像に該当する。
また、部分結合画像表示画面1700には、マーク画像1730,1731が表示されている。マーク画像1730は、撮影シーンタイプデータが示すシーンに関する情報が文字やアイコンなどの画像で表示されたものである。マーク画像1731は、シーン修正候補に関する情報が文字やアイコンなどの画像で上記不一致関連情報として表示されたものである。
図25において、マーク画像1731は、ユーザが入力機構80の操作部を用いることによって選択的に押下され、これにより、デフォルトのシーン修正候補のシーンに応じた画像補正を行う旨が表示制御部36を介してCPU22に入力される。同様に、マーク画像1730を押下すると、撮影シーンタイプデータが示すシーンに応じた画像補正を行う旨がCPU22に入力される。
以下、図25に示す部分結合画像表示画面1700の表示方法を説明する。この表示方法は、表示制御部36が図25に示すような表示画面を表示するための表示用データを作成するときに用いられる。
まず、表示制御部36は、図25に示すような境界線1720の位置を決定する。表示制御部36は、通常は、画像表示領域1201又は識別対象画像の短辺に平行な画像表示領域1201の中央に境界線を設定する。ただし、デフォルトのシーン修正候補が「人物」である場合には、主要被写体である人物を容易に特定することができるため、顔画像の中心に境界線を設定する。ここで、顔画像の中心は、顔識別部32が顔識別処理において顔長さを検出する際に用いた顔部分の中心線によって決定される。
次に、設定した境界線1720の左側に部分補正前画像1710が配置されるように、表示制御部36は、補正前画像の左側の画像を表示する。同様に、設定した境界線1720の右側に部分補正後画像1711が配置されるように、表示制御部36は、補正後画像の右側の画像を表示する。これらの結果、部分結合画像が表示される。部分結合画像では、識別対象画像(ユーザにとっては印刷対象の画像)における被写体の配置が維持されている。したがって、ユーザは、違和感なく画像を閲覧することができる。
このとき、表示制御部36は、マーク画像1730及びマーク画像1731は、それぞれ、部分補正前画像1710の右上部及び部分補正後画像1711の右上部に表示する。これにより、図25に示すような表示画面が構成される。ここで、マーク画像1730が境界線1720の近傍左側に配置されるので、ユーザは、マーク画像1730の右側近傍を探すことにより、境界線1720の位置を容易に把握することができる。また、マーク画像1731が画像表示領域1201の右上部に配置されるので、ユーザは、表示画面1700の右上部を一瞥するだけで、マーク画像1731を発見することができ、当該マーク画像1731からシーン修正候補に関する情報を容易に取得することができる。
本実施例(図25)によれば、画像表示領域1201に部分補正後画像1711やマーク画像1731を不一致関連情報として表示することにより、不一致関連情報をユーザに報知するので、上記実施例1と同様の効果を奏することができる。また、本実施例によれば、画像表示領域1201において、互いに異なる二つの画像である部分補正前画像1710及び部分補正後画像1711が表示される。本実施例は、二つの画像が一画面内に表示される点では実施例2と共通するので、実施例2と同様の効果を奏することができる。また、ユーザは、境界線1720の近傍において部分補正前画像1710の画質と部分補正後画像1711の画質の間の差異をより明確に把握することができる。さらに、デフォルトのシーン修正候補が「人物」である場合には、顔画像の中心線に境界線1720が配置されるので、ユーザは、顔画像上で画質の差異の把握を行うことができ、「人物」に応じた画像補正を施すのが適切であるか否かを効率的に判断することができる。
なお、上記実施例では、画像表示領域1201又は識別対象画像の中心線として、短辺に平行な中心線を用いたが、長辺に平行な中心線を用いてもよい。
また、上記実施例では、撮影シーンタイプデータを用いたが撮影モードタイプデータを用いてもよい。また、補正前画像としては、画像ファイルの画像データそのもの(sRGB色空間に変換したもの)に対応する画像を用いてもよい。
さらに、上記実施例では、シーン修正候補が「人物」である場合に、境界線1720の位置を顔画像の中心線の位置に設定したが、これに限られることはない。識別対象画像において主要被写体を特定することができる場合には、その主要被写体の中心に境界線1720を設定することが好ましい。例えば、ExifSubIFDに格納されている被写体範囲に関する情報などを用いることにより主要被写体の中心位置を決定してもよい。さらに、この場合には、横長画像か否かの情報を用いることにより主要被写体の中心線の方向を決定することにより、境界線1720の設定を行うことが可能である。
<実施例4:サムネイル画像表示>
表示機構90の表示部には、画像ファイルの付加データに含まれているサムネイル画像データを用いることにより、複数の画像の各々が縮小された状態で一覧表示することが可能である。この際、一覧表示された複数の画像(サムネイル画像)の各々に対して、実施例1(図23)の表示画面1200よりも情報量が低減するものの、同様に不一致関連情報を表示することが可能である。これにより、ユーザは、各画像に不一致関連情報が有るか無いかを確認することが容易になる。
図26は、図22のステップS504において表示される表示画面の第4の例を示す図である。なお、図26において、実施例1(図23)と同様の構成要素又は表示領域には、同一の符号を付与しその説明を省略する。
図26に示すサムネイル画像表示画面1300上に設けられた画像表示領域1201には、画像ファイルの付加データに含まれているサムネイル画像データを用いることにより、9枚のサムネイル画像が一覧表示されている。これらのサムネイル画像は、縮小表示されたものであるのでユーザにとっては画質の高さが識別困難である。したがって、画像表示領域1201にサムネイル画像を表示するために、対応する画像データに画像補正を施す必要はない。
また、サムネイル画像の上には、図26に示すように、撮影日時によって特定される撮影順序と同一の数字が表示される。これにより、画像ファイルに10枚以上の画像データが含まれている場合であっても、ユーザは、画像表示領域1201上に表示された各サムネイル画像が画像ファイルにおいて何番目の撮影順序の写真であるのかを容易に特定することができる。
また、サムネイル画像表示画面1300には、四つのマーク画像1310が表示されている。各マーク画像1310は、シーン修正候補に関する情報が文字やアイコンなどの画像で上記不一致関連情報として表示されたものであり、一つのサムネイル画像の上に表示される。換言すれば、特定のサムネイル画像の上にマーク画像1310が表示される場合は、表示されているサムネイル画像にデフォルトのシーン修正候補が有る場合であって該デフォルトのシーン修正候補が撮影シーンタイプデータ又は撮影モードデータが示すシーンと不一致であるときに該当する。これとは対照的に、特定のサムネイル画像の上にマーク画像1310が表示されない場合は、デフォルトのシーン修正候補が撮影シーンタイプデータ又は撮影モードデータが示すシーンと一致している場合に該当する。
図26において、各マーク画像1310は、ユーザが入力機構80の操作部を用いることによって選択的に押下され、これにより、デフォルトのシーン修正候補に応じた画像補正を行う旨が表示制御部36を介してCPU22に入力される。一方、デフォルトのシーン修正候補に応じた画像補正が行われることをキャンセルしたい場合には、ユーザは、所定の方法により、表示されているマーク画像1310を消去する。なお、マーク画像1310が表示されていないサムネイル画像に対しては、ユーザは何も行う必要がない。そして、全てのマーク画像1310の各々に対して押下又は消去があった場合に、印刷機構10による印刷が開始される。
本実施例(図26)によれば、画像表示領域1201にマーク画像1310を不一致関連情報として表示することにより、不一致関連情報をユーザに報知するので、上記実施例1と同様の効果を奏することができる。
また、本実施例によれば、ユーザは、マーク画像1310が無い画像に関しては不一致関連情報が無いことを容易に理解することができる。さらに、ユーザは、マーク画像1310の有無により、不一致関連情報が有る画像と無い画像とを画像表示領域1201上で識別可能である。これにより、ユーザは容易に不一致関連情報の有る画像の枚数を確認することができる。
なお、上記実施例では、シーン修正候補に応じた画像補正実行のキャンセルを指示するために、マーク画像1310が消去されたが、指示方法はこの方法に限られることはない。同様に、シーン修正候補に応じた画像補正の実行を指示するために、マーク画像1310が押下されたが、指示方法はこの方法に限られることはない。例えば、全ての画像に対する印刷を開始するためのボタンを用意し、ユーザは、シーン修正候補に応じた画像補正実行のキャンセルがない場合には、そのボタンを押下するように、プリンタ4を構成してもよい。該ボタンが押下された場合には、マーク画像1310が有る画像についてはシーン修正候補に応じた画像補正の実行がプリンタ4に指示され、マーク画像1310が無い画像については、撮影シーンタイプデータ又は撮影にモードデータが示すシーンに応じた画像補正の実行がプリンタ4に指示される。
さらに、本実施例では、サムネイル画像の上に撮影順序を示す数字を表示するとしたが、撮影順序を示す数字に代えて、印刷順序を示す数字を表示してもよい。さらには、このような数字を表示しなくてもよい。
なお、図26に関して、表示部の表示画面のサイズが十分に大きい場合には、サムネイル画像に代えて補正後画像を画像表示領域1201上に表示してもよく、さらに、この場合には、実施例2で説明したような並列表示や実施例5で後述するような切替表示を行ってもよい。なお、補正後画像は、シーン修正候補に応じた画像補正が施された画像に該当する。
また、図26のサムネイル画像表示画面1300に、実施例1(図23)に示したようなメッセージ表示領域1210、制限時間表示領域1220、及び確信度表示領域1230の少なくとも1つを設けてもよい。
次に、本発明の第2実施形態を説明する。
上記第1実施形態では、単一のデフォルトのシーン修正候補を決定してそれをユーザ確認画面に表示したが、本実施形態では、複数のシーン修正候補を決定してそれらをユーザ確認画面に表示する。本実施形態は、上記第1実施形態の構成と同様の構成を有するので、同様の構成には同一の符号を付しその説明を省略し、以下、異なる点のみを説明する。
図27は、第2実施形態におけるプリンタの補正機能の説明図である。
図27に示すように、本実施形態では、顔識別部32の顔識別結果が記憶部31の結果記憶部31Bに記憶された後に、シーン識別部33のシーン識別結果が結果記憶部31Bに記録される。一方、上記第1実施形態(図6)では、顔識別部32の顔識別結果が記憶部31の結果記憶部31Bに記憶されれば、シーン識別部33によるシーン識別処理は行われない。この点で本実施の形態と第1の実施の形態は相違する。
また、本実施の形態では、結果記憶部31Bに記憶されている識別対象テーブル(図11参照)には「人物」欄が追加される(図示せず)。したがって、本実施形態では、顔識別部32の顔識別結果及びシーン識別部33のシーン識別結果の双方からシーン修正候補を決定することが可能となる。
なお、上記第1実施形態では、顔識別部32の顔識別結果として「人物」が確信度100%のシーン修正候補となるとした。これに対して、本実施形態では、顔識別部32の顔識別結果を得る際に「人物」の確信度を具体的に算出する(なお、この算出の結果、「人物」の確信度が100%になる場合もある)。本実施形態では、顔識別部32は、顔画像が有る場合に、識別対象画像の総面積に対する顔画像の面積の割合(面積比)に基づいて確信度を算出する。例えば、該面積比が30%以上であれば、「人物」の確信度を90%とする。なお、これに代えて、顔画像における肌色の濃淡に基づいて確信度を算出してもよい。この場合、面積比と確信度の関係又は肌色の濃淡と確信度の関係を示すテーブルが予め用意されている。
図28は、第2実施形態において実行される統合識別処理のフロー図である。
図28に示すように、本実施形態において実行される統合識別処理は、S404の処理が追加されている点が第1実施形態(図21)と異なる。また、本実施形態では、S402では、正解率が高いシーンが存在するか否かを判断するための閾値が90%ではなく、40%に設定されている。したがって、S402の判断の結果、正解率が高いシーンが多数存在すると判断される可能性が高まることになる。このとき、予め用意された判別式の値とPrecisionとの関係を示すテーブルに基づいて、判別式の値に対応するPrecisionの値を確信度として用いる。
S404では、S402の判別の結果抽出された正解率(確信度)が高いシーンに対して、図8のS109でシーン修正候補として選択すべき優先順位を設定する。ここで、S403で正解率(確信度)が最大値であったシーンに対して優先順位として最も高い「1」を設定する。S403で正解率が最大値でなかったシーンに対しても正解率(確信度)が高い順に優先順位が設定される。なお、否定フラグが立っているシーンに対して優先順位が設定されることはない。
続く図8のS108では、図28の処理において確信度40%以上のシーン修正候補が1つでもあった場合にYESとなり、確信度40%未満のシーン修正候補が1つもなかった場合にNOとなる。その後、S109では、優先順位が最も高いシーンがデフォルトのシーン修正候補として決定されると共に、優先順位が設定されている他のシーンもデフォルトではないがシーン修正候補として決定される。
このようにして、本実施形態では、複数(一つ以上)のシーンがシーン修正候補として決定される。この場合にも、図22のS503に続くS504〜S505の処理としては、様々な形態が考えられる。以下に、S504のユーザ確認処理の際に表示される表示画面の実施例を説明する。
<実施例5:切替表示>
不一致関連情報は、決定されたシーン修正候補の数以上の枚数の画像を切替表示可能にすることで表現することが可能である。これにより、ユーザは画像の切替を行い、切替前後の画像を比較することにより、不一致関連情報を確認することができる。
図29A乃至図29Cは、図22のステップS504において表示される表示画面の第5の例を示す図であり、図29Aは、補正前画像を表示した状態を示しており、一方、図29Bは、第1の補正後画像を表示した状態を示しており、図29Cは、第1の補正後画像とは異なる第2の補正後画像を表示した状態を示している。なお、図29A乃至図29Cにおいて、実施例1(図23)と同様の構成要素又は表示領域には、同一の符号を付与しその説明を省略する。
図29Aに示す切替表示画面1600a上に設けられた画像表示領域1201には、補正前画像1630が表示されている。補正前画像1630は、撮影シーンタイプデータが示すシーン「標準」に基づいて画像補正した後の画像データに対応する画像に該当する。
図29Bに示す切替表示画面1600b上に設けられた画像表示領域1201には、第1の補正後画像1631が表示されている。第1の補正後画像1631は、(優先順位が最上位の)デフォルトのシーン修正候補「風景」に基づいて画像補正した後の画像データに対応する画像に該当する。
図29Cに示す切替表示画面1600c上に設けられた画像表示領域1201には、第2の補正後画像1632が表示されている。第2の補正後画像1632は、優先順位が上位第2位のシーン修正候補「夕景」に基づいて画像補正した後の画像データに対応する画像に該当する。
また、切替表示画面1600a〜1600c上には、「はい」ボタン1250及び「いいえ」ボタン1251が配置されている。
さらに、切替表示画面1600a〜1600c上には、マーク画像1610〜1612が配置されている。マーク画像1610は、撮影シーンタイプデータが示すシーンに関する情報が文字やアイコンなどの画像で表示されたものである。マーク画像1611はデフォルトのシーン修正候補に関する情報が、マーク画像1612は、優先順位が上位第2位のシーン修正候補に関する情報が、文字やアイコンなどの画像で表示されたものである。
図29Aにおいて、「いいえ」ボタン1251が押下されると、切替表示画面1600aは、図29Bの切替表示画面1600bに遷移する。同様に、切替表示画面1600bにおいて、「いいえ」ボタン1251が押下されると、切替表示画面1600cに遷移し、切替表示画面1600cにおいて、「いいえ」ボタン1251が押下されると、表示画面1600aに遷移する。このように、本実施例では、「いいえ」ボタンが押下される度に表示画面の切り替えが行われる。また、表示画面の切り替えは、予め設定された設定時間が経過する度にも行われ、これにより、ユーザは、設定時間が経過する度に他の画像処理が施された画像を閲覧することができる。
さらに、切り替えの際、表示制御部36は、切替表示画面に表示した補正後画像又は補正前画像に応じたマーク画像のフレームを太くする。具体的には、切替表示画面1600aではマーク画像1610のフレームが太く、切替表示画面1600bではマーク画像1611のフレームが太く、切替表示画面1600cではマーク画像1612のフレームが太くなる。これにより、ユーザは、表示画面に表示されている画像に対応する画像データに対して施されている画像処理がどのシーンに応じたものであるかを容易に特定することができる。
また、図29Aにおいて、「はい」ボタン1250が押下されると、撮影シーンタイプデータが示すシーン(図29Aに示す例では「標準」)に応じた画像補正が施された画像データに対応する画像が印刷される(S510,S507)。同様に、切替表示画面1600bにおいて、「はい」ボタン1250が押下されると、デフォルトのシーン修正候補(図29Bに示す例では「風景」)に応じた画像補正及び印刷が行われ、切替表示画面1600cにおいて、「はい」ボタン1250が押下されると、優先順位が上位第2位のシーン修正候補(図29Cに示す例では「夕景」)に応じた画像補正及び印刷が行われる。
本実施例(切替表示画面1600a〜1600c)によれば、画像表示領域1201に補正後画像1630,1631やマーク画像1611,1612を不一致関連情報として表示することにより、不一致関連情報をユーザに報知するので、上記実施例1と同等の効果を奏することができる。
また、本実施例によれば、画像表示領域1201において、互いに異なる画像である補正前画像1630及び補正後画像1631(又は補正後画像1632)が表示されるので、ユーザは、不一致関連情報があることをユーザ確認画面が単に表示された場合に比べてより容易に把握することができる。さらに、本実施例によれば、ユーザは補正後画像1631によりデフォルトのシーン修正候補を確認することができると共に、補正後画像1632により確信度が上位第2位のシーン修正候補を確認することができ、ユーザは、シーン修正候補による画像補正の差異も把握することができる。このため、プリンタ4のユーザビリティをより向上させることができる。
また、本実施例によれば、第1の補正後画像1631及び第2の補正後画像1632が切替表示されるので、ユーザはシーン修正候補が複数であることを容易に把握することができると共に、確信度が上位第2位のシーン修正候補に応じた画像補正も選択することができる。
また、補正前画像1630と、補正後画像1631とが切替表示されるので、ユーザは、補正前画像1630の画質と、補正後画像1631の画質と間の差異を簡便に比較することができる。
さらに、本実施例では、補正前画像1630及びマーク画像1610を表示したが、これらを表示しなくてもよい。この場合には、シーン修正候補に応じた画像補正が施された画像(第1の補正後画像1631及び第2の補正後画像1632)のみが表示されることになる。これにより、ユーザは、補正前画像1630を閲覧する必要をなくすことができる。
また、補正前画像1630として、画像ファイルの画像データそのもの(sRGB色空間に変換したもの)対応する画像を用いてもよい。
<実施例6:サムネイル画像表示>
不一致関連情報は、実施例4のようにサムネイル画像の各々に対して表示することが可能である。本実施例では、シーン修正候補が一つではないため、実施例4よりも表示可能なサムネイル画像の枚数が減少するものの、複数の画像の一覧表示が可能となる。なお、本実施例では、シーン修正候補がある画像のサムネイル画像のみを一覧表示する。これにより、ユーザは各サムネイル画像に不一致関連情報が有ることを容易に把握することができる。
図30は、図22のステップS504において表示される表示画面の第6の例を示す図である。なお、図30において、実施例1(図23)と同様の構成要素又は表示領域には、同一の符号を付与しその説明を省略する。
図30に示すサムネイル画像表示画面1400上に設けられた画像表示領域1201には、画像ファイルの付加データに含まれているサムネイル画像データを用いることにより、3枚のサムネイル画像が一覧表示されている。これらのサムネイル画像は、縮小表示されたものであるのでユーザにとっては画質の高さが識別困難である。したがって、画像表示領域1201にサムネイル画像を表示するために、対応する画像データに画像補正を施す必要はない。本実施例では、シーン修正候補(不一致関連情報)がある画像のサムネイル画像のみが画像表示領域1201に表示される。
また、サムネイル画像の上には、図30に示すように、撮影日時によって特定される撮影順序と同一の数字が表示される。これにより、画像ファイルに4枚以上の画像データが含まれている場合であっても、ユーザは、画像表示領域1201上に表示された各サムネイル画像が画像ファイルにおいて何番目の撮影順序の写真であるのかを容易に特定することができる。
さらに、各サムネイル画像の右側の領域には、マーク画像1410〜1412が配置されている。マーク画像1410は、撮影シーンタイプデータが示すシーンに関する情報が文字やアイコンなどの画像で表示されたものである。マーク画像1411はデフォルトのシーン修正候補に関する情報が、マーク画像1412は、優先順位が上位第2位のシーン修正候補に関する情報が、文字やアイコンなどの画像で表示されたものである。
図30において、マーク画像1410〜1412のいずれかは、ユーザが入力機構80の操作部を用いることによって選択的に押下され、これにより、対応するシーンに応じた画像補正を行う旨が表示制御部36を介してCPU22に入力される。このとき、表示制御部36は、押下されたマーク画像のフレームを太くする。そして、全てのサムネイル画像の各々について、マーク画像1410〜1412のいずれかに対する押下があった場合に、印刷機構10による印刷が開始される。
本実施例(図30)によれば、画像表示領域1201にマーク画像1411,1412を不一致関連情報として表示することにより、不一致関連情報をユーザに報知するので、上記実施例1と同等の効果を奏することができる。
また、本実施例によれば、マーク画像1411によりデフォルトのシーン修正候補を確認することができると共に、マーク画像1412により確信度が上位第2位のシーン修正候補を確認することができる。本実施例では、画像補正が施された後の画像を確認することはできない点で上述した実施例5とは異なるが、実施例5のように切替表示画面を確認する必要がないので、迅速にマーク画像の選択を行うことができる。
さらに、本実施例によれば、サムネイル画像表示画面1400には、不一致関連情報が有るサムネイル画像だけが表示されるので、ユーザは容易に不一致関連情報の有る画像の枚数を確認することができる。
なお、上記実施例では、ユーザは、サムネイル画像表示画面1400に表示されている全てのサムネイル画像に対して、マーク画像1410〜1412のいずれかを押下する必要があったが、その必要をなくすために、全ての画像に対する印刷を開始するためのボタンを用意してもよい。該ボタンが押下された場合には、不一致関連情報が有る画像についてはデフォルトのシーン修正候補に応じた画像補正の実行がプリンタ4に指示され、不一致関連情報が無い画像については、撮影シーンタイプデータが示すシーンに応じた画像補正の実行がプリンタ4に指示される。
さらに、本実施例では、サムネイル画像の上に撮影順序を示す数字を表示するとしたが、撮影順序を示す数字に代えて、印刷順序を示す数字を表示してもよい。さらには、このような数字を表示しなくてもよい。
なお、図30に関して、表示部の表示画面のサイズが十分に大きい場合には、実施例4のように、不一致関連情報がない画像を表示してもよい。
また、表示部の表示画面のサイズが十分に大きい場合には、サムネイル画像に代えて補正前画像や補正後画像を画像表示領域1201上に表示してもよく、さらに、この場合には、実施例2で説明したような並列表示や実施例5で説明したような切替表示を行ってもよい。なお、補正前画像は、撮影シーンタイプデータに応じた画像補正が施された画像に該当し、補正後画像は、デフォルトのシーン修正候補に応じた画像補正が施された画像や優先順位が上位第2位のシーン修正候補に応じた画像補正が施された画像に該当する。
なお、第2実施形態では、二つのシーン修正候補に関するマーク画像(図29A乃至図29Cにおける符号1611,1612、又は図30における符号1411,1412)が表示されているが、シーン修正候補が三つ以上であれば、それに応じてマーク画像の数を増大させることが好ましい。これにより、ユーザに全てのシーン修正候補を提示することができる。
この場合、複数のマーク画像は、シーン修正候補の優先順位(即ち、確信度)の高さの順に配置される。具体的には、図30に示す例の場合、優先順位が最上位であるデフォルトのシーン修正候補に関するマーク画像1411が、マーク画像1410よりも右側の領域において最も左側に配置され、マーク画像1412はマーク画像1411の右側に配置される。これにより、ユーザは、優先順位が高いシーン修正候補を容易に把握することができる。
また、シーン修正候補が三つ以上である場合に、マーク画像の数を増大させるとしたが、これに限られることはなく、例えば確信度が60%以上のシーン修正候補のみに関するマーク画像を表示してもよく、これにより、ユーザは、確信度が低いシーン修正候補に関する情報を閲覧する手間を省略することができる。また、シーン修正候補が三つ以上と多数である場合には、優先順位が上位第2位までのシーン修正候補のみに関する情報をユーザに提示してもよく、これにより、ユーザは、確信度が低いシーン修正候補に関する情報を閲覧する手間を省略することができると共に、表示画面に表示されるマーク画像が多数になるのを防止して、表示画面が複雑になるのを防止することができる。
さらに、図29A乃至図29Cの切替表示画面1600a〜1600cや図30のサムネイル画像表示画面1400に、実施例1(図23)に示したようなメッセージ表示領域1210、制限時間表示領域1220、及び確信度表示領域1230の少なくとも1つを設けてもよい。
ここで、確信度表示領域1230を設けた場合、マーク画像1411「風景」の近傍に例えば「確信度:55%」と表示され、マーク画像1412「人物」の近傍に例えば「確信度:45%」と表示される。なお、本実施形態では、判別式の値に対応するPrecisionの値を確信度として用いているため、表示された複数の確信度の総和が100%になるとは限らない。そこで、総和が100%となるように確信度の比の値を百分率で表示してもよい。例えば、判別式の値から求めた「風景」の確信度が75%であり且つ「人物」の確信度が50%である場合、表示画面には、「風景」の確信度が60%と表示され且つ「人物」の確信度が40%と表示される。これにより、ユーザはシーン修正候補の全てが表示されていることを容易に理解することができる。
また、本実施形態では、撮影シーンタイプデータを用いたが、撮影モードデータを用いてもよい。
===その他の実施形態===
一実施形態としてのプリンタ等を説明したが、上記の実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれることは言うまでもない。特に、以下に述べる実施形態であっても、本発明に含まれるものである。
<プリンタについて>
前述の実施形態ではプリンタ4が顔識別処理やシーン識別処理、ユーザ確認画面表示処理(不一致関連情報表示)等をしていたが、デジタルスチルカメラ2が顔識別処理やシーン識別処理、ユーザ確認画面表示処理等をしても良い。また、上記の顔識別処理やシーン識別処理、ユーザ確認画面表示処理を行う情報処理装置は、プリンタ4やデジタルスチルカメラ2に限られるものではない。例えば、大量の画像ファイルを保存するフォトストレージのような情報処理装置が、上記の顔識別処理やシーン識別処理、ユーザ確認画面表示処理を行っても良い。もちろん、パーソナルコンピュータやインターネット上に設置されたサーバーが、上記の顔識別処理やシーン識別処理、ユーザ確認画面表示処理等を行っても良い。
<画像ファイルについて>
前述の画像ファイルはExif形式であったが、画像ファイルフォーマットはこれに限られるものではない。また、前述の画像ファイルは静止画であるが、動画であっても良い。要するに、画像ファイルが画像データと付加データとを備えていれば、前述のようなユーザ確認画面表示処理を行うことが可能である。
<シーン識別部33の構成について>
図9において、シーン識別部33は、全体識別器50を備えているとしたが、備えていなくてもよい。この場合には、部分識別器60により、撮影シーン「夕景」「花」「紅葉」に関する識別処理が行われる。同様に、シーン識別器33は、部分識別器60を備えていなくてもよい。要するに、本発明は、少なくとも1つの識別器を用いて識別対象画像に基づいて識別対象画像が属するシーンを識別(推定)することができるように構成されていればよい。
<サポートベクタマシンについて>
前述のサブ識別器51やサブ部分識別器61には、サポートベクタマシン(SVM)による識別手法が用いられている。しかし、識別対象画像が特定シーンに属するか否かの識別手法は、サポートベクタマシンを用いるものに限られるものではない。例えば、ニューラルネットワーク等のパターン認識を採用しても良い。