(57)【要約】【課題】  撮影者のプライバシーを保護すると共に、撮影場所や撮影日時の情報を検索や表示に使用可能にする為の技術を提供すること。【解決手段】  画像データと、画像データと関連付けて記録される属性情報と、を取得し、属性情報よりも精度を落とした低精度属性情報を生成するか否かを判断する。生成を行うと判断した場合、精度を落とした低精度属性情報を生成する。生成を行わないと判断した場合、属性情報と画像データとを出力し、生成を行うと判断した場合、低精度属性情報と画像データとを出力する。【選択図】  図１
2012089928.tif 000002
【特許請求の範囲】
【請求項１】
画像データと、該画像データと関連付けて記録される属性情報と、を取得する取得手段と、
前記取得手段により取得された前記属性情報よりも精度を落とした低精度属性情報を生成するか否かを判断する判断手段と、
前記判断手段が前記生成を行うと判断した場合に、前記精度を落とした低精度属性情報を生成する生成手段と、
前記判断手段が前記生成を行わないと判断した場合には、前記取得手段が取得した属性情報と画像データとを出力し、前記判断手段により前記生成を行うと判断した場合には、前記生成手段が生成した低精度属性情報と前記画像データとを出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記属性情報として数値情報を扱う場合、
前記生成手段は、前記低精度属性情報として、前記取得手段が取得した属性情報が表す数値から予め設定された有効桁数よりも下の桁を切り捨てた数値を生成する、または、前記取得手段が取得した属性情報が表す数値を含む範囲情報を生成する、または、前記取得手段が取得した属性情報が表す数値を予め設定された単位で量子化した数値を表す情報を生成する、ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記属性情報として文字列情報を扱う場合、
前記生成手段は、前記低精度属性情報として、前記取得手段が取得した文字列情報の一部を削除した文字列情報を生成する、または前記取得手段が取得した文字列情報を、より精度の低い他の文字列情報に変換する、ことを特徴する請求項１または２に記載の画像処理装置。
【請求項４】
前記属性情報は、位置情報または日時情報、または個人を特定する情報、であることを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記判断手段は、外部装置へ画像データを送信するときに前記判断を行うか、または前記画像データから画像ファイルを生成するときに前記判断を行う、ことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記属性情報が位置情報を含む場合であって、かつ前記取得手段で取得した位置情報が示す位置が既定の位置に含まれている場合、前記判断手段は、低精度属性情報を生成すると判断することを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記属性情報が日時情報を含む場合であって、かつ前記取得手段で取得した日時情報が示す日時が既定の日時範囲に含まれている場合、前記判断手段は、低精度属性情報を生成すると判断することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
前記画像データに特定の被写体が含まれている場合、前記判断手段は、低精度属性情報を生成すると判断することを特徴とする請求項１乃至７の何れか１項に記載の画像処理装置。
【請求項９】
前記判断手段は、外部装置へ画像データを送信する場合であって、かつ該画像データの送信先が規定の送信先である場合に、前記判断手段は、低精度属性情報を生成すると判断することを特徴とする請求項１乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
前記属性情報が地名を表す文字列情報である場合、前記生成手段は、該地名をどの程度詳細に表現するのかを示す詳細度をユーザから受け付け、該受け付けた詳細度で前記地名を表す低精度属性情報を生成することを特徴とする請求項１乃至９の何れか１項に記載の画像処理装置。
【請求項１１】
前記属性情報が人名を表す文字列情報である場合、前記生成手段は、該文字列情報を、ユーザにより指定された文字列情報に置き換えることにより低精度属性情報を生成することを特徴とする請求項１乃至１０の何れか１項に記載の画像処理装置。
【請求項１２】
前記取得手段が画像ファイルから前記画像データと前記属性情報とを取得する場合、前記出力手段は、該属性情報を前記画像ファイルから削除し、前記生成手段が生成した低精度属性情報を前記画像ファイル内に格納してから該画像ファイルを出力することを特徴とする請求項１乃至１１の何れか１項に記載の画像処理装置。
【請求項１３】
前記取得手段が画像ファイル内から前記画像データと前記属性情報を取得する場合、前記画像ファイル内の属性情報を不可視の情報に変換するとともに、前記生成手段が生成した低精度属性情報を前記画像ファイル内に格納してから該画像ファイルを出力することを特徴とする請求項１乃至１１の何れか１項に記載の画像処理装置。
【請求項１４】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の取得手段が、画像データと、該画像データと関連付けて記録される属性情報と、を取得する取得工程と、
前記画像処理装置の判断手段が、前記取得工程で取得された前記属性情報よりも精度を落とした低精度属性情報を生成するか否かを判断する判断工程と、
前記画像処理装置の生成手段が、前記判断工程で前記生成を行うと判断した場合に、前記精度を落とした低精度属性情報を生成する生成工程と、
前記画像処理装置の出力手段が、前記判断工程で前記生成を行わないと判断した場合には、前記取得工程で取得した属性情報と画像データとを出力し、前記判断工程で前記生成を行うと判断した場合には、前記生成工程で生成した低精度属性情報と前記画像データとを出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項１５】
コンピュータを、請求項１乃至１３の何れか１項に記載の画像処理装置が有する各手段として機能させるためのコンピュータプログラム。
【請求項１６】
請求項１５に記載のコンピュータプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の属性情報を処理するための技術に関するものである。
【背景技術】
【０００２】
デジタルカメラや携帯電話で撮影した画像をブログや電子アルバムで配信することが日常的に行われるようになっている。さらに、画像に撮影位置が特定できる情報（GPS情報など）が付加されるようになってきている。
【０００３】
このような状況の中で、プライバシーに関わる情報を守るため、インターネット等の通信網経由でファイルを転送するとき、ファイルに付加されている情報を自動的に削除するデジタルカメラが提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2004-343627号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、ファイルに付加されている情報を削除してしまうと、検索や表示に全く使えなくなってしまうという問題があった。本発明は以上の問題に鑑みてなされたものであり、撮影者のプライバシーを保護すると共に、撮影場所や撮影日時の情報を検索や表示に使用可能にする為の技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。即ち、画像データと、該画像データと関連付けて記録される属性情報と、を取得する取得手段と、前記取得手段により取得された前記属性情報よりも精度を落とした低精度属性情報を生成するか否かを判断する判断手段と、前記判断手段が前記生成を行うと判断した場合に、前記精度を落とした低精度属性情報を生成する生成手段と、前記判断手段が前記生成を行わないと判断した場合には、前記取得手段が取得した属性情報と画像データとを出力し、前記判断手段により前記生成を行うと判断した場合には、前記生成手段が生成した低精度属性情報と前記画像データとを出力する出力手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の構成によれば、撮影者のプライバシーを保護すると共に、撮影場所や撮影日時の情報を検索や表示に使用可能にすることができる。
【図面の簡単な説明】
【０００８】
【図１】ディジタルスティルカメラの機能構成例を示すブロック図。
【図２】ディジタルスティルカメラが取り扱う画像のファイル構成を示す図。
【図３】ディジタルスティルカメラが行う処理のフローチャート。
【図４】ディジタルスティルカメラの背面図。
【図５】撮影場所及び撮影日時について、抽象前と抽象後を示す図。
【図６】外部機器が行う処理のフローチャート。
【図７】地図画像の一例を示す図。
【図８】ディジタルスティルカメラの背面図。
【図９】ディジタルスティルカメラが行う処理のフローチャート。
【図１０】サーバの機能構成例を示すブロック図。
【図１１】領域２００及び領域２０１について、更新前と更新後とを示す図。
【図１２】サーバが行う処理のフローチャート。
【図１３】地名情報を示す図。
【図１４】領域２００及び領域２０１について、更新前と更新後とを示す図。
【図１５】設定画面の表示例を示す図。
【図１６】設定画面の表示例を示す図。
【図１７】ディジタルスティルカメラの背面図。
【図１８】（ａ）は、図１７の設定画面で設定される情報を示す図、（ｂ）はディジタルスティルカメラが行う処理のフローチャート。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１０】
［第１の実施形態］
本実施形態に係る画像処理装置は、固体撮像素子を用いて光学像を画像信号に変換して撮影を行う、デジタルスチルカメラやデジタルビデオカメラ等のカメラが撮像した画像を取り扱う。本実施形態では、画像を外部機器に対して送信する際に、プライバシーに関わる属性情報である撮影場所と撮影日時とを、ある範囲を有する情報に変換し、画像と関連づけて記録する画像処理装置についての説明を行う。なお、画像処理装置が外部機器に対して送信処理を行った後、この外部機器は即時に第三者に提供できる状態にするものとする。
【００１１】
＜本願明細書で用いる文言の定義＞
以下の説明で用いる文言が指し示す定義を、ここに列挙する。なお、これらの文言のより詳細な定義については、以下の説明で明らかとなるであろう。
【００１２】
・  「抽象化」  …  詳細な情報を、より低い精度で対象を特定するための情報や、ある範囲で対象を特定するための情報に変換すること。何れにしても、より低い精度の情報に変換することを指す。
【００１３】
・  「送信」  …  データを外部機器に通信回線経由で送信すること。たとえば、デジタルカメラからインターネット経由でサーバコンピュータ（サーバ）にデータを送ること。
【００１４】
・  「配信」  …  送信先の外部機器において、第三者に提供できる状態にすること。たとえば、サーバコンピュータにて、第三者に提供できる状態にすること。
【００１５】
＜ディジタルスティルカメラの構成例について＞
本実施形態では、画像処理装置として動作するディジタルスティルカメラを例に取り、説明する。また以下では、本実施形態における特徴を明確に説明するために、ディジタルスティルカメラが有する全ての動作機能について説明するのではなく、ディジタルスティルカメラがアクセス可能なメモリ内に格納された画像に対する制御機能に焦点を絞って説明する。
【００１６】
本実施形態で説明するディジタルスティルカメラの機能構成例について、図１のブロック図を用いて説明する。上記の通り、ここではディジタルスティルカメラの全体について説明するわけではないため、図１には、ディジタルスティルカメラが有する全ての構成のうち、以下の説明で登場する構成のみを示している。
【００１７】
撮像装置１００は、固体撮像素子を用いて光学像を画像信号に変換し、変換した画像信号から画像（撮像画像）のデータを生成する為のものである。ＣＰＵ１０１はＲＯＭ１０２やＲＡＭ１０３に格納されているコンピュータプログラムやデータを用いてディジタルスティルカメラ全体の動作制御を行うと共に、ディジタルスティルカメラが行うものとして後述する様々な処理を実行する。
【００１８】
ＲＯＭ１０２には、ＣＰＵ１０１の動作処理手順（例えばディジタルスティルカメラの電源をONにした時にＣＰＵ１０１に行わせる処理や、基本入出力処理等）をＣＰＵ１０１に実行させるためのコンピュータプログラムやデータが格納されている。また、ＲＯＭ１０２には、ディジタルスティルカメラが行うものとして後述する各種の処理をＣＰＵ１０１に実行させるためのコンピュータプログラムやデータが格納されている。また、ディジタルスティルカメラの各種の設定データもこのＲＯＭ１０２に格納されている。ＲＯＭ１０２に格納されているコンピュータプログラムやデータは、ＣＰＵ１０１による制御に従って適宜ＲＡＭ１０３にロードされ、ＣＰＵ１０１による処理対象となる。
【００１９】
ＲＡＭ１０３は、メディアドライブ１０８に装着された記憶媒体やＲＯＭ１０２からロードされたコンピュータプログラムやデータを一時的に記憶する為のエリアを有する。更にＲＡＭ１０３は、Ｉ／Ｆ（インターフェース）１０９を介してディジタルスティルカメラ外から受信したデータを一時的に記憶する為のエリアを有する。更にＲＡＭ１０３は、ＣＰＵ１０１が各種の処理を実行する際に使用するワークエリアも有する。このようにＲＡＭ１０３は、これらのエリアを含め、各種のエリアを適宜提供することができる。
【００２０】
表示装置１０４は、図４を用いて後述するディスプレイ４０１を表示画面として有する装置であって、ＣＰＵ１０１による処理結果を画像や文字として表示する。この表示する内容には、例えば、送信制御のための設定を行う画面（ＧＵＩ：グラフィカルユーザインターフェース）や、メディアドライブ１０８に装着された記憶媒体等のメモリに格納されているデータに係る情報がある。
【００２１】
入力装置１０７は、ボタン等、ディジタルスティルカメラの操作者（ユーザ）が操作することで各種の操作指示をＣＰＵ１０１に対して入力するためのものである。入力装置１０７の詳細については、図４を用いて後述する。
【００２２】
メディアドライブ１０８は、ディジタルスティルカメラに対して着脱可能な記憶媒体をディジタルスティルカメラに対して装着するためのＩ／Ｆとして機能するものであり、メディアドライブ１０８はこの装着された記憶媒体に対してデータの読み書きを行う。
【００２３】
Ｉ／Ｆ１０９は、ディジタルスティルカメラを通信回線１１１に接続する為のものである。通信回線１１１には、コンピュータネットワーク１１２が接続されており、更にこのコンピュータネットワーク１１２には、サーバやパーソナルコンピュータ等の外部機器が接続されている。然るにディジタルスティルカメラは、このＩ／Ｆ１０９を介して、コンピュータネットワーク１１２に接続されている外部機器とのデータ通信を行うことができる。本実施形態では、衛星測位システム（ＧＰＳ）を利用して現在位置を算出するサーバがコンピュータネットワーク１１２に接続されているので、ディジタルスティルカメラはこのＩ／Ｆ１０９を介してこのサーバから自身の現在位置を取得することができる。
【００２４】
上記の各部はシステムバス１１０に接続されている。このシステムバス１１０は、アドレスバス、データバス、制御バス等からなるものである。
【００２５】
＜画像ファイルの構成について＞
次に、ディジタルスティルカメラが取り扱う画像のファイル構成について、図２を用いて説明する。なお、本実施形態では、図２に示したファイル構成を採用するが、以下に説明する各処理が実現可能であれば、このファイル構成は適宜変更しても良い。領域２００及び領域２０１は共に、Exif規格に準じて画像属性情報を記録するための領域である。
【００２６】
領域２００は、Exif規格の基本的な情報を記録するための領域である。領域２００内には、本ファイル内に記録する画像のデータサイズ、撮影日時、撮影場所、撮影機種、フラッシュオン／オフ、等、画像撮像時における撮像状況（撮像環境）を示す情報、画像の読み出しや再生、制御に必要な情報、が記録されている。
【００２７】
領域２０１は、Exif規格に準じて、ディジタルスティルカメラのメーカー独自のフォーマットで画像属性情報を記録するための領域である。領域２０１内には、送信済みフラグ、配信済みフラグ、撮影場所範囲情報、撮影時間範囲情報、等、画像撮像時における撮像状況を示す情報、制御に必要な情報、が記録されている。送信済みフラグは、本ファイルが既に外部機器に送信済みであるか否か（TRUE若しくはFALSE）を示すフラグである。配信済みフラグは、本ファイルが既に外部機器にて配信済みであるか否か（TRUE若しくはFALSE）を示すフラグである。
【００２８】
領域２０２には、後述する領域２０３内に記録される画像のサムネイル画像（縮小画像）のデータが記録される。各画像ファイル内のサムネイル画像は、一覧表示を行う指示が入力された場合に、表示装置１０４のディスプレイ４０１上に一覧表示される。領域２０３内には、撮像装置１００が生成した撮像画像のデータ（画像データ）が記録される。
【００２９】
撮像装置１００がＣＰＵ１０１による制御に従って撮像画像のデータを生成すると、ＣＰＵ１０１は、領域２００に記録するための情報を取得する。より詳しくは、ＣＰＵ１０１は、Ｉ／Ｆ１０９を介して、コンピュータネットワーク１１２に接続されている外部機器から、ＧＰＳを利用して測定された「撮像装置１００による撮影場所を示す緯度、経度、高度、測位時間等」を取得する。そしてＣＰＵ１０１は、この取得した情報を、領域２００に記録する。
【００３０】
また、ＣＰＵ１０１は、送信済みフラグ及び配信済みフラグをＦａｌｓｅに初期化してから、領域２０１内に記録する。なお、送信済みフラグ、撮影場所範囲情報、撮影時間範囲情報、の使用方法については、本実施形態にて後述する。また、配信済みフラグの使用方法については、第３の実施形態にて後述する。
【００３１】
もちろん、撮像装置１００が生成した撮像画像のデータは、ＣＰＵ１０１により領域２０３内に記録されるし、この撮像画像のサムネイル画像のデータは、ＣＰＵ１０１により領域２０２内に記録される。
【００３２】
このように、１枚の撮像画像のデータを生成すると、この撮像画像に対して図２に例示するような構成を有する画像ファイルが生成され、メディアドライブ１０８に装着されている記憶媒体に記録される。もちろん、記録先についてはこれに限定するものではないし、記録せずに、何らかの出力先に出力しても良い。以下では、このようにして画像ファイルを形成し、形成した画像ファイルを記憶媒体に記録するまでの一連の処理を、「撮像」と呼称する。
【００３３】
＜入力装置１０７について＞
ディジタルスティルカメラが有する入力装置１０７について、ディジタルスティルカメラの背面図である図４を用いて説明する。上記の通り、入力装置１０７は、ディジタルスティルカメラのユーザが操作するためのボタン群などにより構成されており、それぞれは図４に示す如く、ディジタルスティルカメラの様々な箇所に取り付けられている。もちろん、図４に示した取り付け位置は一例であって、これに限るものではない。
【００３４】
本実施形態に係るディジタルスティルカメラでは、４つのモードを切り替えて使用することができる。第１のモードは、撮像を行うためのモードである「撮影モード」である。第２のモードは、メディアドライブ１０８に装着された記憶媒体に記録されている画像（サムネイル画像）を、表示装置１０４のディスプレイ４０１上に一覧表示するためのモードである「再生モード」である。第３のモードは、各種の設定を行うためのモードである「設定モード」である。第４のモードは、記憶媒体に記録されている画像ファイルをＩ／Ｆ１０９を介して外部機器に対して送信する為のモードである「送信モード」である。何れのモードが選択されても、ＣＰＵ１０１は選択されたモードに応じてディジタルスティルカメラを制御し、この選択されたモードに対応する処理を実現させる。以下では主に設定モード時におけるＣＰＵ１０１による動作について説明する。また、電源ボタン４０２以外のボタンに関しては、ディジタルスティルカメラに電源が入っているときの機能について説明する。
【００３５】
レリーズボタン４００は、ディジタルスティルカメラのユーザが撮影指示を入力するために押下するものである。ＣＰＵ１０１はレリーズボタン４００の押下を検知すると、ディジタルスティルカメラの動作モードを「撮影モード」に切り替え、「撮影モード」に応じた動作を行う。
【００３６】
ディスプレイ４０１は上記の通り、表示装置１０４の表示画面であり、このディスプレイ４０１には図４に例示するような設定画面などが表示される。もちろん、ディスプレイ４０１による表示は、ＣＰＵ１０１による制御に従って行われる。
【００３７】
電源ボタン４０２は、ディジタルスティルカメラのユーザが、ディジタルスティルカメラの電源のON／OFFを切り替える為に押下するものである。ＣＰＵ１０１は、ディジタルスティルカメラの電源が入っていない状態でこの電源ボタン４０２が押下されたことを検知すると、ディジタルスティルカメラの電源を入れるための動作制御を行う。また、ＣＰＵ１０１は、ディジタルスティルカメラの電源が入っている状態でこの電源ボタン４０２が押下されたことを検知すると、ディジタルスティルカメラの電源を切るための動作制御を行う。
【００３８】
撮影モードボタン４０３は、ディジタルスティルカメラのユーザがディジタルスティルカメラの動作モードを撮影モードに切り替えるために押下するものである。ＣＰＵ１０１はこの撮影モードボタン４０３の押下を検知すると、ディジタルスティルカメラの動作モードを撮影モードに切り替える。そしてＣＰＵ１０１は、撮像装置１００を撮像準備状態に制御すると共に、撮像装置１００から出力された画像をディスプレイ４０１に表示させる。なお、ＣＰＵ１０１は、撮影モードにおいてレリーズボタン４００の押下を検知すると、この押下を検知した時点で撮像装置１００から出力された画像のファイルを作成し、記憶媒体に記録する。
【００３９】
再生ボタン４０４は、ディジタルスティルカメラのユーザがディジタルスティルカメラの動作モードを再生モードに切り替えるために押下するものである。ＣＰＵ１０１はこの再生ボタン４０４の押下を検知すると、ディジタルスティルカメラの動作モードを再生モードに切り替える。そしてＣＰＵ１０１は、記憶媒体に記録されているそれぞれの画像ファイルからサムネイル画像を読み出し、読み出したサムネイル画像群をディスプレイ４０１上に一覧表示させる。
【００４０】
Ｍｅｎｕボタン４０５は、ディジタルスティルカメラのユーザがディジタルスティルカメラの動作モードを設定モードに切り替えるために押下するものである。ＣＰＵ１０１はこのＭｅｎｕボタン４０５の押下を検知すると、ディジタルスティルカメラの動作モードを設定モードに切り替える。そしてＣＰＵ１０１は、ＲＯＭ１０２から図４に例示するような設定画面に係るコンピュータプログラムやデータを読み出し、読み出したコンピュータプログラムやデータに基づいて図４に例示するような設定画面をディスプレイ４０１上に表示させる。もちろん、図４に例示するような設定画面の動作制御についても、このＣＰＵ１０１が行うことになる。
【００４１】
送信ボタン４１１は、ディジタルスティルカメラのユーザがディジタルスティルカメラの動作モードを送信モードに切り替えるために押下するものである。ＣＰＵ１０１は、この送信ボタン４１１の押下を検知すると、送信指示が入力されたものと判断し、ディジタルスティルカメラの動作モードを送信モードに切り替える。そしてＣＰＵ１０１は、記憶媒体に記録されている画像ファイルを読み出し、読み出した画像ファイルに対して後述する画像制御処理を行った後、設定モードで設定された送信先に対して送信する。
【００４２】
上矢印ボタン４０７、下矢印ボタン４０８、左矢印ボタン４０９、右矢印ボタン４１０は何れも、ディジタルスティルカメラのユーザが押下することで、対応する方向に選択対象を切り替えるためのものである。それぞれのボタン４０７〜４１０が押下されると、ＣＰＵ１０１は、対応する方向に選択対象を切り替える。決定ボタン４０６は、ＣＰＵ１０１に対して決定指示を入力するためにディジタルスティルカメラのユーザが押下するためのものである。
【００４３】
ディスプレイ４０１内に表示されている設定画面のうち、現在アクティブになっている（操作可能となっている）項目には、選択枠４１５が重畳表示されている。ＣＰＵ１０１は、上矢印ボタン４０７の押下を検知すると、選択枠４１５が現在位置している項目よりも１つ上の項目にこの選択枠４１５を移動させる。ＣＰＵ１０１は、下矢印ボタン４０８の押下を検知すると、選択枠４１５が現在位置している項目よりも１つ下の項目にこの選択枠４１５を移動させる。ＣＰＵ１０１は、左矢印ボタン４０９の押下を検知すると、選択枠４１５が現在位置している項目よりも１つ左の項目にこの選択枠４１５を移動させる。ＣＰＵ１０１は、右矢印ボタン４１０の押下を検知すると、選択枠４１５が現在位置している項目よりも１つ右の項目にこの選択枠４１５を移動させる。
【００４４】
領域４１２は、画像ファイルの送信先を入力するための領域（エディットボックス）である。ユーザがボタン４０７〜４１０を操作して選択枠４１５を領域４１２に移動させてから決定ボタン４０６を押下すると、領域４１３が使用可能となる。ユーザはボタン４０７〜４１０を用いて領域４１３内に表示されている文字や記号を選択することができ、選択後に決定ボタン４０６を押下すると、この選択した文字や記号が領域４１３の上段に追加表示される。この操作を、送信先を示す文字列が領域４１３の上段に表示されるまで繰り返して行う。そして送信先を示す文字列が領域４１３の上段に表示された後、ユーザがボタン４０７〜４１０を操作して選択枠４１５をボタン４１４に移動させ、そこで決定ボタン４０６を押下すると、ＣＰＵ１０１は、送信先の設定が完了したものと判断する。するとＣＰＵ１０１は、領域４１３の上段に表示されている送信先を示す文字列を、領域４１２内に表示する。もちろん、送信先の設定方法はこれに限るものではない。以降に説明する操作部分は、プライバシーに関わる属性情報を、抽象化した情報（低精度属性情報）に変換する為の設定に関するものである。
【００４５】
チェックボックス４１６は、抽象化に係る設定を行うか否かを切り替えるためのものである。ユーザがボタン４０７〜４１０を操作して選択枠４１５をこのチェックボックス４１６の位置に移動させた後、決定ボタン４０６を押下する毎に、チェックボックス４１６のＯＮ／ＯＦＦが切り替わる。チェックボックス４１６がＯＮの状態で決定ボタン４０６を押下するとＯＦＦになり、チェックボックス４１６がＯＦＦの状態で決定ボタン４０６を押下するとＯＮになる。
【００４６】
ユーザがボタン４０７〜４１０を操作してメニュー４１７の位置に選択枠４１５を移動させ、そこで決定ボタン４０６を押下すると、プルダウン式のメニューを表示する。表示するメニューの項目は、「送信時」、「撮影時」、「配信時」、である。ユーザがボタン４０７〜４１０を操作し、所望の項目の位置に選択枠４１５を移動させ、そこで決定ボタン４０６を押下すると、ＣＰＵ１０１は、この所望の項目を、抽象化した情報への変換タイミングに係る設定情報としてＲＡＭ１０３等のメモリに格納する。更にＣＰＵ１０１は、この所望の項目を、メニュー４１７上に文字列として表示する。図４では「送信時」が所望の項目として選択されたので、この「送信時」がメニュー４１７上に文字列として表示されている。
【００４７】
ユーザがボタン４０７〜４１０を操作してメニュー４１８の位置に選択枠４１５を移動させ、決定ボタン４０６を押下すると、プルダウン式のメニューを表示する。表示するメニューの項目は、「自宅の周辺だった場合」、「夜間だった場合」、である。なお、ここでは「夜間」とは「20:00〜6:00の時間帯」を指すものとするが、これは一例に過ぎない。ユーザがボタン４０７〜４１０を操作し、所望の項目の位置に選択枠４１５を移動させ、そこで決定ボタン４０６を押下すると、ＣＰＵ１０１は、この所望の項目を、抽象化した情報への変換条件に係る設定情報としてＲＡＭ１０３等のメモリに格納する。更にＣＰＵ１０１は、この所望の項目を、メニュー４１８上に文字列として表示する。図４では「自宅の周辺だった場合」が所望の項目として選択されたので、この「自宅の周辺だった場合」がメニュー４１８上に文字列として表示されている。
【００４８】
ボタン４１９は、抽象化した情報への変換に係る詳細設定を行うためのものである。ユーザがボタン４０７〜４１０を操作して選択枠４１５をボタン４１９の位置に移動させ、そこで決定ボタン４０６を押下すると、ＣＰＵ１０１は、抽象化した情報への変換に係る詳細設定を行うための画面をディスプレイ４０１上に表示する。この詳細設定を行うための画面については、本実施形態では触れず、第２の実施形態以降で触れることにする。
【００４９】
なお、図４に例示した設定画面で設定した各種の設定情報は、他の動作モードに切り替わった場合などにＲＡＭ１０３などのメモリに格納するようにしても良いし、その格納するタイミングについては特に限定するものではない。なお、何れの場合でも、チェックボックス４１６がＯＮ／ＯＦＦの何れであるのかを特定する為の情報も、設定情報としてＲＡＭ１０３などのメモリに格納する。そしてこれらの設定情報は、以下に説明する画像制御処理で用いることになる。
【００５０】
＜画像制御処理について＞
画像ファイルを送信するためにディジタルスティルカメラが行う処理について、同処理のフローチャートを示す図３を用いて説明する。図３のフローチャートに従った処理は、上記の通り、ＣＰＵ１０１がＲＯＭ１０２に格納されているコンピュータプログラムやデータを用いて行うものである。
【００５１】
ステップＳ３０１ではＣＰＵ１０１は、入力装置１０７を用いたユーザ操作を監視し、ユーザ操作がなされた場合、このユーザ操作が、メニュー４１７を用いて設定した設定情報が指し示す変換タイミングに合致しているか否かを判断する。ユーザ操作が、メニュー４１７を用いて設定した設定情報が指し示す変換タイミングに合致している場合には、処理はステップＳ３０２に進む。一方、ユーザ操作が、メニュー４１７を用いて設定した設定情報が指し示す変換タイミングに合致していない場合には、本処理を終了する。
【００５２】
ここでは一例として、メニュー４１７を用いて設定した設定情報が「送信時」であるものとする。然るにこの場合、ユーザが送信ボタン４１１を押下したことをＣＰＵ１０１が検知した場合には、処理はステップＳ３０２に進み、検知していない場合には、本処理を終了する。
【００５３】
ステップＳ３０２ではＣＰＵ１０１は、メディアドライブ１０８に装着されている記憶媒体に対してアクセスし、記憶媒体内に記録されている各画像ファイル内の領域２０１内の送信済みフラグを参照する。そして、送信済みフラグがFALSEとなっている画像ファイルのみをＲＯＭ１０２から読み出し、ＲＡＭ１０３にロード（抽出）する。
【００５４】
ステップＳ３０３では、ＣＰＵ１０１は、カウンタｎを０に初期化する。ステップＳ３０４ではＣＰＵ１０１は、カウンタｎの値と、ステップＳ３０２でＲＡＭ１０３にロードした画像ファイルの総数と、の大小比較を行う。この大小比較の結果、（カウンタｎの値）＜（ステップＳ３０２でＲＡＭ１０３にロードした画像ファイルの総数）であれば、処理はステップＳ３０５に進む。一方、（カウンタｎの値）≧（ステップＳ３０２でＲＡＭ１０３にロードした画像ファイルの総数）であれば、本処理を終了する。
【００５５】
ステップＳ３０５ではＣＰＵ１０１は、図４の設定画面を用いて設定されＲＡＭ１０３などのメモリに格納された設定情報のうち、チェックボックス４１６がＯＮであるかＯＦＦであるのかを特定する為の設定情報を参照する。そしてこの参照した設定情報が、チェックボックス４１６がＯＮであることを指し示している場合には、処理はステップＳ３０６に進み、ＯＦＦであることを指し示している場合には、処理はステップＳ３１１に進む。この場合、ステップＳ３１１ではＣＰＵ１０１は、ステップＳ３０２でＲＡＭ１０３にロードした画像ファイルのうち未送信の画像ファイルを、Ｉ／Ｆ１０９を介して外部機器に対して送信する。
【００５６】
ステップＳ３０６ではＣＰＵ１０１は、ステップＳ３０２でＲＡＭ１０３にロードした画像ファイルのうち、送信済みフラグがＦＡＬＳＥであるものを１つ選択する。そして選択した画像ファイル内の領域２００内に記録されている情報のうち、画像の撮影場所と撮影日時と、を示す情報を読み出す。
【００５７】
ステップＳ３０７ではＣＰＵ１０１は、メニュー４１８を用いて設定した設定情報が指し示す変換条件が満たされたか否かを判断する。例えば、ディジタルスティルカメラのユーザの自宅の緯度、経度をＲＡＭ１０３などのメモリに予め登録しておき、メニュー４１８で「自宅の周辺だった場合」が選択されたとする。この場合、ステップＳ３０７では、自宅の緯度、経度が指し示す位置（自宅の位置）と、ステップＳ３０６で読み出した撮影場所と、の間の距離を算出する。そしてこの算出した距離が、予め定められた閾値以下であれば、「自宅の周辺である」と判断する。もちろん、この判断方法についてはこれに限るものではない。
【００５８】
そして、メニュー４１８を用いて設定した設定情報が指し示す変換条件が満たされたと判断した場合には、処理はステップＳ３０８に進み、満たされていないと判断した場合には、処理はステップＳ３１１に進む。この場合、ステップＳ３１１では、ステップＳ３０６で選択した画像ファイルを、Ｉ／Ｆ１０９を介して外部機器に対して送信する。
【００５９】
ステップＳ３０８ではＣＰＵ１０１は、ステップＳ３０６で読み出した撮影場所について範囲情報を生成する。例えば、撮影場所の緯度が43.323464度の場合、緯度の範囲情報は、この数値「43.323464」を範囲内とする、この範囲の両端の数値43〜44度とする。また、経度が142.353991度の場合、経度の範囲情報は、この数値「142.353991」を範囲内とする、この範囲の両端の数値142〜143度とする。このようにして、範囲情報（上限値と下限値）を生成すると、生成した範囲情報をＲＡＭ１０３などのメモリに格納する。
【００６０】
ステップＳ３０９ではＣＰＵ１０１は、ステップＳ３０６で読み出した撮影日時について範囲情報（日時範囲）を生成する。例えば、撮影日時が2009年1月3日9時45分15秒の場合、撮影日時の範囲情報は、2009年1月3日9時〜10時とする。このようにして、範囲情報（上限値と下限値）を生成すると、生成した範囲情報をＲＡＭ１０３などのメモリに格納する。
【００６１】
ステップＳ３１０ではＣＰＵ１０１は、ステップＳ３０６で読み出した撮影場所についてステップＳ３０８で生成した範囲情報を用いて、この読み出した撮影場所を更新することで、この撮影場所を抽象化した情報に更新する。同様に、ステップＳ３０６で読み出した撮影日時についてステップＳ３０９で生成した範囲情報を用いて、この読み出した撮影日時を更新することで、この撮影日時を抽象化した情報に更新する。これにより、ステップＳ３０６で選択した画像ファイル内の撮影場所及び撮影日時を抽象化してこの画像ファイルを更新する。
【００６２】
撮影場所及び撮影日時について、抽象前と抽象後を図５に示す。５０１の欄には、領域２００（Exif_Base属性情報領域）及び領域２０１（Exif_MakerNote属性情報領域）を記している。抽象前には、領域２００内には上述の通り、５０２で示す如く、撮影場所としての緯度、経度、撮影日時が記録されている。
【００６３】
ステップＳ３１０ではＣＰＵ１０１は先ず、５０３に示す如く、領域２００内のこれらの情報を領域２０１内にコピーすると共に、領域２００内のこれらの情報を削除する。そして次にＣＰＵ１０１は、５０４に示す如く、領域２０１内のコピーした緯度を、緯度について生成した上限値と下限値とに置き換える。これにより、緯度「43.323464度」を緯度「４３」及び「４４」に抽象化する。同様にＣＰＵ１０１は、５０４に示す如く、領域２０１内のコピーした経度を、経度について生成した上限値と下限値とに置き換える。これにより、経度「142.353991度」を経度「１４２」及び「１４３」に抽象化する。同様にＣＰＵ１０１は、５０４に示す如く、領域２０１内のコピーした撮影日時を、撮影日時について生成した上限値と下限値とに置き換える。これにより、撮影日時「2009年1月3日9時45分15秒」を撮影日時「2009年1月3日9時」及び「2009年1月3日10時」に抽象化する。
【００６４】
そしてこの場合、ステップＳ３１１ではＣＰＵ１０１は、ステップＳ３１０で領域２００及び領域２０１が更新された画像ファイルを、Ｉ／Ｆ１０９を介して外部機器に対して送信する。なお、この外部機器は上記の設定モードで設定した送信先である。もし、ユーザが送信先を設定していなければ既定の送信先としてもよいし、警告を表示し、ユーザに送信先の設定を促してもよい。
【００６５】
ステップＳ３１２ではＣＰＵ１０１は、ステップＳ３１１で送信した画像ファイル内の送信済みフラグをTRUEに書き換える。ステップＳ３１３ではＣＰＵ１０１は、カウンタｎの値を１つインクリメントする。そしてステップＳ３０４以降の処理を繰り返す。
【００６６】
なお、本実施形態では、画像ファイルを外部機器に送信したか否かを判定するためにこの画像ファイルの送信済みフラグを参照した。しかし、画像ファイルを外部機器に送信した後、この画像ファイルを記憶媒体から削除しても良く、その場合、記憶媒体内にこの画像ファイルが残っているか否かを判定すれば良い。
【００６７】
＜外部機器について＞
ここでは、上記の外部機器、即ち、上記のようにディジタルスティルカメラから送信された画像ファイルを受信し、受信した画像ファイル内の画像を表示する画像表示装置として機能する外部機器について説明する。
【００６８】
先ず、このような画像表示装置として機能する外部機器が、ディジタルスティルカメラから送信された画像ファイルを受信した場合に行う処理について、同処理のフローチャートを示す図６を用いて説明する。外部機器が有するメモリには、図６のフローチャートに従った処理を外部機器が有するＣＰＵに実行させるためのコンピュータプログラムやデータが格納されている。然るに、外部機器が有するＣＰＵがこのコンピュータプログラムやデータを用いて処理を実行することで、この外部機器は、図６のフローチャートに従った処理を実行することができる。
【００６９】
なお、以下では、ディジタルスティルカメラからは画像Ａ及び画像Ｂについては撮影場所及び撮影日時は抽象化せずに外部機器に送信され、画像Ｃについては撮影場所及び撮影日時は抽象化してから外部機器に送信されたケースを例に取り説明する。しかし、以下の説明がこのケースに限ったものでものはないことは、以下の説明より明らかとなるであろう。
【００７０】
ステップＳ６０１では、ディジタルスティルカメラから送信され、外部機器が有するハードディスクなどのメモリ内に取り込まれたそれぞれの画像ファイルを、外部機器が有するＲＡＭなどのメモリに読み出す。
【００７１】
ステップＳ６０２では、以下の処理で用いるカウンタｎの値を０に初期化する。ステップＳ６０３では、カウンタｎの値と、ステップＳ６０１で読み出した画像ファイルの総数と、の大小比較を行う。この大小比較の結果、（カウンタｎの値）＜（ステップＳ６０１で読み出した画像ファイルの総数）であれば、処理はステップＳ６０４に進み、（カウンタｎの値）≧（ステップＳ６０１で読み出した画像ファイルの総数）であれば、本処理を終了する。
【００７２】
ステップＳ６０４では、ステップＳ６０１で読み出した画像ファイルのうち未だ以下のステップにおける処理対象となっていない画像ファイルを１つ、選択画像ファイルとして選択する。そして選択画像ファイル内に記録されている撮影場所が抽象化されたものであるのか否かを判断する。この判断では、選択画像ファイル内の領域２００内に緯度、経度が記録されていれば、この選択画像ファイル内に記録されている撮影場所は抽象されたものではないと判断する。一方、選択画像ファイル内の領域２００内に緯度、経度が記録されていなければ、この選択画像ファイル内に記録されている撮影場所は抽象されたものであると判断する。
【００７３】
この判断の結果、選択画像ファイル内に記録されている撮影場所が抽象化されたものである場合には、処理はステップＳ６０６に進み、抽象化されたものではない場合には、処理はステップＳ６０５に進む。
【００７４】
ステップＳ６０５では、外部機器が有する表示画面上に表示されている地図画像上における、選択画像ファイル内の画像の縮小画像（若しくはサムネイル画像の縮小画像）の配置位置を、選択画像ファイル内の撮影場所を用いて求める。そしてこの求めた配置位置にこの縮小画像、及び選択画像ファイル内に記録されている緯度、経度などの属性情報、を配置する。
【００７５】
ステップＳ６０６では、選択画像ファイル内の撮影場所が範囲情報として記録されているか否か、即ち、撮影場所が上限値と下限値とを用いて記録されているか否かを判断する。この判断では、緯度１、緯度２、経度１、経度２のそれぞれに対応する情報が記録されているか否かを判断する。緯度１、緯度２、経度１、経度２のそれぞれに対応する情報が記録されていれば、選択画像ファイル内の撮影場所が上限値と下限値とを用いて記録されていると判断する。一方、緯度１、緯度２、経度１、経度２のそれぞれに対応する情報が記録されていなければ、選択画像ファイル内の撮影場所は上限値と下限値とを用いて記録されていないと判断する。
【００７６】
選択画像ファイル内の撮影場所が範囲情報として記録されている場合には、処理はステップＳ６０７に進み、選択画像ファイル内の撮影場所が範囲情報として記録されていない場合には、処理はステップＳ６０９に進む。選択画像ファイル内の撮影場所が範囲情報として記録されていないような選択画像ファイルは、領域２００にも領域２０１にも地図画像上に表示するために必要な緯度経度の情報がないことになる。そのため、地図画像上に表示する際に、表示位置を算出することができない。よって、このような選択画像ファイル内の画像については、表示しないものとする。
【００７７】
ステップＳ６０７では、選択画像ファイル内の撮影場所（範囲情報）が指し示す地図画像上の範囲を求める。そして求めた範囲を示す枠を、この地図画像上に配置する。ステップＳ６０８では、ステップＳ６０７で求めた枠内の位置に、選択画像ファイル内の画像の縮小画像（若しくはサムネイル画像の縮小画像）、及び選択画像ファイル内に記録されている緯度、経度などの属性情報、を配置する。ステップＳ６０９では、カウンタｎの値を１つインクリメントする。そして処理はステップＳ６０３に戻り、以降の処理を繰り返す。
【００７８】
次に、図６のフローチャートに従って表示される地図画像の一例を図７に示す。地図画像７００は、地図画像を管理しているサーバなどから外部機器がダウンロードすることで入手したものである。なお、ダウンロードの際には、画像Ａ、画像Ｂ、画像Ｃのそれぞれの撮影場所が含まれるようなエリアの地図画像をダウンロードするようにする。このように所定のエリアの地図画像をダウンロードする為の技術については一般的なものであるので、これについての詳細な説明は省略する。
【００７９】
地図画像７００の左上隅７０１は、地図画像７００内では北西の端である。地図画像７００の右下隅７０２は、地図画像７００では南東の端である。枠７０３は、ステップＳ６０７で求めた範囲を示すものである。ステップＳ６０７では、枠７０３の左上隅７０４及び右下隅７０５の位置を、選択画像ファイル内の撮影場所が指し示す地図画像上の範囲を規定する情報として求める。そして枠７０３内の適当な位置には、画像Ｃ及び画像Ｃの撮影日時が配されたウィンドウ７０８が配置されている。
【００８０】
画像Ｂの画像ファイル内の撮影場所に対応する地図画像７００上の位置には「×」のマーカ７０６が配置されており、その近傍に画像Ｂ及び画像Ｂの撮影日時が配されたウィンドウ７０７が配置されている。もちろん、マーカ７０６の位置にウィンドウ７０７を配置しても良い。この場合、マーカ７０６は配さないことになる。これは画像Ａについても同様である。
【００８１】
次に、上記のステップＳ６０５における処理、即ち、地図画像７００上における縮小画像の配置位置(shotX,shotY)を求める処理について説明する。なお、実際には、配置位置(shotX,shotY)にはマーカ７０６を配置し、その近傍位置に縮小画像を配置する。
【００８２】
ここで、地図画像７００において７０１を原点とし、横方向をＸ軸方向、縦方向をＹ軸方向とする。また、ステップＳ６０５における処理を行う段階で、以下の変数の値は既知のものであるとする。
【００８３】
mapN0 : 原点701における緯度（度）
mapE0 : 原点701における経度（度）
mapN1 : 右下隅の点702における緯度（度）
mapE1 : 右下隅の点702における経度（度）
shotN : 画像Bの撮影場所の緯度（度）
shotE : 画像Bの撮影場所の経度（度）
uiX0  : 原点７０１のX座標(pixel)
uiY0  : 原点７０１のY座標(pixel)
uiX1  : 点702のX座標(pixel)
uiY1  : 点702のY座標(pixel)
shotX : マーカ７０６のX座標(pixel)
shotY : マーカ７０６のY座標(pixel)
実際の撮影場所と、地図画像７００内の位置と、を一致させるために、式（１）、式（２）が共に真になるようにする。この条件を満たす、地図画像７００上における撮影場所の座標は、以下の式（３）、（４）を計算することで求めることができる。
【００８４】
(mapE0-mapE1):(shotE-mapE1)=(uiX0-uiX1):(shotX-uiX1)    …（１）
(mapN0-mapN1):(shotN-mapN1)=(uiY0-uiY1):(shotY-uiY1)    …（２）
shotX=((uiX0-uiX1)×(shotE-mapE1))÷(mapE0-mapE1)+uiX1     …（３）
shotY=((uiY0-uiY1)×(shotN-mapN1))÷(mapN0-mapN1)+uiY1     …（４）
前述の変数に加え、以下の変数の値は既知のものであるとし、枠(shotX0,shotY0)〜(shotX1,shotY1)の描画位置の算出方法について説明する。
【００８５】
shotN0 : 画像Cの撮影場所の範囲の北西端の緯度（度）
shotE0 : 画像Cの撮影場所の範囲の北西端の経度（度）
shotN1 : 画像Cの撮影場所の範囲の南東端の緯度（度）
shotE1 : 画像Cの撮影場所の範囲の南東端の経度（度）
shotX0 : 左上隅７０４のX座標(pixel)
shotY0 : 左上隅７０４のY座標(pixel)
shotX1 : 右下隅７０５のX座標(pixel)
shotY1 : 右下隅７０５のY座標(pixel)
前述のステップＳ６０５における算出方法と同様に、式（５）、式（６）、式（７）、式（８）が全て真になるようにする。この条件を満たす、枠を構成する頂点の座標は、式（９）、式（１０）、式（１１）、式（１２）、を計算することで求めることができる。
【００８６】
(mapE0-mapE1):(shotE0-mapE1)=(uiX0-uiX1):(shotX0-uiX1)     …（５）
(mapN0-mapN1):(shotN0-mapN1)=(uiY0-uiY1):(shotY0-uiY1)     …（６）
(mapE0-mapE1):(shotE1-mapE1)=(uiX0-uiX1):(shotX1-uiX1)     …（７）
(mapN0-mapN1):(shotN1-mapN1)=(uiY0-uiY1):(shotY1-uiY1)     …（８）
shotX0=((uiX0-uiX1)×(shotE0-mapE1))÷(mapE0-mapE1) +uiX1     …（９）
shotY0=((uiY0-uiY1)×(shotN0-mapN1))÷(mapN0-mapN1) +uiY1     …（１０）
shotX1=((uiX0-uiX1)×(shotE1-mapE1))÷(mapE0-mapE1) +uiX1     …（１１）
shotY1=((uiY0-uiY1)×(shotN1-mapN1))÷(mapN0-mapN1) +uiY1     …（１２）
ここで、撮影場所の座標(shotX,shotY)を求める処理（ステップＳ６０５）について、具体的な例を用いて説明する。外部機器がダウンロードした地図画像は、緯度43.45度、経度142.25度から緯度43.25度、経度142.45度の範囲内のエリアのものであるとする。画像Bの詳細な撮影場所は、緯度43.33度、経度142.32度とする。また、地図画像内の座標(uiX1,uiY1)を(0,0)、(uiX0,uiY0)を(1500,2000)とする。また、上記の各変数の値を式（１３）に示す。
【００８７】
mapN0=43.45
mapE0=142.25
mapN1=43.25
mapE1=142.45
shotN=43.33
shotE=142.32
uiX0=0
uiY0=0
uiX1=2000
uiY1=1500    …（１３）
式（３）と式（４）に式（１３）の値を代入して算出した結果を式（１４）、式（１５）に示す。
【００８８】
shotX=((uiX0-uiX1)×(shotE-mapE1))÷(mapE0-mapE1)+uiX1 =((0-2000)×(142.32-142.45))÷(142.25-142.45)+2000= 700     …（１４）
shotY=((uiY0-uiY1)×(shotN-mapN1))÷(mapN0-mapN1)+uiY1=((0-1500)×(43.33-43.25))÷(43.45-43.25)+1500= 900    …（１５）
以上説明した方法で、撮影場所を算出する。式（１４）、式（１５）の結果となった場合には、原点７０１からX軸方向に700pixel、Y軸方向に900pixelの位置を画像Ｂの撮影場所として求める。
【００８９】
次に、ステップＳ６０７における処理について、具体的な例を用いて説明する。画像Cの撮影場所は、緯度43.4度、経度142.3度から緯度43.3度、経度142.4度とする。上記の各変数の値を式（１６）に示す。その他の値は式（１３）と同じとする。
【００９０】
shotN0=43.4
shotE0=142.3
shotN1=43.3
shotE1=142.4    …（１６）
式（９）から式（１２）に式（１３）と式（１６）の値を代入して算出した結果を、以下の通り、式（１７）から式（２０）に示す。
【００９１】
shotX0=((uiX0-uiX1)×(shotE0-mapE1))÷(mapE0-mapE1) +uiX1=((0-2000)×(142.3-142.45))÷(142.25-142.45)+2000=500      …（１７）
shotY0=((uiY0-uiY1)×(shotN0-mapN1))÷(mapN0-mapN1) +uiY1=((0-1500)×(43.4-43.25))÷(43.45-43.25)+1500= 375    …（１８）
shotX1=((uiX0-uiX1)×(shotE1-mapE1))÷(mapE0-mapE1) +uiX1=((0-2000)×(142.4-142.45))÷(142.25-142.45)+2000= 1500     …（１９）
shotY1=((uiY0-uiY1)×(shotN1-mapN1))÷(mapN0-mapN1) +uiY1=((0-1500)×(43.3-43.25))÷(43.45-43.25)+1500= 1125    …（２０）
以上説明した方法で、撮影場所範囲を算出する。式（１７）から式（２０）の結果になった場合には、X座標とY座標が(500,375)から(1500,1125)までを画像Ｃに対する枠（図７では枠７０３）とする。
【００９２】
なお、本実施形態では、撮影場所の表示例について説明したが、撮影日時の場合でも、画像表示装置がその情報を表示する機能があればよい。例えば、図7の画像Cのように撮影時間の範囲を文字列で表示すればよい。
【００９３】
＜撮影場所のバリエーション＞
上記の説明では、撮影場所として、GPSを用いて取得した緯度、経度を用いたが、撮影場所を特定できる情報であれば、他の情報でもよい。例えば、携帯電話の基地局や無線LANのアクセスポイントを利用して取得した撮影場所でもよい。
【００９４】
＜画像処理装置のバリエーション＞
上記の説明では、画像処理装置の一例としてディジタルスティルカメラを用いたが、複数の機器の組み合わせで画像処理装置を実現させても良い。例えば、撮像機能をもつディジタルカメラが画像を生成した後に、Ｉ／Ｆ１０９により通信回線111を介してコンピュータネットワーク112に接続し、この画像を、サーバへ送信する。そして、サーバにおいて第三者へ配信する際に前述した属性情報抽象化の処理を行っても良い。その場合、抽象化のタイミングや条件の設定はディジタルカメラ側で行い、その設定情報をサーバに送信してもよいし、パーソナルコンピュータにて図4と同様のユーザインターフェイスで設定を行い、その設定情報をサーバに送信してもよい。また、サーバに抽象化のタイミングや条件の設定を行うためのユーザインターフェイスを設け、そこで抽象化の設定を行っても良い。
【００９５】
＜抽象化した情報への変換条件のバリエーション＞
上記の説明では、ステップＳ３０７において、自宅の周辺であるか否かを判断していた。しかし、抽象化した情報への変換条件として、その他の条件を用いても良い。ここでは、撮影時刻、撮影日、被写体、送信先、配信先、の情報を用いて判断する方法について説明する。
【００９６】
ステップＳ３０７では、撮影日時が、ユーザによって予め設定された時間帯に含まれているか否かを判断しても良い。例えば、ユーザが予め設定した時間帯が２０：００〜６：００であるとする。この場合、ステップＳ３０７では、画像ファイルから取得した撮影日時がこの時間帯に含まれているか否かを判断する。そして含まれていれば、処理はステップＳ３０８に進む。これにより、夜間撮影された写真の撮影場所および撮影日時は抽象化されるので、夜に立ち寄る場所の情報などが閲覧者に伝わることを防止することができ、プライバシーを守ることができる。
【００９７】
また、ステップＳ３０７では、撮影日時が、ユーザによって予め設定された期間に含まれているか否かを判断しても良い。例えば、ユーザが予め設定した期間が期間Ｘであるとする。この場合、ステップＳ３０７では、画像ファイルから取得した期間がこの期間Ｘに含まれているか否かを判断する。そして含まれていれば、処理はステップＳ３０８に進む。これにより、旅行中の期間を抽象化しない期間として設定しておけば、旅行中の写真の撮影場所は、閲覧者が詳細を知ることができるようになる。対して、日常生活で撮影した画像については、撮影場所および撮影日時を抽象化するので、プライバシーを守ることができる。
【００９８】
また、ステップＳ３０７では、画像ファイル内の画像に、ユーザが予め設定した被写体が映っているか否かを判断しても良い。例えば、ユーザが予め設定した被写体が被写体Ｘであるとする。この場合、ステップＳ３０７では、画像ファイル内の領域２００内に記録されている被写体情報が被写体Ｘを示しているか否かを判断する。そして示していれば、処理はステップＳ３０８に進む。これにより、自分の子供や友人が写っている場合には、撮影場所および撮影日時を抽象化するので、個人を特定する情報が少なくなり、プライバシーを守ることができる。
【００９９】
また、ステップＳ３０７では、画像ファイルの送信先が、ユーザによって予め設定された送信先であるか否かを判断しても良い。例えば、ユーザが予め設定した送信先が送信先Ｘであるとする。この場合、ステップＳ３０７では、設定モードで設定された送信先が送信先Ｘであるか否かを判断する。そして、設定された送信先が送信先Ｘである場合には、処理はステップＳ３０８に進む。これにより、たとえば、不特定多数が閲覧するブログが送信先だった場合には抽象化すると設定することができるので、ブログ公開用のサーバへ送信する際には、撮影場所および撮影日時を抽象化するので、プライバシーを守ることができる。一方、家族用のWEBアルバム用のサーバへ送信する際には抽象化しないので、詳細な情報を閲覧者が知ることができる。
【０１００】
また、ステップＳ３０７では、画像ファイルの配信先が、ユーザによって予め設定された配信先であるか否かを判断しても良い。例えば、ユーザが予め設定した配信先が配信先Ｘであるとする。この場合、ステップＳ３０７では、設定された配信先が配信先Ｘであるか否かを判断する。そして、設定された配信先が配信先Ｘである場合には、処理はステップＳ３０８に進む。これにより、たとえば、不特定多数が閲覧するブログが配信先だった場合には抽象化すると設定することができるので、ブログ公開用のサーバへ送信する際には、撮影場所および撮影日時を抽象化するので、プライバシーを守ることができる。一方、家族用のWEBアルバム用のサーバへ送信する際には抽象化しないので、詳細な情報を閲覧者が知ることができる。
【０１０１】
＜抽象化した情報への変換タイミングのバリエーション＞
上記の説明では、ステップＳ３０１では、ユーザが送信ボタン４１１を押下したか否かをＣＰＵ１０１が監視している例について説明した。しかし、ユーザがレリーズボタン４００を押下したか否か（撮像指示が入力されたか否か）をＣＰＵ１０１が監視するようにしても良い。この場合、レリーズボタン４００が押下された（撮像指示が入力された）ことをＣＰＵ１０１が検知した場合には、処理をステップＳ３０２に進める。もちろん、サーバによる配信がなされたか否かを指標としても良い。これについては第３の実施形態で詳しく説明する。
【０１０２】
＜属性情報の更新方法のバリエーション＞
上記の説明では、ステップＳ３１０では、詳細な情報（ステップＳ３０６で読み出した情報）を削除し、範囲情報を記録することを例に挙げた。しかし、詳細な情報を削除しなくても、容易に見られない状態にし、抽象化した情報が閲覧に利用できるような形にしても良い。例えば、詳細な情報を暗号化したり、電子透かし技術により画像へ埋め込んだりして、容易に見られない状態（不可視の情報）に変換してもよい。また、送信するデータのみ抽象化処理を行い、抽象化処理前の元のデータは、記憶媒体に残しておくようにしてもよい。
【０１０３】
以上の説明により、本実施形態によれば、撮影者のプライバシーを守る上、撮影場所や撮影日時の情報を検索や表示に使うことができる。また、画像表示装置が対応していれば、撮影場所や日時の大まかな情報を閲覧者が知ることができる。
【０１０４】
［第２の実施形態］
第１の実施形態では、撮影場所及び撮影日時を、範囲を示す情報に抽象化した。本実施形態では、撮影場所（位置情報）及び撮影日時（日時情報）が示す数値（数値情報）の精度を下げ、有効な桁数を有する撮影場所及び撮影日時に抽象化する。以下では、第１の実施形態との差異についてのみ説明し、以下で特に触れない限りは第１の実施形態と同様であるものとする。
【０１０５】
＜抽象化用の設定画面について＞
撮影場所及び撮影日時を抽象化するための設定を行う設定画面について、ディジタルスティルカメラの背面図である図８を用いて説明する。図８に示したものは、図４に示したものにおいて、ディスプレイ４０１の表示内容が抽象化用の設定画面に変わっているのみである。然るに図８では、抽象化用の設定画面についてのみ参照番号を付し、これについてのみ説明する。
【０１０６】
図８に示した設定画面は、図４の設定画面において、ボタン４１９に選択枠４１５を移動させてから決定ボタン４０６を押下した場合にディスプレイ４０１に表示されるものである。
【０１０７】
メニュー８０１は、緯度の有効桁数を選択するためのもので、ボタン４０７〜４１０を操作して選択枠８０５をメニュー８０１に移動させた後、決定ボタン４０６を押下すると、プルダウン式のメニューを表示する。表示するメニューの項目は、「整数」、「小数点第一位」、「小数点第二位」、である。ユーザがボタン４０７〜４１０を操作し、これらの項目のうち何れか１つを選択し、決定ボタン４０６を押下すると、決定した有効桁数を設定情報としてＲＡＭ１０３などのメモリに格納すると共に、決定した有効桁数がメニュー８０１上に表示される。
【０１０８】
メニュー８０２は、経度の有効桁数を選択するためのもので、ボタン４０７〜４１０を操作して選択枠８０５をメニュー８０２に移動させた後、決定ボタン４０６を押下すると、プルダウン式のメニューを表示する。表示するメニューの項目は、「整数」、「小数点第一位」、「小数点第二位」、である。ユーザがボタン４０７〜４１０を操作し、これらの項目のうち何れか１つを選択し、決定ボタン４０６を押下すると、決定した有効桁数を設定情報としてＲＡＭ１０３などのメモリに格納すると共に、決定した有効桁数がメニュー８０２上に表示される。
【０１０９】
なお、緯度、経度のそれぞれの有効桁数を指定するための方法についてはこれに限定するものではなく、直接有効桁数を示す数値を入力装置１０７を用いて入力しても良い。また、有効桁数はこれに限るものではない。
【０１１０】
メニュー８０３は、撮影時間をどの単位で表現するのかを選択するためのもので、ボタン４０７〜４１０を操作して選択枠８０５をメニュー８０３に移動させた後、決定ボタン４０６を押下すると、プルダウン式のメニューを表示する。表示するメニューの項目は、「６時間」、「３時間」、「６０分」、である。ユーザがボタン４０７〜４１０を操作し、これらの項目のうち何れか１つを選択し、決定ボタン４０６を押下すると、決定した単位を設定情報としてＲＡＭ１０３などのメモリに格納すると共に、決定した単位がメニュー８０３上に表示される。
【０１１１】
選択枠８０５をボタン８０４に移動させ、そこで決定ボタン４０６を押下すると、図８に例示した設定画面から、図４に例示した設定画面に切り替わる。なお、図８に例示した設定画面で設定した各種の設定情報は、このような画面の切り替え時にＲＡＭ１０３などのメモリに格納するようにしても良いし、その格納するタイミングについては特に限定するものではない。また、図８に例示した設定画面についても、図４に例示した設定画面と同様、ＣＰＵ１０１により制御される。
【０１１２】
＜画像制御処理について＞
画像ファイルを送信するためにディジタルスティルカメラが行う処理は、図３のフローチャートにおいて、ステップＳ３０８〜Ｓ３１０を図９のステップＳ９０１〜Ｓ９０３に置き換えたものとなる。即ち、本実施形態ではＣＰＵ１０１は、メニュー４１８を用いて設定した設定情報が指し示す変換条件が満たされたと判断した場合には、図９のフローチャートに従った処理を実行し、その後、処理をステップＳ３１１に進める。
【０１１３】
ステップＳ９０１ではＣＰＵ１０１は、ステップＳ３０６で読み出した撮影場所である緯度、経度において、メニュー８０１で設定した有効桁数よりも下の桁を削除することで、この緯度、経度を更新する。これにより、有効桁数で緯度、経度を表現する撮影場所の情報を作成することができる。
【０１１４】
ステップＳ９０２ではＣＰＵ１０１は、ステップＳ３０６で読み出した撮影日時を、メニュー８０２で設定した単位で量子化（設定した単位より小さい値を切り捨てる）することで、この撮影日時を更新する。例えば、メニュー８０２で「６０分間」を単位として設定した場合、撮影日時「９時３５分」は「９時」と量子化される。
【０１１５】
ステップＳ９０３ではＣＰＵ１０１は、領域２００内に記録されていた撮影場所を、ステップＳ９０１で更新した撮影場所に更新することで、撮影場所を抽象化した情報に更新する。同様に、領域２００内に記録されていた撮影日時を、ステップＳ９０２で更新した撮影日時に更新することで、撮影日時を抽象化した情報に更新する。更にステップＳ９０３ではＣＰＵ１０１は、領域２０１内に、メニュー８０１で設定した有効桁数、メニュー８０２で設定した単位を書き込むことで、この領域２０１を更新する。
【０１１６】
領域２００及び領域２０１について、更新前と更新後とを図１１に示す。１１０１の欄には、領域２００（Exif_Base属性情報領域）及び領域２０１（Exif_MakerNote属性情報領域）を記している。更新前には、領域２００内には上述の通り、１１０２で示す如く、撮影場所としての緯度、経度、撮影日時が記録されている。
【０１１７】
ステップＳ９０１ではＣＰＵ１０１は、欄１１０３に示している緯度、経度については、欄１１０４に示す如く、メニュー８０１で設定した有効桁数（ここでは小数点第一位）を有する緯度、経度にそれぞれ更新する。
【０１１８】
ステップＳ９０２ではＣＰＵ１０１は、欄１１０３に示している撮影日時については、欄１１０４に示す如く、メニュー８０２で設定した単位（ここでは６０分）で量子化して更新する。
【０１１９】
そして、緯度についてメニュー８０１で設定した有効桁数（図１１では小数点第一位）による有効最小単位「0.1」を、欄１１０４に示す如く、領域２０１内に書き込む。更に、経度についてメニュー８０２で設定した有効桁数（図１１では小数点第一位）による有効最小単位「0.1」を、欄１１０４に示す如く、領域２０１内に書き込む。更に、撮影日時についてメニュー８０２で設定した単位（図１１では６０分）による有効最小単位「１」（時間）を、欄１１０４に示す如く、領域２０１内に書き込む。
【０１２０】
＜範囲情報への変換について＞
有効桁数を有する緯度、経度、設定された単位で量子化された撮影日時、のそれぞれを、第１の実施形態と同様、範囲情報として記録しても良い。その場合、先ず、以下に示す各変数の値は既知であるものとする。そして、緯度、経度についての範囲情報を、式（２１）、式（２２）、式（２３）、式（２４）を計算することで求める。
【０１２１】
exifShotN : 抽象化後の撮影場所の緯度
exifShotE : 抽象化後の撮影場所の経度
mStepN    : 緯度の最小有効単位
mStepE    : 経度の最小有効単位
shotN0    : 撮影場所の範囲の端の緯度（度）
shotE0    : 撮影場所の範囲の端の経度（度）
shotN1    : 撮影場所の範囲のshotN0とは反対側の端の緯度（度）
shotE1    : 撮影場所の範囲のshotE0とは反対側の端の経度（度）
shotN0=exifShotN            …（２１）
shotE0=exifShotE            …（２２）
shotN1=exifShotN+mStepN     …（２３）
shotE1=exifShotE+mStepE     …（２４）
以下に示す各変数の値が既知のものであるとした場合に、撮影日時についての範囲情報を、式（２５）、式（２６）を計算することで求める。
【０１２２】
exifShotHour : 抽象化後の撮影時刻(時)
minStep      : 時間の最小有効単位(時)
shotHour0    : 撮影日時の範囲の端(時)
shotHour1    : 撮影日時の範囲のshotHour0とは反対側の端（時）
shotHour0=exifShotHour          …（２５）
shotHour1=exifShotHour+minStep  …（２６）
これ以降については、第１の実施形態と同様である。
【０１２３】
以上の説明により、本実施形態によれば、撮影者のプライバシーを守る上、撮影場所や撮影日時の情報を検索や表示に使うことができる。また、画像表示装置が対応していれば、撮影場所や日時の大まかな情報を閲覧者が知ることができる。
【０１２４】
加えて、本実施形態においては、領域２００内の撮影場所および撮影日時は削除しない。そのため、画像表示装置が範囲の表示などに対応していなくても、切捨てされた情報を検索や表示に使うことが可能である。
【０１２５】
［第３の実施形態］
第１，２の実施形態では、ディジタルスティルカメラとしての画像処理装置について説明した。本実施形態では、サーバに適用した場合の画像処理装置について説明する。また、第１，２の実施形態では、緯度経度といった数値である情報を抽象化したが、本実施形態では、数値ではなく文字列の情報（文字列情報）であっても、抽象化可能であることを説明する。なお、以下では、第１の実施形態と異なる点のみについて触れ、第１の実施形態と同じ部分については特に触れないものとする。
【０１２６】
＜サーバの構成例について＞
サーバの機能構成例について、図１０のブロック図を用いて説明する。なお、サーバの機能構成例については図１０に示した構成に限るものではなく、同様の機能させ実現できれば、他の構成も考え得る。
【０１２７】
ＣＰＵ１００１は、ＲＯＭ１００２やＲＡＭ１００３に格納されているコンピュータプログラムやデータを用いてサーバ全体の制御を行うと共に、サーバが行うものとして後述する各種の処理を実行する。ＲＯＭ１００２には、ブートプログラムやサーバの設定データ等が格納されている。
【０１２８】
ＲＡＭ１００３は、ＨＤＤ（ハードディスクドライブ）１００５やＤＶＤＤ（ＤＶＤドライブ）からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ１００９を介して外部から受信したデータを一時的に記憶するためのエリアを有する。更にＲＡＭ１００３は、ＣＰＵ１００１が各種の処理を実行する際に用いるワークエリアも有する。即ち、ＲＡＭ１００３は、各種のエリアを適宜提供することができる。ディスプレイ１００４は、ＣＰＵ１００１による処理結果を画像や文字などでもって表示することができる。
【０１２９】
ＨＤＤ１００５には、ＯＳ（オペレーティングシステム）や、サーバが行うものとして後述する各処理をＣＰＵ１００１に実行させるためのコンピュータプログラムやデータが保存されている。また、既知の情報として説明するものも、このＨＤＤ１００５に保存されている。ＨＤＤ１００５に保存されているコンピュータプログラムやデータは、ＣＰＵ１００１による制御に従って適宜ＲＡＭ１００３にロードされ、ＣＰＵ１００１による処理対象となる。
【０１３０】
ＤＶＤＤ１００６は、ＤＶＤに記録された情報を読み取り、読み取った情報を、ＨＤＤ１００５やＲＡＭ１００３に出力する。なお、ＤＶＤＤ１００６の代わりに、若しくは追加して、ＣＤ−ＲＯＭドライブ、ＭＯ等の光（磁気）ディスクドライブ、テープストリーマ、ＤＤＳなどの磁気テープドライブ等を設けてもよい。
【０１３１】
入力装置１００７は、キーボードやマウスなどのポインティングデバイスにより構成されており、サーバの操作者が操作することで、各種の指示をＣＰＵ１００１に対して入力することができる。
【０１３２】
Ｉ／Ｆ１００９は、サーバを通信回線１０１１に接続する為のものである。通信回線１０１１には、コンピュータネットワーク１０１２が接続されており、更にこのコンピュータネットワーク１０１２には、サーバやパーソナルコンピュータ等の外部機器が接続されている。然るにサーバは、このＩ／Ｆ１００９を介して、コンピュータネットワーク１０１２に接続されている外部機器とのデータ通信を行うことができる。本実施形態では、衛星測位システム（ＧＰＳ）を利用して現在位置を算出するサーバがコンピュータネットワーク１０１２に接続されているので、サーバはこのＩ／Ｆ１００９を介してこのサーバから現在位置を取得することができる。上記の各部はシステムバス１０１０に接続されている。このシステムバス１０１０は、アドレスバス、データバス、制御バス等からなるものである。
【０１３３】
＜撮影場所の抽象化設定の為の設定画面について＞
本実施形態ではディジタルスティルカメラは、設定モードでは図１５に例示するような設定画面をディスプレイ４０１に表示させる。図１５に例示した設定画面は、図４に示した設定画面に、メニュー１５０１を追加したものであり、それ以外については図４に例示した設定画面と同じである。然るに以下では、このメニュー１５０１について説明する。
【０１３４】
ユーザがボタン４０７〜４１０を操作して選択枠をメニュー１５０１に移動させ、そこで決定ボタンを押下すると、プルダウン式のメニューが表示される。このメニューの項目は、「国までの地名に変更」、「県までの地名に変更」、「市までの地名に変更」、である。即ち、このメニュー１５０１は、撮像画像の撮影場所を表す地名をどの程度詳細に表現するのか（どの詳細度とするのか）を指定するものである。
【０１３５】
ユーザがボタン４０７〜４１０を操作し、所望の項目の位置に選択枠を移動させ、そこで決定ボタン４０６を押下すると、ＣＰＵ１０１は、この所望の項目を、抽象化した情報への変換条件に係る設定情報としてＲＡＭ１０３等のメモリに格納する。更にＣＰＵ１０１は、この所望の項目を、メニュー１５０１上に文字列として表示する。図１５では「市までの地名に変更」が所望の項目として選択されたので、この「市までの地名に変更」がメニュー１５０１上に文字列として表示されている。
【０１３６】
なお、図１５に例示した設定画面で設定した各種の設定情報は、他の動作モードに切り替わった場合などにＲＡＭ１０３などのメモリに格納するようにしても良いし、その格納するタイミングについては特に限定するものではない。
【０１３７】
そしてこのようにして設定された様々な設定情報を含む画像ファイルは、ディジタルスティルカメラから本実施形態に係るサーバに対して送信される。もちろん、この画像ファイルには、メニュー１５０１を用いて設定した設定情報も含まれている。
【０１３８】
＜画像制御処理について＞
サーバがディジタルスティルカメラから受信した画像ファイルを配信する際に、サーバが行う処理について、同処理のフローチャートを示す図１２を用いて説明する。図１２のフローチャートに従った処理は、上記の通り、ＣＰＵ１００１が行うものである。また、図１２において図３と同じステップ番号については、処理の主体が異なるだけで処理の内容については同様である。なお、以下では、抽象化した情報への変換タイミングは「配信時」であるものとする。
【０１３９】
ステップＳ１２０１ではＣＰＵ１００１は、送信ボタン４１１が押下された旨を示すメッセージをディジタルスティルカメラから受信した場合には、処理はステップＳ１２０２に進む。一方、受信していない場合には、本処理を終了する。送信ボタン４１１が押下されると、ディジタルスティルカメラからは画像ファイルが送信される。
【０１４０】
ステップＳ１２０２ではＣＰＵ１００１は、ディジタルスティルカメラから送信されたそれぞれの画像ファイル内の領域２０１内の配信済みフラグを参照する。そして、配信済みフラグがFALSEとなっている画像ファイルのみをＲＡＭ１００３にロード（抽出）する。
【０１４１】
ステップＳ３０３ではＣＰＵ１００１は、カウンタｎを０に初期化する。ステップＳ３０４ではＣＰＵ１００１は、カウンタｎの値と、ステップＳ１２０２でＲＡＭ１０３にロードした画像ファイルの総数と、の大小比較を行う。この大小比較の結果、（カウンタｎの値）＜（ステップＳ１２０２でＲＡＭ１０３にロードした画像ファイルの総数）であれば、処理はステップＳ３０５に進む。一方、（カウンタｎの値）≧（ステップＳ１２０２でＲＡＭ１０３にロードした画像ファイルの総数）であれば、本処理を終了する。
【０１４２】
ステップＳ３０５ではＣＰＵ１００１は、ステップＳ１２０２で抽出した画像ファイル内の「チェックボックス４１６がＯＮであるかＯＦＦであるのかを特定する為の設定情報」を参照する。そしてこの参照した設定情報が、チェックボックス４１６がＯＮであることを指し示している場合には、処理はステップＳ３０６に進み、ＯＦＦであることを指し示している場合には、処理はステップＳ１２０６に進む。
【０１４３】
この場合、ステップＳ１２０６ではＣＰＵ１００１は、ステップＳ１２０２でＲＡＭ１００３にロードした画像ファイルのうち未配信の画像ファイルを、Ｉ／Ｆ１００９を介して外部に対して配信する。
【０１４４】
ステップＳ３０６ではＣＰＵ１００１は、ステップＳ１２０２でＲＡＭ１００３にロードした画像ファイルのうち、配信済みフラグがＦＡＬＳＥであるものを１つ選択する。そして選択した画像ファイル内の領域２００内に記録されている情報のうち、画像の撮影場所と撮影日時と、を示す情報を読み出す。
【０１４５】
ステップＳ３０７ではＣＰＵ１００１は、メニュー４１８を用いて設定した設定情報が指し示す変換条件が満たされたか否かを判断する。例えば、ディジタルスティルカメラのユーザの自宅の緯度、経度をＲＡＭ１００３などのメモリに予め登録しておき、メニュー４１８で「自宅の周辺だった場合」が選択されたとする。この場合、ステップＳ３０７では、自宅の緯度、経度が指し示す位置（自宅の位置）と、ステップＳ３０６で読み出した撮影場所と、の間の距離を算出する。そしてこの算出した距離が、予め定められた閾値以下であれば、「自宅の周辺である」と判断する。もちろん、この判断方法についてはこれに限るものではない。
【０１４６】
そして、メニュー４１８を用いて設定した設定情報が指し示す変換条件が満たされたと判断した場合には、処理はステップＳ１２０３に進み、満たされていないと判断した場合には、処理はステップＳ１２０６に進む。
【０１４７】
この場合、ステップＳ１２０６ではＣＰＵ１００１は、ステップＳ３０６で選択した画像ファイルを、Ｉ／Ｆ１００９を介して外部に対して配信する。
【０１４８】
ステップＳ１２０３ではＣＰＵ１００１は、緯度経度と、この緯度経度における地名情報と、を関連付けて管理しているサーバに対して、Ｉ／Ｆ１００９を介してアクセスする。そしてＣＰＵ１００１は、ステップＳ３０６で選択した選択画像ファイル内に記録されている緯度経度に対応する地名情報を、このサーバからＲＡＭ１００３などのメモリにダウンロードする。このダウンロードの際には、図１３に例示する如く、国、県、市、区、区町村以下の地名、番地、といった地名情報として精度の異なる情報をそれぞれの文字列情報としてダウンロードする。国や県の情報ほど精度は低く、番地までの情報になるほど精度は高くなる。なぜならば、国や県の情報だけでは場所を特定しにくく、番地までの情報だと場所を特定しやすくなるからである。
【０１４９】
ステップＳ１２０４ではＣＰＵ１００１は、ステップＳ１２０３で取得した地名情報のうち、メニュー１５０１で指定した詳細レベルまでの地名情報を採用する。図１５では「市までの地名に変更」と設定されているので、市までの地名の文字列を採用する。
【０１５０】
ステップＳ１２０５ではＣＰＵ１００１は、選択画像ファイル内の領域２００内の撮影場所を削除すると共に、領域２０１内に、ステップＳ１２０４で採用した文字列を並べてこの領域２０１内に登録する。
【０１５１】
領域２００及び領域２０１について、更新前と更新後とを図１４に示す。１４０１の欄には、領域２００（Exif_Base属性情報領域）及び領域２０１（Exif_MakerNote属性情報領域）を記している。更新前には、領域２００内には上述の通り、１４０２，１４０３で示す如く、撮影場所としての緯度、経度が記録されている。
【０１５２】
ステップＳ１２０５ではＣＰＵ１００１は先ず、１４０３、１４０４に示す如く、領域２００内の緯度経度を削除する。そして次にＣＰＵ１００１は、１４０４に示す如く、ステップＳ１２０３で取得した地名情報のうち、メニュー１５０１で指定した詳細レベルまでの地名情報「東京」、「大田区」を採用する。そして採用した文字列を並べたもの「東京都大田区」を領域２０１内に登録する。
【０１５３】
そしてこの場合、ステップＳ１２０６ではＣＰＵ１００１は、ステップＳ１２０５で領域２００及び領域２０１が更新された画像ファイルを、Ｉ／Ｆ１００９を介して外部に対して配信する。
【０１５４】
ステップＳ１２０７ではＣＰＵ１００１は、ステップＳ１２０６で配信した画像ファイル内の配信済みフラグをTRUEに書き換える。ステップＳ３１３ではＣＰＵ１００１は、カウンタｎの値を１つインクリメントする。そしてステップＳ３０４以降の処理を繰り返す。
【０１５５】
なお、以上の説明では、国、県、市、区、区町村以下の地名、番地、をそれぞれ分けて受信するものとしたが、詳細な地名を全て受信してから、キーワードによって分離してもよい。たとえば、地名の中に都道府県のキーワードが付与されていれば、その前の文字列を県と判定する。同様に市が付与されていれば、その前の文字列を市と判定する。そして、分離してもよい。
【０１５６】
＜画像処理装置のバリエーション＞
上記の説明では、画像処理装置の一例としてサーバを用いたが、複数の機器の組み合わせで画像処理装置を実現させても良い。ディジタルスティルカメラが緯度経度から地名を検索する機能を持つサーバと直接通信し、詳細な地名情報を受信した後に、ユーザに地名の精度を選択させてもよい。そして、ディジタルスティルカメラで属性情報の抽象化処理を行っても良いし、サーバに送信した後に、サーバ側にて属性情報の抽象化処理を行っても良い。また、ディジタルスティルカメラ自体に、緯度経度から地名を検索する機能があれば、地名情報を取得するためにサーバと通信する必要はない。
【０１５７】
＜撮影場所のバリエーション＞
上記の説明では、緯度、経度から、場所を特定するための精度がより低い情報へと変換する例について説明した。しかし、領域２００若しくは領域２０１に元々詳細な撮影場所が記録されている場合には、この撮影場所を、場所を特定するための精度がより低い情報に変換すればよい。
【０１５８】
また、その際には、緯度経度など他の詳細な撮影場所がある場合には削除（一部を削除）するか、もしくは第１の実施形態若しくは第２の実施形態のように、抽象化した情報へと変換すれば、プライバシーに関する情報を守ることができる。
【０１５９】
＜撮影場所の抽象化設定のバリエーション＞
上記の説明では、場所を特定するための精度をどのレベルまでにするのかをメニュー１５０１を用いて指定したが、他の設定画面を用いて、各レベルの撮影場所を表示し、ユーザに選択させても良い。
【０１６０】
例えば、図１６に例示した設定画面を用いて、変換先の文字列を指定しても良い。図１６に例示した設定画面は、図４の設定画面において、ボタン４１９に選択枠４１５を移動させてから決定ボタン４０６を押下した場合にディスプレイ４０１に表示されるものである。然るに以下の説明では、係る設定はディジタルスティルカメラ側で行うものとしているが、サーバ側で行っても良い。
【０１６１】
ユーザがボタン４０７〜４１０を操作して選択枠１６０６をラジオボタン１６０１に移動させ、そこで決定ボタン４０６を押下すると、場所を特定するための精度が最も高い文字列が選択（選択指示）される。
【０１６２】
ユーザがボタン４０７〜４１０を操作して選択枠１６０６をラジオボタン１６０２に移動させ、そこで決定ボタン４０６を押下すると、場所を特定するための精度が２番目に高い文字列が選択される。
【０１６３】
ユーザがボタン４０７〜４１０を操作して選択枠１６０６をラジオボタン１６０３に移動させ、そこで決定ボタン４０６を押下すると、場所を特定するための精度が３番目に高い文字列が選択される。
【０１６４】
ユーザがボタン４０７〜４１０を操作して選択枠１６０６をラジオボタン１６０４に移動させ、そこで決定ボタン４０６を押下すると、場所を特定するための精度が４番目に高い文字列が選択される。
【０１６５】
ユーザがボタン４０７〜４１０を操作して選択枠１６０６をラジオボタン１６０５に移動させ、そこで決定ボタン４０６を押下すると、場所を特定するための精度が最も低い文字列が選択される。
【０１６６】
なお、ラジオボタン１６０１〜１６０５は何れか１つのみが選択可能となる。この設定画面を用いることで、緯度経度から、若しくは詳細な撮影場所から、ラジオボタン１６０１〜１６０５の何れか１つに対応する撮影場所に変換することができる。
【０１６７】
以上の説明により、本実施形態によれば、数値の情報でなくても抽象化を行うことが可能である。そして、撮影者のプライバシーを守る上、撮影場所の大まかな地名を閲覧者が知ることができる。加えて、その地名情報を表示や検索に使用することができる。
【０１６８】
［第４の実施形態］
本実施形態では、第１，２の実施形態と同様、ディジタルスティルカメラとしての画像処理装置について説明する。また、本実施形態では、文字列の情報として、撮像画像の撮影者を抽象化する。なお、以下では、第１の実施形態と異なる点のみについて触れ、第１の実施形態と同じ部分については特に触れないものとする。
【０１６９】
＜抽象化用の設定画面について＞
撮影者を抽象化するための設定を行う設定画面について、ディジタルスティルカメラの背面図である図１７を用いて説明する。図１７に示した設定画面は、図４の設定画面において、ボタン４１９に選択枠４１５を移動させてから決定ボタン４０６を押下した場合にディスプレイ４０１に表示されるものである。
【０１７０】
エディットボックス１７０５は、撮影者のニックネームを入力するためのものである。エディットボックス１７０６は、撮影者の属するグループ名を入力するためのものである。エディットボックス１７０７は、撮影者の属する会社名や学校名を入力するためのものである。エディットボックス１７０８は、撮影者のファミリーネーム(姓)を入力するためのものである。
【０１７１】
ユーザがボタン４０７〜４１０を操作して何れかのエディットボックスを選択してから決定ボタン４０６を押下すると、選択したエディットボックス内に文字を入力することができる。文字の入力方法については第１の実施形態と同様である。即ち、ユーザはボタン４０７〜４１０を用いて領域１７０９内に表示されている文字を選択することができ、選択後に決定ボタン１７１０を押下すると、この選択した文字が選択したエディットボックス内に追加表示される。もちろん、文字入力の方法はこれに限るものではない。
【０１７２】
ラジオボタン１７０１〜１７０４は、何れか１つのみが選択可能なものであり、ボタン４０７〜４１０を操作して選択枠を所望のラジオボタンに移動させることで、この所望のラジオボタンを選択することができる。図１７では、ラジオボタン１７０１が選択された状態が示されている。そしてラジオボタン１７０１〜１７０４のうち何れか１つを選択し、そこで決定ボタン４０６を押下すると、選択したラジオボタンに対応するエディットボックス内に入力された文字列が抽象化対象として設定される。ラジオボタン１７０１にはエディットボックス１７０５が対応している。ラジオボタン１７０２にはエディットボックス１７０６が対応している。ラジオボタン１７０３にはエディットボックス１７０７が対応している。ラジオボタン１７０４にはエディットボックス１７０８が対応している。
【０１７３】
ユーザがボタン４０７〜４１０を操作してボタン１７１１を選択し、決定ボタン４０６を押下すると、図１７の設定画面で設定した内容をＲＡＭ１０３などのメモリに格納する。更には、ディスプレイ４０１に表示される画面は、図１７に例示した設定画面から図４に例示した設定画面に切り替わる。
【０１７４】
図１７に例示した設定画面によって設定され、ＲＡＭ１０３などのメモリに記録される情報について、図１８（ａ）を用いて説明する。各エディットボックス１７０５〜１７０８に対応する項目１８０１が列挙されており、各エディットボックス１７０５〜１７０８に入力された文字列１８０２が列挙されている。そして、各項目において対応するラジオボタンが選択状態（ＯＮ）にあるのか非選択状態（ＯＦＦ）にあるのかが選択状態１８０３として列挙されている。図１８（ａ）では、ニックネームとして入力された文字列「Ｈａｎａ」に対応するラジオボタン１７０１が選択状態にあり、それ以外のラジオボタンは非選択状態にある例を示している。
【０１７５】
＜画像制御処理について＞
本実施形態に係るディジタルスティルカメラが行う処理は、図３のフローチャートにおいて、ステップＳ３０８〜Ｓ３１０を図１８（ｂ）のステップＳ１９０１，Ｓ１９０２に置き換えたものとなる。即ち、本実施形態ではＣＰＵ１０１は、メニュー４１８を用いて設定した設定情報が指し示す変換条件が満たされたと判断した場合には、図１８（ｂ）のフローチャートに従った処理を実行し、その後、処理をステップＳ３１１に進める。
【０１７６】
ステップＳ１９０１でＣＰＵ１０１は、図１８（ａ）に示した構成を有する情報をＲＡＭ１０３などのメモリから読み出す。そしてＣＰＵ１０１は、選択状態１８０３がＯＮになっている項目１８０１の文字列１８０２を、領域２００内の撮影者を表す文字列と置き換える対象として設定する。
【０１７７】
ステップＳ１９０２ではＣＰＵ１０１は、領域２００内の撮影者を表す文字列を、ステップＳ１９０１で設定した文字列に置き換える。もし、領域２００内に記録されている撮影者を表す文字列と同じ文字列が領域２０１内にも記録されている場合には、ＣＰＵ１０１は、領域２０１内の撮影者を表す文字列を、ステップＳ１９０１で設定した文字列に置き換える。
【０１７８】
＜抽象化方法のバリエーション＞
本実施形態では、図１７の設定画面を用いて設定した文字列に置き換えることで、撮影者を表す文字列を抽象化した。しかし、ユーザの操作を介さずにこの抽象化処理を行っても良い。例えば、撮影者の名前（人名）からＣＰＵ１０１がイニシャルを生成し、撮影者の名前をこのイニシャルに置き換えることで、抽象化を行っても良い。もちろん、撮影者の名前からニックネームを作成する為のコンピュータプログラムが予めディジタルスティルカメラ内に格納されている場合には、ＣＰＵ１０１はこのコンピュータプログラムを実行して撮影者の名前の抽象化処理を行っても良い。
【０１７９】
＜抽象化対象のバリエーション＞
本実施形態では、撮影者の名前を抽象化していたが、被写体の名前を同様にして抽象化しても良い。顔認識技術により被写体の顔を認識して、この被写体の名前を特定することができるのであれば、あとは上記の説明と同様にしてこの被写体の名前を抽象化することができる。
【０１８０】
以上の説明により、本実施形態によれば、撮影者名や被写体の名前に対しても抽象化を行うことが可能である。そして、撮影者のプライバシーを守る上、撮影者名や被写体の名前の大まかな情報を閲覧者が知ることができる。加えて、その名前の情報を表示や検索に使用することができる。
【０１８１】
なお、以上説明した各実施形態、各バリエーションは、適宜組み合わせても良いし、処理内容は同じで用いる情報だけを異ならせるなど、上記の説明をベースにして様々なバリエーションが考え得る。
【０１８２】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2012089928.tif 000003
【図２】
2012089928.tif 000004
【図３】
2012089928.tif 000005
【図４】
2012089928.tif 000006
【図５】
2012089928.tif 000007
【図６】
2012089928.tif 000008
【図７】
2012089928.tif 000009
【図８】
2012089928.tif 000010
【図９】
2012089928.tif 000011
【図１０】
2012089928.tif 000012
【図１１】
2012089928.tif 000013
【図１２】
2012089928.tif 000014
【図１３】
2012089928.tif 000015
【図１４】
2012089928.tif 000016
【図１５】
2012089928.tif 000017
【図１６】
2012089928.tif 000018
【図１７】
2012089928.tif 000019
【図１８】
2012089928.tif 000020