(57)【要約】【課題】人物の検出結果に依存せずにプライバシ保護を図ることができ、かつ、画像に対するプライバシ保護のための多段階の処理を簡便に実現することができる画像処理装置、画像処理システムおよびプログラムを提供する。【解決手段】実施形態の画像処理装置は、画像取得部と、画像保持部と、抽象化処理部と、画像出力部と、を備える。画像取得部は、カメラで撮影した原画像を取得する。画像保持部は、複数の抽象化処理に対応する複数レイヤのマスク画像を合成した多層マスク画像を保持する。抽象化処理部は、前記多層マスク画像に基づき、前記原画像に対して領域ごとに異なる複数の抽象化処理を行って、抽象化画像を生成する。画像出力部は、前記抽象化画像、または、前記抽象化画像に所定の加工を施した画像を出力画像として出力する。【選択図】図１
2018137560.tif 000002
【特許請求の範囲】
【請求項１】
カメラで撮影した原画像を取得する画像取得部と、
複数の抽象化処理に対応する複数レイヤのマスク画像を合成した多層マスク画像を保持する画像保持部と、
前記多層マスク画像に基づき、前記原画像に対して領域ごとに異なる複数の抽象化処理を行って、抽象化画像を生成する抽象化処理部と、
前記抽象化画像、または、前記抽象化画像に所定の加工を施した画像を出力画像として出力する画像出力部と、
を備える画像処理装置。
【請求項２】
前記複数レイヤのマスク画像の各々は、対応する抽象化処理の適用有無を表す画素値を持った画素の集合であり、
前記多層マスク画像は、前記複数レイヤのマスク画像の各々の画素値の重ね合わせで表現される画素値を持った画素の集合である、
請求項１に記載の画像処理装置。
【請求項３】
前記多層マスク画像のレイヤ数は、
前記多層マスク画像がモノクロ画像の場合は前記多層マスク画像のビット長と等しく、
前記多層マスク画像がカラー画像の場合は、前記多層マスク画像のビット長にカラー空間の次元数を乗算した値と等しい、
請求項１または２に記載の画像処理装置。
【請求項４】
前記原画像に対して人物の検出を含む画像認識処理を行う画像認識処理部をさらに備え、
前記抽象化処理部は、前記多層マスク画像と、前記画像認識処理の結果とに基づいて、前記原画像に対して領域ごとに異なる複数の抽象化処理を行って前記抽象化画像を生成する、
請求項１乃至３のいずれか一項に記載の画像処理装置。
【請求項５】
前記画像出力部は、前記画像認識処理の結果に基づいて前記抽象化画像に所定の加工を施して前記出力画像を生成する、
請求項４に記載の画像処理装置。
【請求項６】
前記画像認識処理の結果は、認識時刻、認識タイプ、認識人物番号、認識人物座標、性別、年齢、顔向き、滞在時間、注視時間、装着物、感情の少なくともいずれかを含む、
請求項４または５に記載の画像処理装置。
【請求項７】
ユーザ操作に応じて前記多層マスク画像の生成または編集を行う編集部をさらに備え、
前記画像保持部は、前記編集部により生成または編集された前記多層マスク画像を保持する、
請求項１乃至６のいずれか一項に記載の画像処理装置。
【請求項８】
前記編集部は、マスク画像編集用ＧＵＩを表示し、該マスク画像編集用ＧＵＩに対するユーザ操作に応じて、前記多層マスク画像の生成または編集を行う、
請求項７に記載の画像処理装置。
【請求項９】
画像処理装置とマスク画像編集装置とがネットワークを介して通信可能に接続された画像処理システムであって、
前記画像処理装置は、
カメラで撮影した原画像を取得する画像取得部と、
複数の抽象化処理に対応する複数レイヤのマスク画像を合成した多層マスク画像を保持する画像保持部と、
前記多層マスク画像に基づき、前記原画像に対して領域ごとに異なる複数の抽象化処理を行って、抽象化画像を生成する抽象化処理部と、
前記抽象化画像、または、前記抽象化画像に所定の加工を施した画像を出力画像として出力する画像出力部と、を備え、
前記マスク画像編集装置は、
マスク画像編集用ＧＵＩを表示する表示部と、
前記マスク画像編集用ＧＵＩに対するユーザ操作を受け付ける操作入力部と、
前記ユーザ操作に応じて前記多層マスク画像の生成または編集を行う編集部と、を備える画像処理システム。
【請求項１０】
コンピュータに、
カメラで撮影した原画像を取得する機能と、
複数の抽象化処理に対応する複数レイヤのマスク画像を合成した多層マスク画像を保持する機能と、
前記多層マスク画像に基づき、前記原画像に対して領域ごとに異なる複数の抽象化処理を行って、抽象化画像を生成する機能と、
前記抽象化画像、または、前記抽象化画像に所定の加工を施した画像を出力画像として出力する機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像処理装置、画像処理システムおよびプログラムに関する。
【背景技術】
【０００２】
従来、カメラで撮影した画像に含まれる人物のプライバシを保護するため、画像から人物を検出してマスク処理やフィルタ処理を行う技術が知られている。しかし、このような従来技術では、画像に含まれる人物が検出されない場合はプライバシ保護が図られないという問題がある。また、従来技術では、プライバシ保護のための処理は画一的であり、例えば画像の領域に応じて適用する処理を変えるといったように、画像に対するプライバシ保護のための処理を多段階で行うといった柔軟な対応を簡便に行うことができず、改善が求められる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２１６号公報
【特許文献２】特開２００９−２２５３９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、人物の検出結果に依存せずにプライバシ保護を図ることができ、かつ、画像に対するプライバシ保護のための多段階の処理を簡便に実現することができる画像処理装置、画像処理システムおよびプログラムを提供することである。
【課題を解決するための手段】
【０００５】
実施形態の画像処理装置は、画像取得部と、画像保持部と、抽象化処理部と、画像出力部と、を備える。画像取得部は、カメラで撮影した原画像を取得する。画像保持部は、複数の抽象化処理に対応する複数レイヤのマスク画像を合成した多層マスク画像を保持する。抽象化処理部は、前記多層マスク画像に基づき、前記原画像に対して領域ごとに異なる複数の抽象化処理を行って、抽象化画像を生成する。画像出力部は、前記抽象化画像、または、前記抽象化画像に所定の加工を施した画像を出力画像として出力する。
【図面の簡単な説明】
【０００６】
【図１】図１は、第１実施形態に係る画像処理装置の機能的な構成例を示すブロック図である。
【図２】図２は、画像処理装置のハードウェア構成例を示すブロック図である。
【図３】図３は、原画像、多層マスク画像、抽象化画像および出力画像の画像例を示す図である。
【図４】図４は、多層マスク画像の構成を説明する図である。
【図５】図５は、多層マスク画像の各レイヤに割り当てられた抽象化処理の例を説明する図である。
【図６】図６は、抽象化処理部の内部構成例を示すブロック図である。
【図７】図７は、画像処理装置の処理手順の一例を示すフローチャートである。
【図８】図８は、第２実施形態に係る画像処理装置の機能的な構成例を示すブロック図である。
【図９】図９は、原画像、多層マスク画像、抽象化画像および出力画像の画像例を示す図である。
【図１０】図１０は、多層マスク画像の構成を説明する図である。
【図１１】図１１は、多層マスク画像の各レイヤに割り当てられた抽象化処理の例を説明する図である。
【図１２】図１２は、画像認識部の内部構成例を示すブロック図である。
【図１３】図１３は、画像処理装置の処理手順の一例を示すフローチャートである。
【図１４】図１４は、第３実施形態に係る画像処理システムの機能的な構成例を示すブロック図である。
【図１５】図１５は、マスク画像編集用ＧＵＩの一例を示す図である。
【図１６】図１６は、マスク画像編集装置の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【０００７】
＜実施形態の概要＞
近年、カメラで撮影された画像を用いて、例えば所定エリアの状況をライブビューで配信したり、そのエリアの混雑度を示す情報を付加して配信したりといった様々なアプリケーションが提供されている。カメラで撮影された画像をこうした用途で利用する場合、その画像に映り込んだ人物のプライバシを保護する観点から、画像を加工して個人を特定できないようにすることが求められる場合がある。プライバシ保護のために個人を特定できないように画像を加工する処理を、本明細書においては「抽象化処理」と呼ぶ。
【０００８】
カメラで撮影した画像に対する抽象化処理として、従来は、画像から検出された人物の領域に対してマスク処理やフィルタ処理を行うといった方法が一般的に用いられている。しかし、画像に含まれる人物がすべて検出されるとは限らず、実際には画像に映り込んでいる人物が画像から検出されない場合もあり、このような場合に、プライバシの保護が図られない問題がある。また、カメラで撮影された画像に対して、例えば領域ごとに異なる抽象化処理を適用するといった多段階の処理を簡便に実現する仕組みがなく、アプリケーションに応じた柔軟な対応を低コストで実現できない。
【０００９】
そこで、本発明の実施形態では、カメラで撮影された画像に対して多層マスク画像を用いて抽象化処理を行う新規な仕組みを提案する。多層マスク画像は、複数の抽象化処理に対応する複数レイヤのマスク画像を重ね合わせて１つに合成した画像である。各レイヤのマスク画像は、そのレイヤに割り当てられた抽象化処理の適用有無を表す画素値（２値：１ビット）を持つ画素の集合である。つまり、カメラで撮影された画像において、マスク画像の画素値が適用ありを示す画素に対応する領域が、そのマスク画像に対応する抽象化処理が適用される領域となる。多層マスク画像は、複数レイヤのマスク画像の各々の画素値の重ね合わせで表現される画素値を持った画素の集合である。多層マスク画像の具体例については詳細を後述する。
【００１０】
本発明の実施形態では、多層マスク画像を用いて画像に対する抽象化処理を行うことで、人物の検出結果に依存せずにプライバシ保護を図ることができ、かつ、画像に対するプライバシ保護のための多段階の処理を簡便に実現することができる。以下では、実施形態の画像処理装置、画像処理システムおよびプログラムの詳細について、図面を参照しながら説明する。なお、以下の説明において、同様の機能を持つ構成要素については同一の符号を付して、重複した説明を適宜省略する。
【００１１】
＜第１実施形態＞
図１は、第１実施形態に係る画像処理装置１００の機能的な構成例を示すブロック図である。本実施形態の画像処理装置１００は、図１に示すように、画像取得部１０１と、画像保持部１０２と、抽象化処理部１０３と、画像出力部１０４と、通信部１０５と、制御部１０６とを備える。
【００１２】
画像取得部１０１は、カメラ２０により撮影された画像を取得する。以下では、カメラ２０により撮影されて画像取得部１０１により取得される画像を「原画像」と呼ぶ。ここでカメラ２０とは、画像を撮影・キャプチャすることの可能なあらゆるセンサを示す。例えばＵＳＢ（Universal  Serial  Bus）接続可能なＷｅｂカメラなどでもよいし、デジタルカメラなどで利用されるイメージセンサでもよい。また、赤外線センサやレーザーセンサなどの特殊なセンサを用いてもよい。このセンサは、センシングしたデータをイメージ化できる機能を有している。カメラ２０と画像取得部１０１の接続は、有線または無線により直接接続される形態であってもよいし、ネットワーク３０を介して接続される形態であってもよい。カメラ２０と画像取得部１０１とがネットワーク３０を介して接続される場合、カメラ２０はＩＰカメラとして機能する。
【００１３】
画像取得部１０１は、接続されたカメラ２０から原画像１１０を取得して抽象化処理部１０３に入力する。例えば、カメラ２０がＩＰカメラであれば、画像取得部１０１は予め設定されているエンドポイントから原画像１１０を取得する。ここでは、画像取得部１０１が、例えば予め決められたタイミングに従って原画像１１０を取得したり、取得する原画像１１０の画像サイズや画像フォーマットを指定したりする機能を有するものとする。これらの画像取得部１０１の機能は、制御部１０６から出力される制御信号１１５によって制御される。なお、画像取得部１０１が出力する原画像１１０は、カメラ２０から取得した原画像１１０と同じ画像サイズであってもよいし、カメラ２０から取得した原画像１１０に対して画像サイズの変更を行ったものであってもよい。
【００１４】
画像保持部１０２は、予め設定された多層マスク画像１１１を保持する。多層マスク画像１１１は、例えば、ネットワーク３０に接続された外部端末から通信部１０５を介して取得され、画像保持部１０２に保持される。あるいは、多層マスク画像１１１を格納したＵＳＢメモリなどの外部記憶装置やＤＶＤ（Digital  Versatile  Disk）などの記録媒体を画像処理装置１００に接続し、この外部記憶装置や記録媒体から多層マスク画像１１１を読み出して画像保持部１０２に保持させる構成であってもよい。また、画像処理装置１００を提供する際に、多層マスク画像１１１を画像保持部１０２に予め格納しておく構成であってもよい。
【００１５】
また、画像保持部１０２は、多層マスク画像１１１を保持する機能のほか、後述の画像出力部１０４が出力する出力画像１１３を保持する機能を有してもよい。この場合、画像保持部１０２が保持する出力画像１１３を適宜読み出して、通信部１０５を介してネットワーク３０に接続された外部装置に送信する構成としてもよい。
【００１６】
抽象化処理部１０３は、画像保持部１０２が保持する多層マスク画像１１１をロードし、この多層マスク画像１１１に基づいて、画像取得部１０１から入力された原画像１１０に対する抽象化処理を行う。抽象化処理とは、上述のように、画像から個人を特定できないように画像を加工する処理であり、例えば、モザイク処理によって人物をぼかしたり、背景画像を重畳して人物を消したり、背景画像に人物を模したアイコンを重畳したりといった加工が、抽象化処理に該当する。
【００１７】
本実施形態では、原画像１１０に対する抽象化処理を多層マスク画像１１１に基づいて行うことで、原画像１１０の領域ごとに異なる抽象化処理を簡便に適用できるようにしている。抽象化処理部１０３によって多層マスク画像１１１に基づく抽象化処理が行われた原画像１１０は、抽象化画像１１２として画像出力部１０４に入力される。なお、多層マスク画像１１１を用いた原画像１１０に対する抽象化処理の具体例については、詳細を後述する。
【００１８】
画像出力部１０４は、抽象化処理部１０３から入力された抽象化画像１１２に対して付随情報に基づく加工を行って出力画像１１３を生成し、生成した出力画像１１３を出力する。付随情報に基づく加工には、例えば、設定されたタイムゾーンに従って時刻（付随情報の一例）を画像に埋め込んだり、カメラ２０の設置情報（例えば「第１レジ前」、「改札前」などの設置場所を示すテキストなど）やカメラ２０の製造メーカ、カメラ型番、カメラ設定情報などの付随情報を画像に重畳したりといった例が挙げられる。また、カメラ２０の設置場所の天気情報や鉄道の運行情報などの付随情報を、ネットワーク３０に接続された外部装置から通信部１０５を介して取得して、これらの付随情報を画像に重畳してもよい。
【００１９】
また、画像出力部１０４は、抽象化処理部１０３から入力された抽象化画像１１２をそのまま出力画像１１３として出力してもよい。この場合、上述の付随情報を例えばメタデータとして、出力画像１１３とともに出力してもよい。
【００２０】
画像出力部１０４から出力される出力画像１１３は、例えば、制御部１０６から出力される制御信号１１５に含まれる送信タイミングに従って、通信部１０５を介してネットワーク３０に送出される。この場合、画像処理装置１００が自発的に、出力画像１１３をネットワーク３０に提供するような構成を実現できる。また、画像出力部１０４から出力される出力画像１１３を、上述のように画像保持部１０２に保持させる構成としてもよい。この場合、例えば、ネットワーク３０に接続された外部装置からのリクエストに応じて出力画像１１３を提供するような構成を実現できる。なお、この場合の送信タイミングは外部から入力され、通信部１０５を介して制御部１０６に設定され、通信部１０５の設定に反映されてもよい。
【００２１】
通信部１０５は、ネットワーク３０に接続されている。画像処理装置１００が通信部１０５を備えることで、ネットワーク３０に接続された外部装置との間で画像を含めた様々な情報をやり取りすることができる。ここで、ネットワーク３０とは、様々な情報を伝送するための通信資源を意味しており、有線ないし無線接続される様々な伝送路を含む。例えば、一般的に広く普及しているインターネット網などの通信路や、ＰＨＳ（Personal  Handyphone  System）をはじめ３Ｇ（3rd  Generation）・４Ｇ（4th  Generation）・ＬＴＥ（Long  Term  Evolution）といった携帯機器向けの通信路、地上放送網、衛星放送網、ケーブル伝送網、電波通信、ミリ波通信、レーダー通信などのあらゆる伝送路を指す。
【００２２】
なお、画像出力部１０４から出力される出力画像１１３は圧縮されていてもよい。例えば、インターネットなどで頻繁に利用されるＪＰＥＧ（Joint  Photographic  Experts  Group）方式、ＰＮＧ（Portable  Network  Graphics）方式、ＧＩＦ（Graphics  Interchange  Format）方式などの非可逆な画像圧縮方式により圧縮されてもよい。また、圧縮データは、出力画像１１３に含まれる付随データと合わせて多重化されていてもよい。例えば、ＪＳＯＮ（JavaScript（登録商標）  Object  Notation）形式やＸＭＬ（Extensible  Markup  Language）形式などに付随データを多重化し、画像をテキスト形式にエンコーディング（例えばｂａｓｅ６４エンコーディングなど）したものを同様に多重化するような構成を取ることも簡単に実現可能である。これは、通信時にＲＥＳＴ（Representational  State  Transfer）やＳＯＡＰ（Simple  Object  Access  Protocol）などの通信フレームワークのＡＰＩ（Application  Programming  Interface）で伝送するための合わせこみ処理に相当する。ここでは明示していないが、ＴＣＰ（Transmission  Control  Protocol）通信やＨＴＴＰＳ（Hypertext  Transfer  Protocol  Secure）プロトコルなどの通信形式への変換機能なども含まれている。ネットワーク３０がプライベート回線ではなく、インターネットなどの一般回線の場合にセキュアなデータ通信を実現するために、多重化データは暗号化されていてもよい。また、証明書などを用いて通信路や接続先の安全性を確保してもよい。
【００２３】
制御部１０６は、画像処理装置１００の各処理部の動作を統合的に制御する機能を有する。例えば制御部１０６は、上述のように、制御信号１１５によって画像取得部１０１による原画像１１０の取得タイミングを制御したり、画像出力部１０４から出力される出力画像１１３をネットワーク３０に送出するタイミングを制御したりする。このほか、制御部１０６による制御には、各処理部の設定変更なども含まれる。例えば、制御部１０６の制御により、画像出力部１０４が抽象化画像１１２に重畳する付随情報を変更することができる。この場合、制御部１０６は、ネットワーク３０に接続された外部装置から制御命令を受け取り、この制御命令に応じて各処理部の設定を変更することもできる。
【００２４】
本実施形態の画像処理装置１００は、例えば、一般的なコンピュータを構成するハードウェアと、コンピュータで実行されるプログラム（ソフトウェア）との協働により実現することができる。例えば、コンピュータが所定のプログラムを実行することによって、上述した画像取得部１０１、抽象化処理部１０３、画像出力部１０４、通信部１０５および制御部１０６などの各処理部を実現することができる。また、コンピュータが備えるストレージデバイスを用いて、上述した画像保持部１０２を実現することができる。
【００２５】
図２は、本実施形態の画像処理装置１００のハードウェア構成例を示すブロック図である。画像処理装置１００は、例えば図２に示すように、ＣＰＵ（Central  Processing  Unit）などのプロセッサ１１と、ＲＡＭ（Random  Access  Memory）やＲＯＭ（Read  Only  Memory）などのメモリ１２と、ＨＤＤ（Hard  Disk  Drive）やＳＳＤ（Solid  State  Drive）などのストレージデバイス１３と、ネットワーク３０を介して外部と通信を行う通信Ｉ／Ｆ１４と、上述のカメラ２０や入力デバイス、表示デバイスといった機器を接続するための機器Ｉ／Ｆ１５と、これら各部を接続するバス１６とを備えた一般的なコンピュータとしてのハードウェア構成を有する。
【００２６】
このとき、上記のプログラムは、例えば、磁気ディスク、光ディスク、半導体メモリ、またはこれに類する記録媒体に記録されて提供され、ストレージデバイス１３などに格納される。プログラムを記録する記録媒体は、コンピュータが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。また、上記プログラムを、コンピュータに予めインストールするように構成してもよいし、ネットワーク３０を介して配布される上記のプログラムをコンピュータに適宜インストールするように構成してもよい。
【００２７】
上記のコンピュータで実行されるプログラムは、上述した画像処理装置１００の各処理部を含むモジュール構成となっており、プロセッサ１１がこのプログラムを適宜読み出して実行することにより、上述した各処理部がＲＡＭなどのメモリ１２上に生成されるようになっている。
【００２８】
なお、本実施形態の画像処理装置１００は、上述した各処理部の一部または全部を、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field-Programmable  Gate  Array）などの専用のハードウェアにより実現する構成であってもよい。
【００２９】
また、本実施形態の画像処理装置１００は、複数台のコンピュータを通信可能に接続したシステムとして構成し、上述した各処理部を複数台のコンピュータに分散して実現する構成であってもよい。また、本実施形態の画像処理装置１００は、クラウドシステム上で動作する仮想マシンであってもよい。
【００３０】
次に、多層マスク画像１１１を用いた原画像１１０に対する抽象化処理の具体例について、図３乃至図５を参照して説明する。図３は、原画像１１０、多層マスク画像１１１、抽象化画像１１２および出力画像１１３の画像例を示す図である。図４は、多層マスク画像１１１の構成を説明する図である。図５は、多層マスク画像１１１の各レイヤに割り当てられた抽象化処理の例を説明する図である。
【００３１】
図３（ａ）に示す原画像１１０は、室内に３人の人物と金庫が映っている例を示している。この原画像１１０では、３人の人物のうち、カメラ２０から距離の近い人物は、原画像１１０における画像サイズが一般的に大きくなるため、人が見て個人を特定することが容易になる傾向がある。一方で、カメラ２０から距離が離れると原画像１１０に映る人物の面積も小さくなるため、個人が特定しにくくなる傾向がある。これらは、カメラ２０の本来の性質であり、一般的な監視カメラなどの用途を想定した場合、カメラ２０からの距離、つまり、画像の下から上方向に行くにしたがって個人を特定しにくくなる傾向がある。これらはカメラ２０本来の水平画角、垂直画角などの仕様に依存する部分と、カメラ２０を設置した設置高、俯角、仰角、ズームの設定、パン・チルトなどの設定による部分などが影響している。
【００３２】
図３（ｂ）に示す多層マスク画像１１１は、原画像１１０の画像上部に対応する領域（１）、原画像１１０の上下方向の中間領域に対応する領域（２）、原画像１１０の下部領域に対応する領域（３）、原画像１１０において金庫が映っている領域に対応する領域（４）でそれぞれ異なる画素値が設定されている。この多層マスク画像１１１は、例えば図４に示すように、レイヤ０〜７の８種類のマスク画像を重ね合わせて１つに合成した画像である。各レイヤのマスク画像は、そのレイヤに割り当てられた抽象化処理の適用有無を表す画素値（適用ありを１、適用なしを０とする）を持つ画素の集合であり、多層マスク画像１１１の画素値は、それらマスク画像の画素値の重ね合わせで表現される。
【００３３】
多層マスク画像１１１は、下記式（１）および式（２）に従って合成される。
【数１】
2018137560.tif 000003
ここでは多層マスク画像１１１をＦ（ｘ）、マスク画像をδ（ｘ）とし、Ｆ（ｘ）はモノクロの８ビット画像、δ（ｘ）はモノクロの１ビット画像とする。ｘは画素ベクトルを示しており、ｘ＝（ｗ，ｈ）が画像中の１つの画素を示している。ｎはマスク画像δ（ｘ）のレイヤ番号（０〜７）を表す。上記式（１）および式（２）を用いることにより、レイヤ０〜７の８種類のマスク画像から、１つの多層マスク画像１１１が生成できる。
【００３４】
多層マスク画像１１１から各レイヤのマスク画像を取り出す場合は、下記式（３）を用いる。
【数２】
2018137560.tif 000004
ここで、上記式（３）中の“＆”は論理積演算を意味しており、“>>”は右シフト演算を意味している。つまり、８ビット画素値のビットマスクを計算することで、任意のレイヤのマスク値を取り出すことが可能である。
【００３５】
例えば、画像のある画素について、レイヤ０〜７の８種類のマスク画像のうち、レイヤ０の画素値が１、レイヤ５の画素値が１、他のレイヤの画素値が全て０である場合、多層マスク画像の画素値は、上記式（１）および式（２）より、２０＋２５＝１＋３２＝３３となる。一方、レイヤ５のマスク画像を取り出す場合は、上記式（３）より、（３３＆３２）>>５＝１となり、目的の値が取り出せることが分かる。なお、８ビット演算を２進数で書くと、（００１００００１＆００１０００００）＝（００１０００００）となり、これを５ビット右シフトすると、１が取り出せる。
【００３６】
なお、ここではレイヤ０〜７の８種類のマスク画像を合成して８ビットの多層マスク画像１１１とする場合の例を示したが、例えばレイヤ０〜１５の１６種類のマスク画像を合成して１６ビットの多層マスク画像１１１とすることも可能である。また、多層マスク画像１１１をカラー画像とし、ＲＧＢ画像空間（３次元空間）を活用してビット数の３倍のレイヤを表現することも可能である。この場合、８ビットカラー画像であれば、例えばＲ，Ｇ，Ｂなどの順番でそれぞれレイヤ０〜７まで、レイヤ８〜１５まで、レイヤ１６〜２３までを割り振るように決めておくことで、任意のレイヤの画素値を取り出すことが可能である。
【００３７】
多層マスク画像１１１を構成する各レイヤのマスク画像は、各々個別の抽象化処理に対応している。ここでは、例えば図５に示すように、各レイヤのマスク画像に対応する抽象化処理が定められているものとする。図５の例では、レイヤ０には「モザイク弱」が割り当てられ、レイヤ１には「モザイク中」が割り当てられ、レイヤ２には「モザイク強」が割り当てられ、レイヤ３には「背景重畳」が割り当てられていることが示されている。モザイク処理は、所定の大きさのブロックごとに基準画素値を設定し、ブロック内の各画素の画素値をその基準画素値で補てんする処理であり、抽象化処理として一般的な手法である。基準画素値の選定方法は様々な方式が提案されているが、本実施形態ではこれらの１つが適用されればよく、種類は問わない。また、背景重畳は対象に背景画像を重畳することで対象を隠す処理であり、これも抽象化処理として広く用いられる手法である。
【００３８】
なお、図５の例では、レイヤ４〜７をリザーブドとしている。システム設計時にリザーブド項目を導入しておくことで、後々システムに新規の抽象化機能を導入する場合でもフォーマットの変更は不要となり、システム設計時と共通のインターフェースを用いて容易に機能拡張を実現することができる。また、図５に例示する各レイヤと抽象化処理との対応付けの情報は、例えば、入力デバイスを用いたユーザの入力操作、あるいはネットワーク３０に接続された外部装置からの制御命令に応じて更新することが可能であり、各レイヤに対応する抽象化処理の機能を更新することも容易である。
【００３９】
図３（ｂ）に示す多層マスク画像１１１は、上記の領域（１）に対してレイヤ３の抽象化処理を適用し、上記の領域（２）に対してレイヤ０の抽象化処理を適用し、上記の領域（３）に対してレイヤ２の抽象化処理を適用し、上記の領域（４）に対してレイヤ１の抽象化処理を適用する例を示している。このように、図３（ａ）に示す原画像１１０に対し、図３（ｂ）に示す多層マスク画像１１１を用いて抽象化処理を行うと、図３（ｃ）に示す抽象化画像１１２が得られる。
【００４０】
抽象化画像１１２は、原画像１１０に対して、多層マスク画像１１１を構成する各レイヤのマスク画像によって指定される領域ごとに、そのレイヤに割り当てられた抽象化処理を施すことで得られる画像である。図３（ｂ）の多層マスク画像１１１に基づき、図３（ａ）に示す原画像１１０に対して抽象化処理が行われることで、図３（ｃ）に示すように、レイヤ３の「背景重畳」が適用された背景重畳領域（Ａ）、レイヤ１の「モザイク中」が適用されたモザイク中領域（Ｂ）、レイヤ０の「モザイク弱」が適用されたモザイク弱領域（Ｃ）、レイヤ２の「モザイク強」が適用されたモザイク強領域（Ｄ）を含む抽象化画像１１２が得られる。
【００４１】
図３（ｃ）に示す抽象化画像１１２において、背景重畳領域（Ａ）は、予め設定されている背景画像を原画像１１０に重畳する抽象化処理が適用された領域である。また、モザイク中領域（Ｂ）は、予め設定されているモザイク中のフィルタ処理に相当する抽象化処理が適用された領域である。モザイク中のブロックサイズは、例えば８×８画素ブロックである。また、モザイク弱領域（Ｃ）は、予め設定されているモザイク弱のフィルタ処理に相当する抽象化処理が適用された領域である。モザイク弱のブロックサイズは、例えば４×４画素ブロックである。また、モザイク強領域（Ｄ）は、予め設定されているモザイク強のフィルタ処理に相当する抽象化処理が適用された領域である。モザイク強のブロックサイズは、例えば１６×１６画素ブロックである。
【００４２】
図３（ｃ）に示す抽象化画像１１２は、図３（ａ）に示す原画像１１０に対し、画像上部の領域にはモザイクをかけず、上下方向の中間領域にモザイク弱、画像下部の領域にモザイク強、金庫の領域にモザイク中をかけた例を示している。このように多層マスク画像１１１のレイヤごとに異なる抽象化処理を割り当てることで、原画像１１０に対して領域ごとに異なる多段階の抽象化処理を適用することができ、目的に応じた柔軟なプライバシ保護の対策を簡便に実現することができる。
【００４３】
図３（ｄ）に示す出力画像１１３は、図３（ｃ）に示す抽象化画像１１２に対して付随情報を重畳した画像である。この例では、画像左上に、設定されたタイムゾーンのタイムスタンプが重畳されている。また、画像右下に、カメラ２０の設置情報が重畳されている。なお、これらの付随情報は、メタデータとして出力画像１１３とともに出力されてもよい。また、付随情報が重畳されていない抽象化画像１１２を出力画像１１３として出力する構成であってもよい。
【００４４】
次に、抽象化処理部１０３の詳細について、図６を参照して説明する。図６は、抽象化処理部１０３の内部構成例を示すブロック図である。抽象化処理部１０３は、例えば図６に示すように、画像ビットマスク１４０と、多層マスク画像１１１のレイヤ数に対応する８つの処理部（レイヤ０処理部１４１、レイヤ１処理部１４２、レイヤ２処理部１４３、レイヤ３処理部１４４、レイヤ４処理部１４５、レイヤ５処理部１４６、レイヤ６処理部１４７、レイヤ７処理部１４８）と、画像合成部１４９とを備える。８つの処理部は、図５に示したように各レイヤに割り当てられた抽象化処理を行う処理機能であり、例えばレイヤ０処理部１４１は、図５に示したレイヤ０に対応する「モザイク弱」の抽象化処理、つまり、４×４画素ブロックサイズのモザイク処理を行う処理機能を示している。なお、リザーブドとなっている処理機能は、ブロックのみを用意しておき、後々に機能追加できるような構成とする。
【００４５】
最初に、画素ビットマスク１４０に原画像１１０と多層マスク画像１１１が入力される。画素ビットマスク１４０は、上記式（３）に従って多層マスク画像１１１を各レイヤのマスク画像１２０〜１２７に分解し、それぞれのレイヤに対応した処理部１４１〜１４８に出力する。なお、全ての処理部１４１〜１４８に対し原画像１１０も同時に出力される。
【００４６】
各処理部１４１〜１４８は、原画像１１０に対して予め決められた抽象化処理を適用して中間画像１３０〜１３７を生成し、マスク画像１２０〜１２７とともに画像合成部１４９に出力する。
【００４７】
画像合成部１４９は、各処理部１４１〜１４８で生成された最大８つの中間画像１３０〜１３７をマスク画像１２０〜１２７に応じて合成し、抽象化画像１１２を生成する。画像を合成する場合は、予めどの順番で合成していくかを示すテーブルに従って合成される。ここでは、レイヤの昇順に順次合成していく例を示す。
【００４８】
合成処理は、マスク画像でマスキング対象となっている画素（画素値が抽象化処理の適用ありを示す画素）のみ、中間画像を適用する。例えば、抽象化画像１１２をＰ（ｘ）とし、原画像１１０をＩ（ｘ）、中間画像をＪ（ｘ）とした場合、マスキング処理は下記式（４）で表される。ここでＭ（ｘ）はマスク画像の画素値である。
【数３】
2018137560.tif 000005
【００４９】
画像合成部１４９における合成処理は、例えば以下のように行われる。すなわち、最初に、レイヤ０のマスク画像に基づいて原画像１１０に対するレイヤ０の中間画像１３０の合成処理が行われ、その合成画像に対し、レイヤ１のマスク画像に基づいてレイヤ１の中間画像１３１の合成処理が行われる。以降この繰り返しとなる。具体的には、原画像１１０と中間画像１３０を最初に合成する。その後、その合成画像と中間画像１３１を合成する。以後、これらをレイヤ数分繰り返して、最後の中間画像１３７が合成された画像を抽象化画像１１２として出力する。
【００５０】
多層マスク画像１１１に含まれる各マスク画像１２０〜１２７のマスキング対象となっている画素が重なっている場合、処理する順番によって、後段の処理のマスク値が優先され、前段の中間画像の画素値は上書きされる。これを避けるため、それぞれのレイヤごとにアルファブレンディング処理を行ってもよい。例えば、一般的なアルファブレンディングは下記式（５）で実施できる。
【数４】
2018137560.tif 000006
ここで、Ｐｉ（ｘ）はアルファブレンディング後の画素値、Ｓ（ｘ）は前段の合成後の画素値、Ｔ（ｘ）は中間画像の画素値、αはブレンドの度合いを調整するパラメータである。画像合成部１４９で、それぞれの中間画像を合成するレイヤに応じてα値を定めておくことで、後段の画像で上書きするのではなく、前段と後段の画像をブレンドすることが容易に可能である。
【００５１】
次に、各処理部１４１〜１４８の具体的な処理の例を説明する。レイヤ０処理部１４１、レイヤ１処理部１４２およびレイヤ２処理部１４３は、例えばモザイク処理を適用する処理部である。モザイク処理は、画像の決められたブロックの画素値を例えば、そのブロックに含まれる画素値の平均値やメディアン値に置き換える。３つの処理部１４１，１４２，１４３は、例えば４×４画素、８×８画素、１６×１６画素などの画素ブロックサイズの違いで表現される。モザイクのブロックサイズが大きくなると、元画像の情報量が大きく失われ、それによってプライバシ保護の観点でリスクの少ない画像を生成できる。
【００５２】
レイヤ３処理部１４４は、例えば、予め設定した人物のいない背景領域を中間画像とする処理をする。具体的には、画像保持部１０２に保存されている背景画像を読み込み、マスク処理を行えばよい。なお、その他の処理部１４５〜１４８はリザーブドのレイヤに対応するため、抽象化処理は行われない。
【００５３】
なお、ここでは抽象化処理の一般的な例としてモザイク処理や背景重畳などの処理について記載したが、マスク画像を用いたマスキング処理は、２つの画像のどちらを使うかを選択する処理である。したがって、原画像１１０に含まれる人物そのものをキャラクタなどに変更したり、デフォルメされた人物のアイコンに変更したりといった処理も、この枠組みを利用して容易に実現可能である。
【００５４】
次に、本実施形態の画像処理装置１００の動作について、図７を参照して説明する。図７は、画像処理装置１００の処理手順の一例を示すフローチャートである。
【００５５】
画像処理装置１００の処理が開始されると、まず、カメラ２０により撮影されたある時刻の原画像１１０を画像取得部１０１が取得する（ステップＳ１０１）。次に、抽象化処理部１０３が、画像保持部１０２から多層マスク画像１１１を読み出し（ステップＳ１０２）、この多層マスク画像１１１に基づいて、ステップＳ１０１で取得された原画像１１０に対する抽象化処理を行う（ステップＳ１０３）。
【００５６】
次に、画像出力部１０４が、ステップＳ１０３の抽象化処理により得られた抽象化画像１１２に対し、例えば付随情報の重畳などの加工を行って出力画像１１３を生成し（ステップＳ１０４）、この出力画像１１３を出力する（ステップＳ１０５）。その後、処理を継続するか否かの判断を行い（ステップＳ１０６）、処理を継続する場合は（ステップＳ１０６：Ｙｅｓ）ステップＳ１０１に戻って以降の処理を繰り返す。一方、処理を継続しない場合は（ステップＳ１０６：Ｎｏ）、一連の処理を終了する。
【００５７】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の画像処理装置１００は、カメラ２０で撮影された原画像１１０に対し、多層マスク画像１１１に基づく抽象化処理を行って抽象化画像１１２を生成する。そして、その抽象化画像１１２、あるいは、その抽象化画像１１２に対し付随情報の重畳などの加工を行った画像を出力画像１１３として出力する。したがって、本実施形態の画像処理装置１００によれば、人物の検出結果に依存せずにプライバシ保護を図ることができ、かつ、原画像１１０に対するプライバシ保護のための多段階の処理を簡便に実現することができる。すなわち、本実施形態によれば、原画像１１０に対してプライバシ保護機能を段階的に適用でき、システムに大きなインパクトを与えずにプライバシ保護の設定変更を実現し、原画像１１０から人物が検出できない場合でも、一定レベルのプライバシ保護を実現可能な画像処理装置１００を提供することができる。
【００５８】
＜第２実施形態＞
次に、本発明の第２実施形態について説明する。図８は、第２実施形態に係る画像処理装置２００の機能的な構成例を示すブロック図である。本実施形態の画像処理装置２００は、図１に示した第１実施形態の画像処理装置１００の構成に対して、画像認識部１０７が追加されている。以下では、第１実施形態との差分を中心に説明する。
【００５９】
本実施形態では、画像取得部１０１により取得された原画像１１０が、抽象化処理部１０３だけでなく画像認識部１０７にも入力される。
【００６０】
画像認識部１０７は、原画像１１０に対する画像認識処理を行う。ここでの画像認識処理は、原画像１１０に含まれる人物を認識する処理である。画像認識部１０７による認識結果は、認識情報１１６として抽象化処理部１０３および画像出力部１０４に入力される。
【００６１】
認識情報１１６は、例えば、認識時刻、認識タイプ、認識人物番号、認識人物座標、性別、年齢、顔向き、滞在時間、注視時間などの一連の情報のセットである。認識時刻は、原画像１１０から人物が検出された時刻を表す。認識タイプは、顔認識、上半身認識、全身認識など、人物を認識するタイプを示す情報である。認識人物番号は、認識した人物を特定するために付記する人物ごとのインデックスである。認識人物座標は、原画像１１０の画像サイズにおける人物認識矩形を示す、矩形の左上の座標情報と右下の座標情報である。滞在時間は、特定の人物が原画像１１０内で検出されてから、検出が途切れるまでの時間を示す。注視時間は、上記滞在時間のうち、顔向きが特定の範囲以内であった時間を累積した情報である。
【００６２】
抽象化処理部１０３は、第１実施形態と同様に、多層マスク画像１１１に基づいて原画像１１０に対する抽象化処理を行う。ただし、本実施形態では、抽象化処理部１０３が原画像１１０に対する抽象化処理を行う際に、画像認識部１０７が出力する認識情報１１６を用いる。本実施形態における抽象化処理の具体例については、詳細を後述する。
【００６３】
画像出力部１０４は、第１実施形態と同様に、抽象化画像１１２に対して付随情報を重畳するなどの加工を行って出力画像１１３を生成し、この出力画像１１３を出力する。ただし、本実施形態では、出力画像１１３の生成に、画像認識部１０７が出力する認識情報１１６を用いる。例えば、画像出力部１０４は、認識情報１１６に含まれる、検出座標、人物の性別、年齢、検出座標などのさまざまな情報を元に、抽象化画像１１２における人物領域に枠を付けたり、年齢・性別をわかりやすく表示したりといった加工を行う。また、画像出力部１０４は、抽象化画像１１２に含まれる人物の数をカウントしたり、過去の人物検出結果を累積して混雑度の変化を計算したりといった処理を行い、得られた情報をアイコンとして抽象化画像１１２に重畳するような加工を行ってもよい。人数のカウントや混雑度の変化を計算するといった処理は画像認識部１０７で行い、画像出力部１０４は、画像認識部１０７から処理の結果を表す情報を取得して抽象化画像１１２にアイコンとして重畳してもよい。また、画像出力部１０４は、画像認識部１０７から取得した認識情報１１６をメタデータとして、出力画像１１３とともに出力する構成であってもよい。
【００６４】
次に、本実施形態における抽象化処理の具体例について、図９乃至図１１を参照して説明する。図９は、原画像１１０、多層マスク画像１１１、抽象化画像１１２および出力画像１１３の画像例を示す図である。図１０は、多層マスク画像１１１の構成を説明する図である。図１１は、多層マスク画像１１１の各レイヤに割り当てられた抽象化処理の例を説明する図である。
【００６５】
図９（ａ）に示す原画像１１０は、図３（ａ）に示した例と同様である。図９（ｂ）に示す多層マスク画像１１１は、図１０に示す８種類のマスク画像を重ね合わせて１つに合成した画像であり、図３（ｂ）に示した例と異なり、原画像１１０の上下方向の中間領域に対応する領域（１）が、レイヤ１に割り当てられた抽象化処理を適用する領域であり、原画像１１０の下部領域に対応する領域（２）が、レイヤ２に割り当てられた抽象化処理を適用する領域である例を示している。なお、原画像１１０の上部領域に対応する領域の画素値は０となっており、この領域には抽象化処理が適用されないことを示している。
【００６６】
本実施形態では、多層マスク画像１１１の各レイヤに対し、図１１に示す抽象化処理が割り当てられているものとする。すなわち、レイヤ０には「認識モザイク弱」が割り当てられ、レイヤ１には「認識モザイク中」が割り当てられ、レイヤ２には「認識モザイク強」が割り当てられ、レイヤ３には「動きベクトル」が割り当てられている。なお、レイヤ４〜７はリザーブドとしている。
【００６７】
ここで「認識モザイク」とは、対象となる領域で人物が認識されると、その矩形領域に対して、設定された抽象化処理を適用することを意味する。例えば上記の領域（１）で人物が検出されると、認識情報１１６に含まれる認識人物座標を利用して、その人物が存在する矩形領域内の画像に「モザイク中」の抽象化処理を行う。同様に上記の領域（２）の領域で人物が検出されると、認識情報１１６に含まれる認識人物座標を利用して、その人物が存在する矩形領域内の画像に「モザイク強」の抽象化処理を行う。
【００６８】
図９（ｂ）の多層マスク画像１１１に基づき、図９（ａ）に示す原画像１１０に対して抽象化処理が行われることで、図９（ｃ）に示すように、レイヤ１の「認識モザイク中」が適用された認識モザイク中領域（Ｅ）と、レイヤ２の「認識モザイク強」が適用された認識モザイク強領域（Ｆ）とを含む抽象化画像１１２が得られる。本実施形態では、原画像１１０の人物が存在する矩形領域に対して抽象化処理を行うが、人物が検出されない場合を想定して、第１実施形態との組み合わせにより矩形領域以外にも抽象化処理を行う構成とすることは容易に実現可能である。
【００６９】
なお、図１１では、レイヤ３に抽象化処理として「動きベクトル」が割り当てられていることが示されている。画像認識部１０７は、詳細を後述するように、検出した人物の動きベクトルを算出している。この動きベクトルの大きさは、認識対象がどれくらいのスピードで動いているかを示す情報である。すなわち、動きベクトルの大きさが大きい場合、認識対象が早く移動していることを意味する。一般的なカメラ２０では、高速に動く被写体ほど動きボケが発生しやすい傾向がある。つまり、動きが少ない被写体ほど画像ボケが発生せずに、個人を特定しやすくなるという傾向がある。このため、動きベクトルの大きさに応じて画像にぼかし処理などを適用することで、プライバシの保護を図ることができる。ここでぼかし処理とは、一般的な画像処理でよく利用されるガウシアンフィルタやブラーフィルタなどに相当する。
【００７０】
人物の動きベクトルは、上述の混雑度を求める情報としても有効に利用できる。人物の動きベクトルの大きさが大きい場合、人物がぶつからずに動いていることから、カメラ２０に映る領域が混雑していないと判断できる。一方で、人物の動きベクトルの大きさが小さい場合、混雑のため人物が移動できない状態になっていることが想定される。したがって、人物の動きベクトルをもとに、カメラ２０に映る領域の混雑度を推定することが可能である。
【００７１】
図９（ｄ）に示す出力画像１１３は、図９（ｃ）に示す抽象化画像１１２に対して付随情報を重畳した画像である。本実施形態では、画像出力部１０４が、画像認識部１０７から入力される認識情報１１６を利用して、検出した人物に様々な加工を施すことが可能となる。例えば、図９（ｄ）に示す出力画像１１３のように、人物が存在する矩形領域を線で囲ったり、認識された性別に応じて、男性の場合は矩形領域の線の色を青や緑、女性の場合は矩形領域の線の色を赤やオレンジにするなどの加工が可能である。そのほか、例えば認識された年齢や注視の判定をテキストやアイコンなどで重畳するなど、様々な加工を容易に実現可能である。
【００７２】
次に、画像認識部１０７の詳細について、図１２を参照して説明する。図１２は、画像認識部１０７の内部構成例を示すブロック図である。画像認識部１０７は、例えば図１２に示すように、上半身検出部１５０と、上半身追跡部１５１と、顔検出部１５２と、顔追跡部１５３と、顔属性判定部１５４と、顔照合部１５５と、認識データ整形部１５６とを備える。
【００７３】
画像認識処理に用いるアルゴリズムとしては、画像からＨＯＧ（Histgram  of  Gradient）特徴量を算出し、予め特定の対象物向けに作成した辞書とマッチングを行う方法などが挙げられる。例えば特開２０１０−４４４３９号公報には、ＨＯＧの共起発生確率を用いた特徴量を用いて対象物を認識する手法が開示されている。本実施形態では、このような認識辞書を用いた画像認識処理を用いることができる。ここで、特徴量や認識に用いるアルゴリズムは対象物によって異なる場合がある。アルゴリズムの違いとは、例えば、モノクロ画像のみを利用するアルゴリズムとカラー画像を利用するアルゴリズム、デプス画像（レンジ画像）を用いるアルゴリズムなどの違いが含まれる。
【００７４】
画像認識処理においては、例えば、人物の顔から性別、年齢、メガネの着用状況、マスクの着用状況などの情報だけでなく、会話をしている、笑っている、怒っている、などの感情の情報を判別することも可能である。例えば、過去の辞書から、特定の特徴量を属性情報と紐づけることで、このような属性情報の認識も可能となる。また、単一の認識結果だけでなく、時間的な認識情報を総合的に認識することで、行動パターンの認識も可能となる。例えば、検出位置を時間的に収集し、行動パターンを推定することで、移動方向や異常検知などにも活用できる。
【００７５】
また、画像認識処理においては、認識対象の照合処理も行われる。照合処理とは、画像から検出された対象の同一性を判定する処理である。例えば、人物の顔の場合、検出された顔の画像もしくは、顔の特徴量を辞書に登録する。同一人物が検出された場合には、予め辞書に登録された人物とのマッチングを行い、同一人物かどうかを照合する。ここで、照合処理を用いることで、複数の異なる場所のイメージセンサで検出された人物などの動線を管理することが可能となる。
【００７６】
本実施形態の画像認識部１０７は、上述した様々な画像認識処理を行う。上半身検出部１５０で検出された上半身検出データは、上半身追跡部１５１に入力され、過去もしくは未来の検出結果と照合される。これにより、画像の時間方向で上半身を照合し、同一人物に同一の番号（認識人物番号）を記す。同様に、顔に関しては、顔検出部１５２で顔検出データが作成され、顔追跡部１５３で、同一の顔に同一の番号を記す。また、顔検出データは、顔属性判定部１５４および顔照合部１５５に入力され、顔の属性データおよび照合データを出力する。もし、顔照合で一致する人物がいない場合は、その情報が記録される。これらのデータが認識データ整形部１５６に入力され、予め指定されたフォーマットに整形され、認識情報１１６として出力される。
【００７７】
ここで、上半身追跡部１５１および顔追跡部１５３は、時間方向で検出対象を追跡する機能を有し、検出対象の動きベクトルを算出する機能を有している。この動きベクトルも上半身認識データおよび顔認識データとして認識データ整形部１５６にて整形され、認識情報１１６の生成に利用される。
【００７８】
次に、本実施形態の画像処理装置２００の動作について、図１３を参照して説明する。図１３は、画像処理装置２００の処理手順の一例を示すフローチャートである。
【００７９】
画像処理装置２００の処理が開始されると、まず、カメラ２０により撮影されたある時刻の原画像１１０を画像取得部１０１が取得する（ステップＳ２０１）。次に、画像認識部１０７がステップＳ２０１で取得された原画像１１０に対する画像認識処理を行う（ステップＳ２０２）。
【００８０】
次に、抽象化処理部１０３が、画像保持部１０２から多層マスク画像１１１を読み出し（ステップＳ２０３）、この多層マスク画像１１１と、ステップＳ２０２の画像認識処理の結果を示す認識情報１１６とに基づいて、ステップＳ２０１で取得された原画像１１０に対する抽象化処理を行う（ステップＳ２０４）。
【００８１】
次に、画像出力部１０４が、ステップＳ２０４の抽象化処理により得られた抽象化画像１１２に対し、ステップＳ２０２の画像認識処理の結果を示す認識情報１１６を用いた加工を行って出力画像１１３を生成し（ステップＳ２０５）、この出力画像１１３を出力する（ステップＳ２０６）。その後、処理を継続するか否かの判断を行い（ステップＳ２０７）、処理を継続する場合は（ステップＳ２０７：Ｙｅｓ）ステップＳ２０１に戻って以降の処理を繰り返す。一方、処理を継続しない場合は（ステップＳ２０７：Ｎｏ）、一連の処理を終了する。
【００８２】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の画像処理装置２００は、原画像１１０に対する画像認識処理を行い、その認識結果を示す認識情報１１６を利用しながら、原画像１１０に対して多層マスク画像１１１に基づく抽象化処理を行うようにしている。したがって、本実施形態の画像処理装置２００によれば、原画像１１０の領域ごとに人物の検出結果に応じた異なる抽象化処理を適用することが可能となり、原画像１１０に対するプライバシ保護のための多段階の処理を簡便に実現することができる。また、本実施形態を第１実施形態と組み合わせて実施することにより、原画像１１０から人物が検出されない場合でも、プライバシ保護を考慮すべき領域に対して所定の抽象化処理を適用することができ、人物の検出結果に依存せずにプライバシ保護を図ることができる。
【００８３】
＜第３実施形態＞
次に、本発明の第３実施形態について説明する。図１４は、第３実施形態に係る画像処理システム３００の機能的な構成例を示すブロック図である。本実施形態の画像処理システム３００は、第２実施形態の画像処理装置２００と、マスク画像編集装置４００と、データ管理サーバ５００とをネットワーク３０を介して通信可能に接続した構成である。なお、第２実施形態の画像処理装置２００の代わりに、第１実施形態の画像処理装置１００を接続してもよいし、第１実施形態と第２実施形態とを組み合わせた構成の画像処理装置を接続してもよい。また、画像処理装置の数は２以上であってもよい。その場合、マスク画像編集装置４００やデータ管理サーバ５００は、それぞれの画像処理装置ごとに設ける必要はなく、画像処理システム３００内にそれぞれ１つ以上含まれていればよい。
【００８４】
本実施形態の画像処理システム３００では、画像処理装置２００の画像出力部１０４が出力する出力画像１１３が、制御部１０６によって制御される送信タイミングに従ってネットワーク３０に送出され、ネットワーク３０を介してデータ管理サーバ５００へと送られる。データ管理サーバ５００は、画像処理装置２００に対してネットワーク３０を介して各種の制御命令を送信することにより、例えば画像処理装置２００のアクティベーションなど、画像処理装置２００の管理を行うことができる。また、画像処理装置２００で使用する多層マスク画像１１１の各レイヤと抽象化処理との対応付けの情報の更新、画像認識処理で用いる認識辞書や認識方法の更新なども行うことができる。さらに、データ管理サーバ３００は、画像処理装置２００から送られた出力画像１１３をインターネットに公開する例えばＷｅｂＡＰＩを有していたり、ブラウザ上に画像を公開するためのＷｅｂアプリケーションを提供する機能を有していてもよい。
【００８５】
また、本実施形態の画像処理システム３００では、画像処理装置２００において原画像１１０に対する抽象化処理を行う際に用いる多層マスク画像１１１が、マスク画像編集装置４００から画像処理装置２００に提供される。すなわち、画像処理装置２００では、マスク画像編集装置４００において編集された多層マスク画像１１１を用いて、原画像１１０に対する抽象化処理が行われる。
【００８６】
マスク画像編集装置４００は、例えば図１４に示すように、通信部４０１と、編集部４０２と、表示部４０３と、操作入力部４０４とを備える。これらマスク画像編集装置４００の各処理部は、第１実施形態の画像処理装置１００や第２実施形態の画像処理装置２００と同様に、例えば、一般的なコンピュータを構成するハードウェア（図２参照）と、コンピュータで実行されるプログラム（ソフトウェア）との協働により実現することができる。
【００８７】
通信部４０１は、ネットワーク３０を介して画像処理装置２００と通信する。例えば、通信部４０１は、画像処理装置２００から送信された原画像１１０を受信する。画像処理装置２００においては、画像取得部１０１を通信部１０５と接続することで、画像取得部１０１により取得された原画像１１０をそのままマスク画像編集装置４００に送信することができる。あるいは、事前にマスク画像編集装置４００から画像処理装置２００に対して、画素値が全て０である多層マスク画像１１１を送信してこれを画像保持部１０２に保持させておき、この多層マスク画像１１１に基づく抽象化処理により得られる抽象化画像１１２（すなわち、抽象化処理が行われていない原画像１１０）を出力画像１１３とし、ネットワーク３０経由でマスク画像編集装置４００に送信する構成としてもよい。また、原画像１１０に対する画像認識処理を行い、上述の認識情報１１６に基づいて付随情報を重畳した画像を送信してもよい。
【００８８】
また、通信部４０１は、ユーザの操作に応じて後述の編集部４０２で生成・編集された多層マスク画像１１１を、ネットワーク３０を介して画像処理装置２００に送信したりする機能を有する。マスク画像編集装置４００から画像処理装置２００に送信された多層マスク画像１１１は、画像処理装置２００内の画像保持部１０２に保持されて、抽象化処理部１０３が原画像１１０に対する抽象化処理を行う際に読み出される。
【００８９】
編集部４０２は、多層マスク画像１１１の生成や編集を容易に行うためのマスク画像編集用ＧＵＩ（Graphical  User  Interface）を提供する。このマスク画像編集用ＧＵＩは、表示部４０３に表示される。表示部４０３は、例えば液晶ディスプレイなどの表示デバイスである。また、表示部４０３に表示されたマスク画像編集用ＧＵＩを参照するユーザ（以下、「編集ユーザ」という）は、操作入力部４０４を用いて、このマスク画像編集用ＧＵＩを操作することができる。操作入力部４０４は、例えばマウスやキーボードなどの入力デバイスである。
【００９０】
編集部４０２は、操作入力部４０４が受け付けた編集ユーザの操作に応じた操作信号に基づいて、多層マスク画像１１１の生成や編集を行う。編集部４０２により生成された多層マスク画像１１１は、通信部４０１からネットワーク３０を介して画像処理装置２００に送信され、画像処理装置２００の画像保持部１０２に保持される。以降、画像処理装置２００では、このマスク画像編集装置４００から送信された多層マスク画像１１１に基づいて、原画像１１０に対する抽象化処理が行われる。
【００９１】
図１５は、マスク画像編集用ＧＵＩの一例を示す図である。この図１５に例示するマスク画像編集用ＧＵＩ６００は、カメラ２０を選択するカメラ選択領域６０１と、選択されたカメラ２０で撮影された原画像１１０を表示するカメラ画像表示領域６０２と、抽象化処理の適用領域を設定するレイヤを選択するレイヤ選択領域６０３と、選択されたレイヤのマスク画像を半透過で原画像１１０上に重畳して表示するマスク画像表示領域６０４と、「画像作成」ボタン６０５と、「画像更新」ボタン６０６とを有する。
【００９２】
編集ユーザは、表示部４０３にマスク画像編集用ＧＵＩが表示されると、まず、カメラ選択領域６０１から所望のカメラ２０を選択する。カメラ選択領域６０１には、本実施形態の画像処理システム３００において使用可能なカメラ２０の端末ＩＤや端末名などが、選択可能に一覧表示されている。編集ユーザは、マウスなどの操作入力部４０４を利用して所望のカメラ２０の項目を選択することにより、そのカメラ２０を選択することができる。
【００９３】
編集ユーザによりカメラ２０が選択されると、そのカメラ２０で撮影された原画像１１０がカメラ画像表示領域６０２に表示される。編集ユーザの操作によって別のカメラ２０が選択されると、その操作に応じてカメラ画像表示領域６０２に表示される原画像１１０が切り替わる。
【００９４】
次に、編集ユーザは、レイヤ選択領域６０３から、抽象化処理の適用領域を設定するレイヤを選択する。レイヤ選択領域６０３には、多層マスク画像１１１を構成する各レイヤやそのレイヤに割り当てられた抽象化処理を示す機能概要などが、選択可能に一覧表示されている。編集ユーザは、マウスなどの操作入力部４０４を利用して所望のレイヤの項目を選択することにより、抽象化処理の適用範囲を設定するレイヤを選択することができる。
【００９５】
編集ユーザによりレイヤが選択されると、そのレイヤのマスク画像を半透過で原画像１１０上に重畳した画像がマスク画像表示領域６０４に表示される。編集ユーザは、このマスク画像表示領域６０４に表示された画像上で、例えばマウスなどの操作入力部４０４を利用して、そのレイヤに割り当てられた抽象化処理を適用したい領域をなぞる操作を行うことで、その領域を抽象化処理の適用領域として設定することができる。編集ユーザの操作によって別のレイヤが選択されると、その操作に応じてマスク画像表示領域６０４に表示される画像が切り替わる。編集ユーザは、マスク画像表示領域６０４に表示される画像を切り替えながら領域をなぞる操作を繰り返すことで、各レイヤに対する適用領域の設定を行うことができる。
【００９６】
その後、編集ユーザが「画像作成」ボタン６０５を押下する操作を行うと、上記式（１）および式（２）に従って多層マスク画像１１１が生成され、この多層マスク画像１１１がマスク画像表示領域６０４に表示される。表示された多層マスク画像１１１をさらに編集する場合、編集ユーザは、レイヤ選択領域６０３をさらに操作して、選択したレイヤに対する適用領域の再設定を行う。表示された多層マスク画像１１１でＯＫであれば、「画像更新」ボタン６０６を押下することで、この多層マスク画像１１１がマスク画像編集装置４００からネットワーク３０を介して画像処理装置２００に送信され、画像処理装置２００の画像保持部１０２に保持される。
【００９７】
次に、マスク画像編集装置４００の動作について、図１６を参照して説明する。図１６は、マスク画像編集装置４００の処理手順の一例を示すフローチャートである。なお、図１６のフローチャートで示す一連の処理は、表示部４０３に表示したマスク画像編集用ＧＵＩ６００上で、編集ユーザが操作入力部４０４を用いて所定の操作を行うことに応じて実行される編集部４０２による処理の流れを示している。
【００９８】
マスク画像編集装置４００の処理が開始されると、まず、マスク画像編集用ＧＵＩ６００上の編集ユーザによる操作に応じて、原画像１１０の取得先となるカメラ２０が選択される（ステップＳ３０１）。そして、ステップＳ３０１で選択されたカメラ２０で撮影された原画像１１０が、マスク画像編集用ＧＵＩ６００上で表示される（ステップＳ３０２）。
【００９９】
次に、マスク画像編集用ＧＵＩ６００上の編集ユーザによる操作に応じて、多層マスク画像１１１の各レイヤに割り当てられた抽象化処理の適用領域を設定する処理（編集処理）が行われる（ステップＳ３０３）。そして、この編集処理が終了すると、多層マスク画像１１１が生成され（ステップＳ３０４）、生成された多層マスク画像１１１が画像処理装置２００に送信されて（ステップＳ３０５）、画像処理装置２００の画像保持部１０２に保持される。
【０１００】
以上、具体的な例を挙げながら詳細に説明したように、本実施形態の画像処理システム３００は、画像処理装置２００に対してマスク画像編集装置４００を通信可能に接続した構成とし、編集ユーザの操作に応じてこのマスク画像編集装置４００により生成・編集された多層マスク画像１１１を画像処理装置２００に送信するようにしている。そして、画像処理装置２００は、このマスク画像編集装置４００により生成・編集された多層マスク画像１１１に基づいて、原画像１１０に対する抽象化処理を行う。したがって、本実施形態の画像通信システム３００によれば、カメラ２０の設置環境に合せた抽象化処理の設定変更などをユーザサイドで簡便に実施することができる。例えば、カメラ２０の設置場所をユーザが変更した場合でも、高度なマスク設定が不要であり、ユーザサイドでの設定の更新を容易に実施することができる。
【０１０１】
また、マスク画像編集装置４００は、ユーザが選択したカメラ２０から取得した原画像１１０を元に一般的なマスク画像編集の操作によって多層マスク画像１１１の生成・編集を行えるようにしているので、ユーザに特別な知識がなくても所望の多層マスク画像１１１を得ることができる。
【０１０２】
また、画像処理装置２００とマスク画像編集装置４００との間では、原画像１１０や出力画像１１３と共通の画像というフォーマットで多層マスク画像１１１を送受信することができるため、多層マスク画像１１１に相当する情報を送受信するためにＡＰＩの変更などを行う必要がなく、低コストでシステムを実現できる。
【０１０３】
なお、本実施形態では、編集ユーザの操作に応じて多層マスク画像１１１の生成・編集を行うマスク画像編集装置４００を、画像処理装置２００とは別の装置として実現した例を示したが、マスク画像編集装置４００に相当する機能を画像処理装置２００の内部に持たせる構成としてもよい。この場合、多層マスク画像１１１をネットワーク３０経由で送受信する必要はなく、画像処理装置２００の内部で実現するマスク画像編集装置４００に相当する機能が画像保持部１０２に直接アクセスして、多層マスク画像１１１の生成・編集を行うことが可能である。
【０１０４】
＜補足説明＞
以上述べた少なくとも一つの実施形態によれば、人物の検出結果に依存せずにプライバシ保護を図ることができ、かつ、画像に対するプライバシ保護のための多段階の処理を簡便に実現することができる。
【０１０５】
カメラで撮影した人物を含む画像に対するプライバシ保護対策を行う場合、以下のような一般的な課題がある。画像に対して人物検出を行った結果、人物が検出できなかった場合に、プライバシ保護処理が適用されない。そのため、そのままの画像がネットワークに流れてしまうことになり、個人情報などの漏えいリスクが高い。また、検出対象や画像の特徴に応じてプライバシ保護対策を変える場合には、複数のマスク画像が必要となる。そのため、そのマスク画像を送受信するためのＡＰＩの組み込みが必要となり、システムの開発規模が肥大化する。また、それぞれのマスク画像を作成する手間が増大し、システムの導入コストが肥大化する。さらに、新規にシステムにプライバシ保護対策を追加する場合に、システムを停止する必要がありサービス品質が低下する。
【０１０６】
これに対し、本発明の実施形態では、予め十分な数のマスク画像をレイヤとして持つ多層マスク画像１１１を用い、この多層マスク画像１１１の各レイヤにそれぞれ異なる抽象化処理を割り当てるようにしている。そして、カメラ２０で撮影された原画像１１０に対して抽象化処理を行う際は、多層マスク画像１１１をビットマスク分解し、各レイヤのマスク画像により設定される領域ごとに、そのレイヤに割り当てられた抽象化処理を適用する。したがって、プライバシ保護機能を段階的に適用でき、システムに大きなインパクトを与えずにプライバシ保護の設定変更を実現し、検出対象が検出できない場合でも、一定レベルのプライバシ保護を実現することができる。
【０１０７】
以上、本発明の実施形態を説明したが、この実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０８】
１００，２００  画像処理装置
１０１  画像取得部
１０２  画像保持部
１０３  抽象化処理部
１０４  画像出力部
１０７  画像認識部
１１０  原画像
１１１  多層マスク画像
１１２  抽象化画像
１１３  出力画像
３００  画像処理システム
４００  マスク画像編集装置
【図１】
2018137560.tif 000007
【図２】
2018137560.tif 000008
【図３】
2018137560.tif 000009
【図４】
2018137560.tif 000010
【図５】
2018137560.tif 000011
【図６】
2018137560.tif 000012
【図７】
2018137560.tif 000013
【図８】
2018137560.tif 000014
【図９】
2018137560.tif 000015
【図１０】
2018137560.tif 000016
【図１１】
2018137560.tif 000017
【図１２】
2018137560.tif 000018
【図１３】
2018137560.tif 000019
【図１４】
2018137560.tif 000020
【図１５】
2018137560.tif 000021
【図１６】
2018137560.tif 000022