JP2009105846A - 画像処理装置、画像処理システムおよび画像処理プログラム - Google Patents
画像処理装置、画像処理システムおよび画像処理プログラム Download PDFInfo
- Publication number
- JP2009105846A JP2009105846A JP2007278020A JP2007278020A JP2009105846A JP 2009105846 A JP2009105846 A JP 2009105846A JP 2007278020 A JP2007278020 A JP 2007278020A JP 2007278020 A JP2007278020 A JP 2007278020A JP 2009105846 A JP2009105846 A JP 2009105846A
- Authority
- JP
- Japan
- Prior art keywords
- data
- subject
- image
- camera
- subject light
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Image Processing (AREA)
- Studio Devices (AREA)
Abstract
【課題】演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることが可能な画像処理装置、画像処理システムおよび画像処理プログラムを提供する。
【解決手段】被写体の撮像データを、順次受信し、被写体に照射される照明の分光分布データである被写体光データを、順次取得し、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行ない、順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新し、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
【選択図】図2
【解決手段】被写体の撮像データを、順次受信し、被写体に照射される照明の分光分布データである被写体光データを、順次取得し、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行ない、順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新し、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
【選択図】図2
Description
本発明は、画像処理装置、画像処理システムおよび画像処理プログラムに関し、特に、被写体に照射される照明の分光分布および被写体の分光反射率に基づく画像処理を行なう画像処理装置、画像処理システムおよび画像処理プログラムに関する。
近年、様々な環境下において撮像された被写体の色を、表示装置もしくは印刷装置などの出力装置において、正確に再現するための多くの技術が提案されている。
その一つの技術として、被写体に照射される照明の分光分布(以下、分光放射輝度、分光放射照度、もしくはスペクトルともいう)、被写体の分光反射率に基づくカラーマネジメント技術がある。本技術は、被写体の色をスペクトルとして扱うことに相当し、正確な色再現を行なうことが可能である。
本技術は、“三宅洋一編「分光画像処理入門」財団法人 東京大学出版会、2006年2月24日”(非特許文献1)(以下、第1の先行技術ともいう)に開示されている。
また、特開平11−085952号公報(特許文献1)には、撮像時の照明の分光分布に基づいて、被写体の色を正確に再現するための技術(以下、第2の先行技術ともいう)が開示されている。
また、特開2004−145773号公報(特許文献2)には、異なる照明環境下での物体の正確な色再現を行なうための技術(以下、第3の先行技術ともいう)が開示されている。
特開平11−085952号公報
特開2004−145773号公報
三宅洋一編「分光画像処理入門」財団法人 東京大学出版会、2006年2月24日
第1〜第3の先行技術のように、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた画像を得るためには、多くの演算処理が必要となる。また、第1〜第3の先行技術は、主に静止画像を対象にした技術である。
なお、被写体に照射される照明の分光分布を常に一定に保つことは難しく、当該照明の分光分布は、時間経過に応じて、変化するのが一般的である。そのため、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得るために、第1〜第3の先行技術を、そのまま適用すると、演算処理量が膨大となり、撮像から表示にいたる遅延の少ない実時間処理を行なうためには、非常に高速な処理が可能なプロセッサ等を有する演算処理装置が必要となる。したがって、実用的なシステムを構築するためには、上述の演算処理を効率よく削減しなければならない。
本発明は、上述の問題点を解決するためになされたものであって、その目的は、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることが可能な画像処理装置、画像処理システムおよび画像処理プログラムを提供することである。
上述の課題を解決するために、この発明のある局面に従うと、撮像装置で撮像された被写体の撮像データを受けて、表示装置に被写体を表示するための画像データを生成する画像処理装置は、撮像装置により順次撮像される被写体の撮像データを、所定時間経過毎に、順次受信する受信手段と、被写体に照射される照明の分光分布データである被写体光データを、所定時間経過毎に、順次取得する被写体光取得手段と、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行なう被写体光使用変換処理実行手段と、被写体光取得手段により順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新する被写体光変化時更新手段とを備え、被写体光使用変換処理実行手段は、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
好ましくは、被写体光使用変換処理は、受信された撮像データを、撮像装置の撮像特性に基づいた撮像特性関数により変換する撮像特性変換処理を含む。
好ましくは、被写体光データは、光の波長毎のエネルギー量を示す分光放射輝度もしくは分光放射照度のデータである。
好ましくは、表示装置を観察する利用者に照射される照明の分光分布データである観察光データを、所定時間経過毎に、順次取得する観察光取得手段と、観察光データおよび被写体の分光反射率に基づいた画像データを算出するためのデータ変換関数であって、観察光取得手段により取得された観察光データを含むデータ変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する観察光使用変換処理を、撮像データを受信する毎に行なう観察光使用変換処理実行手段と、観察光取得手段により順次取得される、観察光データの変化量が、所定のしきい値以上となった場合、取得された最新の観察光データに基づいて、データ変換関数を更新する観察光変化時更新手段とをさらに備え、観察光変換処理実行手段は、データ変換関数が更新された場合、更新されたデータ変換関数を使用して、観察光使用変換処理を行なう。
好ましくは、観察光データは、光の波長毎のエネルギー量を示す分光放射輝度もしくは分光放射照度のデータである。
この発明の他の局面に従う画像処理システムは、被写体を撮像する撮像装置と、表示装置と、画像処理装置とを含む。画像処理装置は、撮像装置により順次撮像される被写体の撮像データを、所定時間経過毎に、順次受信する受信手段と、被写体に照射される照明の分光分布データである被写体光データを、所定時間経過毎に、順次取得する被写体光取得手段と、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行なう被写体光使用変換処理実行手段と、被写体光取得手段により順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新する被写体光変化時更新手段とを備え、被写体光使用変換処理実行手段は、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
この発明のさらに他の局面に従うと、撮像装置で撮像された被写体の撮像データを受けて、表示装置に被写体を表示するための画像データを生成するコンピュータにより実行される画像処理プログラムは、撮像装置により順次撮像される被写体の撮像データを、所定時間経過毎に、順次受信するステップと、被写体に照射される照明の分光分布データである被写体光データを、所定時間経過毎に、順次取得するステップと、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、取得するステップにより取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行なうステップと、順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新するステップとを備え、被写体光使用変換処理を行なうステップは、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なうステップを含む。
本発明に係る画像処理装置は、被写体の撮像データを、順次受信し、被写体に照射される照明の分光分布データである被写体光データを、順次取得し、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行ない、順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新し、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
したがって、順次取得される、被写体光データの変化量が、所定のしきい値以上でない場合は、変換関数を更新する処理は行なわれない。また、被写体に照射される照明の分光分布データである被写体光データにより、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理が、撮像データを受信する毎に行なわれる。その結果、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
本発明に係る画像処理システムは、撮像装置と、表示装置と、画像処理装置とを含む。画像処理装置は、被写体の撮像データを、順次受信し、被写体に照射される照明の分光分布データである被写体光データを、順次取得し、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行ない、順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新し、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
したがって、順次取得される、被写体光データの変化量が、所定のしきい値以上でない場合は、変換関数を更新する処理は行なわれない。また、被写体に照射される照明の分光分布データである被写体光データにより、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理が、撮像データを受信する毎に行なわれる。その結果、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
本発明に係る画像処理プログラムは、被写体の撮像データを、順次受信し、被写体に照射される照明の分光分布データである被写体光データを、順次取得し、被写体光データおよび被写体の分光反射率に基づいた画像データを算出するための変換関数であって、被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行ない、順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、変換関数を更新し、変換関数が更新された場合、更新された変換関数を使用して、被写体光使用変換処理を行なう。
したがって、順次取得される、被写体光データの変化量が、所定のしきい値以上でない場合は、変換関数を更新する処理は行なわれない。また、被写体に照射される照明の分光分布データである被写体光データにより、受信した撮像データを、表示装置に表示するための画像データに変換する被写体光使用変換処理が、撮像データを受信する毎に行なわれる。その結果、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
<第1の実施の形態>
まず、照明スペクトル測定装置が一つの場合の処理について説明する。これは、被写体、カメラ、モニタおよび利用者が同じ場所に位置する場合、すなわち、被写体光E1と観察光E2が同一の照明条件(E=E1=E2)である場合に有効な実施の形態である。
まず、照明スペクトル測定装置が一つの場合の処理について説明する。これは、被写体、カメラ、モニタおよび利用者が同じ場所に位置する場合、すなわち、被写体光E1と観察光E2が同一の照明条件(E=E1=E2)である場合に有効な実施の形態である。
(システムの構成)
図1は、本実施の形態における画像処理システム1000の構成を示す図である。図1を参照して、画像処理システム1000は、カメラ100と、画像処理装置200と、照明スペクトル測定装置300と、モニタ400とを含む。
図1は、本実施の形態における画像処理システム1000の構成を示す図である。図1を参照して、画像処理システム1000は、カメラ100と、画像処理装置200と、照明スペクトル測定装置300と、モニタ400とを含む。
画像処理装置200は、カメラ100、照明スペクトル測定装置300およびモニタ400の各々とデータ通信可能である。照明スペクトル測定装置とは、分光のためのプリズムとCCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)もしくは、フォトアレイ等の受光素子によって構成され、照明の分光分布(分光放射輝度もしくは分光放射照度)の測定が可能な装置のことである。分光分布および照明スペクトル測定装置の配置については後述する。
カメラ100は、3バンドのカメラであるとする。なお、カメラ100は、3バンドに限定されることなく、たとえば、3バンドを越えるマルチバンドカメラであってもよい。カメラ100は、動画像を撮像する機能を有する。以下においては、カメラが被写体を撮像することにより得られた被写体のデータを撮像データともいう。なお、カメラ100は、静止画像を撮像する機能を有してもよい。
カメラ100は、被写体を撮像することにより得られた動画像データを、画像処理装置200へ送信する。なお、カメラ100は、1秒間に、30フレームを撮像する機能を有するとする。この場合、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。画像データgは、複数の画素を含む。たとえば、カメラ100により撮像される画像のサイズが、たとえば、横1920ドット、縦1080ドットである場合、画像データgは、2073600個の画素を含む。
なお、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列で表すものとする。画像データgのR,G,Bの値は、12ビットで表される値(0〜4095)であるとする。なお、画像データgのR,G,Bの値は、12ビットに限定されることなく、たとえば、8ビットで表される値であってもよい。
一般的に、モニタは、入力データと実際に表示する輝度との間に非線形な特性を有しており、このような非線形な特性はガンマ特性と呼ばれる。カメラは、このようなモニタのガンマ特性を打ち消して、人間の目に合った線形な特性とするための特性(以下、補正ガンマ特性もしくは逆ガンマ特性ともいう)を有している。したがって、カメラから出力される画像データgの値は、逆ガンマ特性を有するものとする。なお、カメラから出力される画像データgの値は、逆ガンマ特性を有しないもの(ガンマが1である線形な特性)であっても良い。
照明の分光分布のことを分光放射輝度もしくは分光放射照度ともいう。ここで、分光放射輝度とは、単位面積、単位立体角当たりにおける、光の波長毎のエネルギー量である。また、分光放射照度とは、単位面積当たりにおける、光の波長毎のエネルギー量である。分光放射輝度を取得する場合は、分光反射率が既知である標準白色板を別途用意し、そこに反射した光(反射光)を照明スペクトル測定装置300で測定する構成となる。
分光放射照度を取得する場合は、照明スペクトル測定装置300の受光部に分光透過率が既知である乳化白色の拡散板(コサインコレクタ、コサインディフューザ、コサインレセプタ等とも呼ぶ)が装着され、撮像対象被写体に照射される光(直接光)を測定する構成となる。以下においては、分光放射照度を取得する構成で、その詳細を述べるものとする。撮像対象被写体とは、カメラが撮像する被写体のことである。
照明スペクトル測定装置300は、カメラ100が撮像する被写体(以下、撮像対象被写体ともいう)に照射される照明の分光放射照度を測定可能なように、撮像対象被写体の位置もしくはその近傍に配置される。撮像対象被写体の近傍とは、カメラ100により照明スペクトル測定装置300が撮像されない程度で、かつ、被写体に照射される照明の分光分布を測定可能な位置である。
照明スペクトル測定装置300は、画像処理装置200からの要求に応じて、撮像対象被写体に照射される照明の分光放射照度を測定し、測定した照明の分光放射照度を示す被写体光データE1を、画像処理装置200へ送信する。照明スペクトル測定装置300は、撮像対象被写体の位置もしくはその近傍に配置されるので、撮像対象被写体に照射される照明の分光分布が変化すると、被写体光データE1の値も変化する。
被写体光データE1は、可視光の波長領域(380〜780ナノメートル)において、1ナノメートル毎にサンプリングした場合(以下、場合Aともいう)、401個のデータとなる。以下においては、被写体光データE1は、一例として、401個の被写体光データを用いるものとする。
画像処理装置200は、演算部210と、記憶部240と、制御部250とを備える。演算部210は、演算処理および各種処理を行なう機能を有する。演算部210は、カメラ100およびモニタ400の各々とデータ通信可能である。
記憶部240は、データを記憶するメモリである。制御部250は、後述する各種処理、演算処理等を行なう機能を有するCPU(Central Processing Unit)である。なお、制御部250は、CPUに限定されることなく、演算機能を有するその他の回路であってもよい。制御部250は、記憶部240にデータアクセス可能である。また、制御部250は、照明スペクトル測定装置300および演算部210の各々とデータ通信可能である。
演算部210は、カメラLUT(LookUp Table)演算部211と、線形画像演算部212と、モニタLUT演算部213とを含む。ここでLUTとは、予め用意したテーブルを参照することによって、ある入力値に対応する変換値に読替えるものであり、後述する各種演算を高速に処理するための回路である。
カメラLUT演算部211およびモニタLUT演算部213の各々は、後述する各種処理、演算処理等を行なう機能を有するハードウェアである。線形画像演算部212は後述する各種処理、演算処理等を行なう機能を有するハードウェアである。なお、カメラLUT演算部211、線形画像演算部212およびモニタLUT演算部213は、一体化されたハードウェアで構成されていてもよい。また、演算部210および制御部250は、一体化されたハードウェアで構成されていてもよい。
カメラLUT演算部211は、記憶部211Mを有する。記憶部211Mは、データを記憶するメモリである。カメラLUT演算部211は、カメラ100および線形画像演算部212の各々とデータ通信可能である。
線形画像演算部212は、記憶部212Mを有する。記憶部212Mは、データを記憶するメモリである。制御部250は、記憶部212Mにデータアクセス可能である。線形画像演算部212は、カメラLUT演算部211およびモニタLUT演算部213の各々とデータ通信可能である。
モニタLUT演算部213は、記憶部213Mを有する。記憶部213Mは、データを記憶するメモリである。モニタLUT演算部213は、線形画像演算部212およびモニタ400の各々とデータ通信可能である。なお、記憶部211M、記憶部212Mおよび記憶部213Mの全てまたは一部は、1つの記憶部であってもよく、演算部210の外部に設けられていてもよい。
詳細は後述するが、画像処理装置200は、画像データgおよび被写体光データE1を受信し、画像データgと、被写体光データE1とを使用して、画像データgを、画像データgdに変換する。そして、画像処理装置200は、画像データgdを、モニタ400へ送信する。
モニタ400は、文字や画像等を表示する機能を有する装置である。モニタ400は、LCDパネル(Liquid Crystal Display Panel)を使用した装置である。なお、モニタ400は、上記以外の表示方式のパネル(たとえば、PDP(Plasma Display Panel))を使用した装置であってもよい。また、モニタ400は、CRT(Cathode Ray Tube)を利用した表示装置、SED(Surface-conduction Electron-emitter Display)、FED(Field Emission Display)、プロジェクター等であってもよい。
ここで、モニタ400は、ガンマ特性(非線形な入出力特性)を有するものとする。以下においては、モニタ400のガンマ値を、γdと表す。一例として、γd=2.2であるとする。モニタ400は、受信した画像データgdを表示する。
(色再現処理方法)
次に、本発明において使用される色再現処理方法について説明する。
次に、本発明において使用される色再現処理方法について説明する。
ここで、カメラ100が、撮像対象被写体を撮像することにより得られる画像データに含まれる複数の画素の1つをgi(x,y)とする。画素gi(x,y)において、iは、カメラのバンド数を示し、x,yは、各画素の2次元位置座標を示す。カメラ100が3バンドカメラである場合、i=3となる。また、カメラ100の分光感度をSi(λ)とする。
また、撮像対象被写体に照射される照明の分光分布(分光放射輝度もしくは分光放射照度)をE(λ)とする。E(λ)は照明スペクトル測定装置300により得られる。また、撮像対象被写体の分光反射率をf(x,y;λ)とする。また、画像に加わる加法性ノイズをni(x,y)とする。ここで、加法性ノイズとは、カメラ内部のセンサ特性や、レンズ特性、照明条件などによって起因する信号である。この場合、非特許文献1に記述されているように、以下の式(1)が成立する。
式(1)において、λは波長(単位:ナノメートル)を示す。また、式(1)において、Si(λ)、E(λ)、f(x,y;λ)、ni(x,y)は、行列を示す。
簡略化のため、加法性ノイズni(x,y)は殆ど無視しても良いレベルであるとする。
以下においては、式(1)に示される、Si(λ)、E(λ)、f(x,y;λ)およびni(x,y)を、それぞれ、S、E、fおよびnとも表す。非特許文献1に記述されているように、式(1)中の分光反射率fを算出するために、ウィナー推定を用いるものとする。なお、分光反射率fの算出は、ウィナー推定に限定されず、主成分分析によって求めるようにしても良い。分光反射率fをウィナー推定により求める式を、以下の式(2)に示す。
f=W・gc ・・・(2)
式(2)において、Wは、分光反射率推定行列である。分光反射率推定行列Wは、以下の式(3)で表される。カメラ100が3バンドの場合、分光反射率推定行列Wは、3行3列の行列となる。
式(2)において、Wは、分光反射率推定行列である。分光反射率推定行列Wは、以下の式(3)で表される。カメラ100が3バンドの場合、分光反射率推定行列Wは、3行3列の行列となる。
式(3)において、Aは自己相関行列を示す。自己相関行列Aとは、撮像対象被写体と同等と想定される分光反射率の統計データを用いる。例えば、ISO(International Organization for Standardization)で標準化された分光反射率のデータベース(SOCS(Standard Object Color Sample))などを用いるとよい。もしくは、撮像対象被写体が予め分かっている場合においては、被写体そのものの分光反射率を測定しておき、自己相関行列Aを作成してもよい。可視光領域(380〜780ナノメートル)において、1ナノメートル毎にサンプリングした場合(以下、場合Aともいう)、自己相関行列Aは、401行1列の行列となる。
また、式(3)において、Hはシステム行列である。システム行列Hは、以下の式(4)で表される。なお、式(3)において、行列Htは、システム行列Hの転置行列を意味する。
H=S・E ・・・(4)
前述したように、式(4)において、Sは、カメラ100の分光感度である。場合Aにおいて、分光感度Sは、R,G,Bの各々に対して値がとられるため、401行3列の行列となる。また、Eは、撮像対象被写体に照射される照明の分光放射照度すなわち被写体光E1と等価(E=E1)であるとする。場合Aにおいて、Eは、401行1列の行列となる。式(4)において、システム行列Hは、R,G,Bの各々に対して値がとられるため、401行3列の行列となる。
前述したように、式(4)において、Sは、カメラ100の分光感度である。場合Aにおいて、分光感度Sは、R,G,Bの各々に対して値がとられるため、401行3列の行列となる。また、Eは、撮像対象被写体に照射される照明の分光放射照度すなわち被写体光E1と等価(E=E1)であるとする。場合Aにおいて、Eは、401行1列の行列となる。式(4)において、システム行列Hは、R,G,Bの各々に対して値がとられるため、401行3列の行列となる。
式(2)において、gcは、逆ガンマ特性に基づく画像データgを、線形特性を有するデータに変換した画像データである。この場合、画像データgcは、以下の式(5)で表される。
gc=Tc(g)=g1/γc ・・・(5)
式(5)において、γcは、カメラ100のガンマ値である。なお、画像データgcは、画像データgに含まれる複数の画素の各々に対応するR,G,Bの各々の値を1/γc乗することに相当する。上述のようにモニタのガンマ値γd=2.2の場合、カメラのガンマ値γc=1/γd=1/2.2=0.45となる。式(5)の演算を高速に処理するため、カメラLUT演算部211の記憶部211Mには、入力値gに対して変換値gcを出力するテーブルが記憶されている。このようなテーブル参照による演算処理のことをTc()と表すことにする。
式(5)において、γcは、カメラ100のガンマ値である。なお、画像データgcは、画像データgに含まれる複数の画素の各々に対応するR,G,Bの各々の値を1/γc乗することに相当する。上述のようにモニタのガンマ値γd=2.2の場合、カメラのガンマ値γc=1/γd=1/2.2=0.45となる。式(5)の演算を高速に処理するため、カメラLUT演算部211の記憶部211Mには、入力値gに対して変換値gcを出力するテーブルが記憶されている。このようなテーブル参照による演算処理のことをTc()と表すことにする。
ここで、人間の視覚感度特性に基づく関数を、等色関数hとする。等色関数hは、CIE(国際照明委員会)にて規定されている。場合Aにおいて、等色関数hは、後述する三刺激値X,Y,Zの各々に対して値を示す関数の行列であって、401行3列の行列となる。
非特許文献1に示される技術に基づいて、分光反射率fに、等色関数hおよび分光放射照度Eを乗算することにより、画像データgを、画像データg’に変換することができる。式(2)の両辺に、等色関数hおよび分光放射照度Eを乗算すると、以下の式(6)となる。
g’=h・E・W・gc ・・・(6)
画像データg’は、分光反射率fに、等色関数hおよび分光放射照度Eを乗算した値である。また式(6)において、Eは、表示装置を観察する利用者に照射される照明の分光放射照度すなわち観察光E2と等価(E=E2)であるとする。もし、前述の被写体光E1と観察光E2が異なる照明条件(E1≠E2)である場合は、式(4)のEをE1、式(6)のEをE2と置き換えて区別する必要がある。
画像データg’は、分光反射率fに、等色関数hおよび分光放射照度Eを乗算した値である。また式(6)において、Eは、表示装置を観察する利用者に照射される照明の分光放射照度すなわち観察光E2と等価(E=E2)であるとする。もし、前述の被写体光E1と観察光E2が異なる照明条件(E1≠E2)である場合は、式(4)のEをE1、式(6)のEをE2と置き換えて区別する必要がある。
式(6)において、h・E・Wの項をMと表し、線形画像演算行列と呼ぶことにする。すなわち、画像データg’は三刺激値に相当する物理量である。ここで、三刺激値とは、人間の目の色に対する特性を考慮し、光の三原色に対応する仮想の原色X,Y,Zである。三刺激値は、CIE(国際照明委員会)において規定されている。
線形画像演算行列Mは、以下の式(7)で表される。なお、線形画像演算行列Mは、分光反射率推定行列Wと同じ次元の行列であり、カメラ100が3バンドカメラの場合、線形画像演算行列Mは、3行3列の行列となる。ここで、線形画像演算行列Mは、分光放射照度Eおよび撮像対象被写体の分光反射率に基づいた画像データg’を算出するための変換行列(変換関数)である。
M=h・E・W ・・・(7)
式(6)を、式(7)を用いて変形すると、以下の式(8)となる。
式(6)を、式(7)を用いて変形すると、以下の式(8)となる。
g’=M・gc ・・・(8)
式(8)において、線形画像演算行列Mは、画像データgcを、画像データg’に変換するための行列である。画像データg’は、分光放射照度Eおよび被写体の分光反射率fに基づいて、色を正確に再現する画像データである。ここで、分光放射照度Eは、前述の通り、照明スペクトル測定装置300により得られる被写体光データE1である。この場合、画像データg’は、被写体に照射される照明の分光分布(分光放射照度)および、被写体の分光反射率に基づき、当該被写体の色を正確に再現する画像データとなる。
式(8)において、線形画像演算行列Mは、画像データgcを、画像データg’に変換するための行列である。画像データg’は、分光放射照度Eおよび被写体の分光反射率fに基づいて、色を正確に再現する画像データである。ここで、分光放射照度Eは、前述の通り、照明スペクトル測定装置300により得られる被写体光データE1である。この場合、画像データg’は、被写体に照射される照明の分光分布(分光放射照度)および、被写体の分光反射率に基づき、当該被写体の色を正確に再現する画像データとなる。
(画像処理装置における演算処理)
次に、前述した色再現処理方法に基づいて、画像処理装置200において行なわれる演算処理について説明する。
次に、前述した色再現処理方法に基づいて、画像処理装置200において行なわれる演算処理について説明する。
まず、制御部250が行なう、線形画像演算行列Mを算出するための処理(以下、線形画像演算行列算出処理ともいう)について説明する。ここで、照明スペクトル測定装置300は、前述したように、画像処理装置200からの要求に応じて、被写体光データE1を、画像処理装置200へ送信するとする。また、記憶部240には、カメラ100の分光感度Sのデータ、式(3)に示される自己相関行列Aのデータ、および、式(6)に示される等色関数hのデータが予め記憶されているとする。
なお、線形画像演算行列算出処理が行なわれるのと同時に、制御部250は、経過時間測定処理を実行する。経過時間測定処理は、他の処理とは独立して実行される処理である。経過時間測定処理では、制御部250が、線形画像演算行列算出処理が開始されてからの経過時間を測定する。
図2は、線形画像演算行列算出処理のフローチャートを示す図である。図2を参照して、線形画像演算行列算出処理では、まず、ステップS111の処理が行なわれる。
ステップS111では、所定時間(たとえば、1分)が経過したか否かが判定される。具体的には、制御部250が、経過時間測定処理により測定されている経過時間が所定時間になったか否かを判定する。ここで、所定時間は、カメラ100が1フレーム(静止画像)を撮像する時間(1/30秒)より、十分に長い時間(たとえば、1分)であるとする。
ステップS111において、YESならば、制御部250が、経過時間測定処理により測定されている経過時間を“0”にして、ステップS112に進む。一方、ステップS111において、NOならば、再度、ステップS111の処理が行なわれる。ここでは、経過時間測定処理により測定されている経過時間が所定時間になったとして、制御部250が、経過時間測定処理により測定されている経過時間を“0”にして、ステップS112に進む。この場合、経過時間測定処理は、ステップS111でYESと判定されてからの経過時間を測定することになる。
ステップS112では、制御部250が、照明スペクトル測定装置300に対し被写体光データ(分光放射照度)を要求する。そして、制御部250は、照明スペクトル測定装置300から被写体光データE1を受信する。ここで、受信された被写体光データE1は、401個の可視光領域(波長380〜780ナノメートル)における分光放射照度データであるとする。そして、制御部250は、受信した被写体光データE1を、記憶部240に記憶させる。なお、制御部250が、記憶部240に記憶させる被写体光データE1は、所定個数までとする。当該所定個数は、一例として、10個とする。
制御部250は、記憶部240に10個の被写体光データE1が記憶されている場合、制御部250は、記憶部240に記憶されている10個の被写体光データE1のうち、最も古いデータを削除して、受信した最新のデータを、記憶部240に記憶させる。そして、ステップS112Nに進む。なお、受信した被写体光データE1は、前述した分光放射照度Eであり、401行1列の行列である。
ステップS112Nでは、被写体光データE1の変化量が所定のしきい値以上であるか否かが判定される。ステップS112Nにおいて、YESならば、ステップS113に進む。一方、ステップS112Nにおいて、NOならば、再度、ステップS111の処理が行なわれる。
具体的には、まず、制御部250が、記憶部240に2個以上の被写体光データE1が記憶されているか否かを判定する。記憶部240に2個以上の被写体光データE1が記憶されていない場合(たとえば、受信した最新の1個の被写体光データE1のみが記憶されている場合)、制御部250は、被写体光データE1の変化量が所定のしきい値以上であると判定する。この場合、ステップS113に進む。すなわち、初めて、ステップS112Nの処理が行なわれる場合は、ステップS113に進む。
一方、記憶部240に2個以上の被写体光データE1が記憶されている場合、制御部250は、以下の判定処理Aを行なう。以下においては、被写体光データE1に含まれる401個のデータの平均値を、被写体光平均値E1aveともいう。
判定処理Aでは、制御部250が、記憶部240に記憶されている2個以上の被写体光データE1のうち、受信した最新の1個の被写体光データE1を除いた被写体光データE1の各々の被写体光平均値E1aveを算出する。記憶部240に記憶されている被写体光データE1が、例えば10個の場合、算出される被写体光平均値E1aveは9個となる。また、制御部250は、受信した最新の被写体光データE1から被写体光平均値E1ave(以下、最新被写体光平均値E1ave’ともいう)を算出する。
そして、制御部250は、さらに、算出したn個の被写体光平均値E1のうち、最新被写体光平均値E1ave’との差の絶対値が最も大きい被写体光平均値E1ave’を、被写体光判定値E1detとする。なお、算出された被写体光平均値E1aveが1個の場合、被写体光判定値E1detは、1個の被写体光平均値E1aveそのものの値となる。そして、制御部250は、被写体光判定値E1detと、最新被写体光平均値E1ave’との差の絶対値が、所定値以上であるか否かを判定する。当該所定値は、被写体光判定値E1detを算出する元となった被写体光データにより示される照明光と、最新被写体光平均値E1ave’を算出する元となった被写体光データにより示される照明光との違いが、人間の目で知覚できる程度の値とする。
被写体光判定値E1detと、最新被写体光平均値E1ave’との差の絶対値が、所定値以上である場合、制御部250は、被写体光データE1の変化量が所定のしきい値以上であると判定する。この場合、ステップS113に進む。一方、被写体光判定値E1detと、最新被写体光平均値E1ave’との差の絶対値が、所定値以上でない場合、制御部250は、被写体光データE1の変化量が所定のしきい値以上でないと判定する。この場合、再度、ステップS111の処理が行なわれる。
なお、被写体光データE1の変化量の判定は、上記方法に限定されない。たとえば、前述した被写体光平均値E1aveの代わりに、被写体光データE1に含まれる401個のデータの合計値(積分値)を使用して判定してもよい。また、判定の対象とするデータは、被写体光データ(分光放射照度)に限定されることなく、分光放射輝度のデータであってもよい。
ステップS113では、システム行列Hが算出される。具体的には、制御部250が、記憶部240に記憶されている、カメラ100の分光感度Sと、分光放射照度E(被写体光データE1)とを使用して、式(4)により、システム行列Hを算出する。そして、ステップS114に進む。
ステップS114では、分光反射率推定行列Wが算出される。具体的には、制御部250が、記憶部240に記憶されている自己相関行列Aと、算出されたシステム行列Hとを使用して、式(3)により、分光反射率推定行列Wを算出する。そして、ステップS115に進む。
ステップS115では、線形画像演算行列Mが算出される。具体的には、制御部250が、記憶部240に記憶されている等色関数hと、受信した最新の被写体光データE1と、算出された分光反射率推定行列Wとを使用して、式(7)により、線形画像演算行列Mを算出する。前述したように、線形画像演算行列Mは、画像データgを、画像データg’に変換するための行列である。また、前述したように、線形画像演算行列Mは、分光放射照度E(=被写体光E1)および撮像対象被写体の分光反射率に基づいた画像データg’を算出するための変換行列(変換関数)である。画像データg’は、分光放射照度Eおよび撮像対象被写体の分光反射率fに基づいて、色を正確に再現する画像データである。
ここで、算出された線形画像演算行列Mは、照明スペクトル測定装置300から送信された被写体光データE1を使用して算出された値である。被写体光データE1は、カメラ100が撮像する撮像対象被写体に照射される照明の分光放射照度のデータである。したがって、算出された線形画像演算行列Mは、画像データgcを、カメラ100が撮像する撮像対象被写体の色を正確に再現する画像データg’に変換するための行列である。そして、ステップS116に進む。
ステップS116では、制御部250が、算出した線形画像演算行列Mを、記憶部212Mに記憶させる。なお、記憶部212Mに線形画像演算行列Mが既に記憶されている場合は、算出した線形画像演算行列Mを、記憶部212Mに上書き記憶させる。すなわち、記憶部212Mに記憶されている線形画像演算行列Mを、最新の線形画像演算行列Mに更新する。そして、再度、ステップS111の処理が行なわれる。
以上の線形画像演算行列算出処理により、制御部250は、被写体光データE1の変化量が所定のしきい値以上でない場合、ステップS113〜S115の演算処理を行なわない。したがって、被写体光データE1の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。
ここで、被写体光データE1の変化量が所定のしきい値以上であるか否かの判定は、前述した被写体光判定値E1detと、前述した最新被写体光平均値E1ave’との差の絶対値が、所定値以上であるか否かの判定である。当該所定値は、前述したように、被写体光判定値E1detを算出する元となった被写体光データにより示される照明光と、最新被写体光平均値E1ave’を算出する元となった被写体光データにより示される照明光との違いが、人間の目で知覚できる程度の値である。
また、被写体光データE1の変化量が所定のしきい値以上である場合、すなわち、被写体光判定値E1detと、最新被写体光平均値E1ave’との差の絶対値が所定値以上である場合にのみ、画像処理装置200は、最新の被写体光データE1の値を反映した線形画像演算行列Mを、記憶部212Mに記憶させることになる。ここで、被写体光データE1の値は、撮像対象被写体に照射される照明の分光分布に応じて変化する。すなわち、被写体光データE1の値は一定ではない。したがって、被写体光データE1の変化量が所定のしきい値以上である場合においても、線形画像演算行列Mの値は、変化した最新の被写体光データE1の値を反映した値となる。
(画像の表示)
次に、モニタ400に、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(以下、画像表示処理ともいう)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、モニタ400に、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(以下、画像表示処理ともいう)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、12ビットで表される0〜4095の各々に対応付けて、各値を1/γc乗した値が規定されたカメラLUTが予め記憶されているとする。また、モニタLUT演算部213の記憶部213Mには、線形画像演算部212の処理の結果得られる三刺激値XYZをモニタ特性に応じて線形RGBに変換し、かつ、12ビットで表される0〜4095の各々に対応付けて、線形RGBの各値を1/γd乗した値となるように規定されたモニタLUTが予め記憶されているとする。
図3は、画像表示処理のフローチャートを示す図である。画像表示処理は、前述した線形画像演算行列算出処理とは独立して行なわれる処理である。図3を参照して、画像表示処理では、まず、ステップS211の処理が行なわれる。
ステップS211では、画像処理装置200のカメラLUT演算部211が、画像データgを受信したか否かを判定する。ステップS211において、YESならば、ステップS212に進む。一方、ステップS211において、NOならば、再度、ステップS211の処理が行なわれる。ここでは、画像データgを受信したとして、ステップS212に進む。
ステップS212では、カメラLUT演算処理が行なわれる。カメラLUT演算処理は、前述した、カメラ100の非線形な逆ガンマ特性に基づく画像データの特性を、線形特性に変換する処理である。カメラLUT演算処理では、カメラLUT演算部211が、画像データgに含まれる各画素のR,G,Bの値をそれぞれ1/γc乗することに相当する画像データgc(式(5)参照)を算出し、線形画像演算部212へ送信する。γcは、前述したように、カメラ100のガンマ値である。
具体的には、カメラLUT演算部211が、受信した画像データgに含まれる各画素のR,G,Bの値の各々に対応する値を、記憶部211Mに記憶されるカメラLUTを参照することによって、線形特性を有する画像データgcを取得し、画像データgcを線形画像演算部212へ送信する。そして、ステップS213に進む。
ステップS213では、線形画像演算処理が行なわれる。線形画像演算処理は、前述の被写体光データおよび被写体の分光反射率に基づいて、色を正確に再現するように、受信した画像データの色を補正する処理である。
線形画像演算処理では、線形画像演算部212が、受信した画像データgcと、記憶部212Mに記憶されている線形画像演算行列Mとを使用して、式(8)により、画像データg’を算出する。前述したように、記憶部212Mに記憶されている線形画像演算行列Mは、画像データgcを、カメラ100が撮像する撮像対象被写体の色を正確に再現する画像データg’に変換するための行列である。
したがって、算出された画像データg’は、カメラ100が撮像する撮像対象被写体の色を正確に再現する画像データである。そして、線形画像演算部212は、算出した画像データg’を、モニタLUT演算部213へ送信する。そして、ステップS214に進む。
ステップS214では、モニタLUT演算処理が行なわれる。モニタLUT演算処理は、線形特性を有する画像データg’を、モニタ400の特性に応じたデータに補正する処理である。モニタLUT演算処理では、モニタLUT演算部213が、画像データg’に含まれる各画素(三刺激値)X,Y,Zそれぞれの値を、モニタの特性に応じた線形RGBに変換(以下、XYZ−線形RGB変換と呼ぶ)し、1/γd乗することに相当する画像データgdを算出し、画像データgdを、モニタ400へ送信する。γdは、前述したように、モニタ400のガンマ値である。画像データg’を、モニタ400の特性に応じたデータに補正する処理を前述の式(5)に準じて以下の式(9)のように表す。
gd=Td(g’) ・・・(9)
式(5)と同様、演算を高速に処理するため、モニタLUT演算部213の記憶部213Mには、入力値g’に対して変換値gdを出力するテーブルが記憶されている。このようなテーブル参照による演算処理のことをTd()と表すことにする。
式(5)と同様、演算を高速に処理するため、モニタLUT演算部213の記憶部213Mには、入力値g’に対して変換値gdを出力するテーブルが記憶されている。このようなテーブル参照による演算処理のことをTd()と表すことにする。
具体的には、モニタLUT演算部213が、受信した画像データg’に含まれる各画素X,Y,Zの値を、記憶部213Mに記憶されるモニタLUTを参照することにより、XYZ−線形RGB変換し、モニタ400のガンマ特性に応じた画像データgdに変換し、モニタ400へ送信する。そして、ステップS215に進む。
ステップS215では、モニタ400が、受信した画像データgdを表示する。そして、再度、ステップS211の処理が行なわれる。
前述したように、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。そのため、ステップS212〜S215の処理も、1/30秒毎に行なわれる。
前述したように、被写体光データE1の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。ここで、被写体光データE1の変化量が所定のしきい値以上であるか否かの判定は、前述した被写体光判定値E1detと、前述した最新被写体光平均値E1ave’との差の絶対値が、所定値以上であるか否かの判定である。当該所定値は、前述したように、被写体光判定値E1detを算出する元となった被写体光データにより示される照明光と、最新被写体光平均値E1ave’を算出する元となった被写体光データにより示される照明光との違いが、人間の目で知覚できる程度の値である。
また、被写体光データE1の変化量が所定のしきい値以上である場合、すなわち、被写体光判定値E1detと、最新被写体光平均値E1ave’との差の絶対値が所定値以上である場合にのみ、画像処理装置200は、最新の被写体光データE1の値を反映した線形画像演算行列Mを、記憶部212Mに記憶させることになる。ここで、前述したように、被写体光データE1の値は、撮像対象被写体に照射される照明の分光分布に応じて変化する。すなわち、被写体光データE1の値は一定ではない。したがって、被写体光データE1の変化量が所定のしきい値以上である場合においても、線形画像演算行列Mの値は、変化した最新の被写体光データE1の値を反映した値となる。
したがって、本実施の形態においては、撮像対象被写体に照射される照明の被写体光データE1の変化量が所定のしきい値以上である場合においても、カメラ100が撮像する撮像対象被写体の色を正確に再現した動画像を、モニタ400に表示することができる。
以上により、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
<第2の実施の形態>
次に、照明スペクトル測定装置が複数ある場合の処理について説明する。これは、被写体とカメラ、モニタと利用者が別の場所に位置する場合、すなわち被写体光E1と観察光E2が異なる照明条件(E1≠E2)である場合に有効な実施の形態である。
次に、照明スペクトル測定装置が複数ある場合の処理について説明する。これは、被写体とカメラ、モニタと利用者が別の場所に位置する場合、すなわち被写体光E1と観察光E2が異なる照明条件(E1≠E2)である場合に有効な実施の形態である。
図4は、本実施の形態における画像処理システム1000Aの構成を示す図である。図4を参照して、画像処理システム1000Aは、図1の画像処理システム1000と比較して、画像処理装置200の代わりに画像処理装置200Aを含む点と、照明スペクトル測定装置300Aをさらに含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
画像処理装置200Aは、図1の画像処理装置200と比較して、さらに、照明スペクトル測定装置300Aとデータ通信可能な点が異なる。それ以外は、画像処理装置200と同様なので詳細な説明は繰り返さない。
照明スペクトル測定装置300Aは、照明スペクトル測定装置300と同様な機能を有する装置なので詳細な説明は繰り返さない。照明スペクトル測定装置300Aは、モニタ400を観察する利用者に照射される照明の分光放射照度を測定可能なように、利用者の近傍に配置される。利用者の近傍とは、照明スペクトル測定装置300Aが測定する照明光のスペクトルと、利用者の目が知覚する照明光のスペクトルとが等価となるような位置である。利用者がモニタ400を至近距離から観察する場合や、利用者およびモニタ400に照射される照明が一様で、複数の照明が混在しないような場合であれば、照明スペクトル測定装置300Aは、モニタ400の上部などに設置しても良い。照明スペクトル測定装置300Aは、画像処理装置200Aの制御部250とデータ通信可能である。
照明スペクトル測定装置300Aは、画像処理装置200Aからの要求に応じて、モニタ400を観察する利用者に照射される照明の分光放射照度を測定し、測定した分光放射照度を示す観察光データE2を、制御部250へ送信する。前述したように、照明スペクトル測定装置300Aは、モニタ400を観察する利用者の近傍に配置されるので、利用者の近傍の光が変化すると、観察光データE2の値も変化する。
前述した場合Aにおいて、観察光データE2は、401個のデータとなる。以下においては、観察光データE2は、一例として、401個の観察光データであるとする。なお、照明スペクトル測定装置300と、照明スペクトル測定装置300Aは、各々、異なる照明条件(分光分布)となる位置に配置されるとする。
(画像処理装置における演算処理)
次に、本実施の形態において、画像処理装置200Aにおいて行なわれる演算処理について説明する。
次に、本実施の形態において、画像処理装置200Aにおいて行なわれる演算処理について説明する。
まず、制御部250が行なう、線形画像演算行列Mを算出するための処理(以下、線形画像演算行列算出処理A)について説明する。ここで、照明スペクトル測定装置300は、第1の実施の形態と同様に、画像処理装置200Aからの要求に応じて、分光放射輝度データE1を、画像処理装置200Aへ送信するとする。また、照明スペクトル測定装置300Aは、画像処理装置200Aからの要求に応じて、観察光データE2を、制御部250へ送信するとする。
また、記憶部240には、カメラ100の分光感度Sのデータ、式(3)に示される自己相関行列Aのデータ、および、式(7)に示される等色関数hのデータが予め記憶されているとする。
なお、線形画像演算行列算出処理Aが行なわれるのと同時に、制御部250は、経過時間測定処理Aを実行する。経過時間測定処理Aは、他の処理とは独立して実行される処理である。経過時間測定処理Aでは、制御部250が、線形画像演算行列算出処理Aが開始されてからの経過時間を測定する。
図5は、線形画像演算行列算出処理Aのフローチャートを示す図である。図5において、図2の線形画像演算行列算出処理と同じステップ番号の処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。図5を参照して、線形画像演算行列算出処理Aでは、まず、ステップS111Aの処理が行なわれる。
ステップS111Aでは、所定時間(たとえば、1分)が経過したか否かが判定される。具体的には、制御部250が、経過時間測定処理Aにより測定されている経過時間が所定時間になったか否かを判定する。ここで、所定時間は、カメラ100が1フレーム(静止画像)を撮像する時間(1/30秒)より、十分に長い時間(たとえば、1分)であるとする。
ステップS111Aにおいて、YESならば、制御部250が、経過時間測定処理Aにより測定されている経過時間を“0”にして、ステップS112Aに進む。一方、ステップS111Aにおいて、NOならば、再度、ステップS111Aの処理が行なわれる。ここでは、経過時間測定処理Aにより測定されている経過時間が所定時間になったとして、制御部250が、経過時間測定処理Aにより測定されている経過時間を“0”にして、ステップS112Aに進む。この場合、経過時間測定処理Aは、ステップS111AでYESと判定されてからの経過時間を測定することになる。
ステップS112Aでは、制御部250が、照明スペクトル測定装置300に対し被写体光データE1を要求し、照明スペクトル測定装置300Aに対し観察光データE2を要求する。そして、制御部250は、照明スペクトル測定装置300から被写体光データE1を受信し、照明スペクトル測定装置300Aから観察光データE2を受信する。そして、ステップS113に進む。なお、受信した被写体光データE1および観察光データE2は、前述した分光放射照度であり、401行1列の行列である。
被写体光データE1および観察光データE2の各々は、401個のデータであるとする。そして、制御部250は、受信した観察光データE2を、記憶部240に記憶させる。なお、制御部250が、記憶部240に記憶させる観察光データE2は、所定個数までとする。当該所定個数は、一例として、10個とする。そして、ステップS112NAに進む。
ステップS112NAでは、観察光データE2の変化量が所定のしきい値以上であるか否かが判定される。ステップS112NAにおいて、YESならば、ステップS113に進む。一方、ステップS112NAにおいて、NOならば、再度、ステップS111Aの処理が行なわれる。
具体的には、まず、制御部250が、記憶部240に2個以上の観察光データE2が記憶されているか否かを判定する。記憶部240に2個以上の観察光データE2が記憶されていない場合(たとえば、受信した最新の1個の観察光データE2のみが記憶されている場合)、制御部250は、観察光データE2の変化量が所定のしきい値以上であると判定する。この場合、ステップS113に進む。すなわち、初めて、ステップS112NAの処理が行なわれる場合は、ステップS113に進む。
一方、記憶部240に2個以上の観察光データE2が記憶されている場合、制御部250は、以下の判定処理ABを行なう。以下においては、観察光データE2に含まれる401個の輝度データの平均値を、観察光平均値E2aveともいう。
判定処理ABでは、制御部250が、記憶部240に記憶されている2個以上の観察光データE2のうち、受信した最新の1個の観察光データE2を除いた観察光データE2の各々の観察光平均値E2aveを算出する。記憶部240に記憶されている観察光データE2が、例えば10個の場合、算出される観察光平均値E2aveは9個となる。また、制御部250は、受信した最新の観察光データE2から観察光平均値E2ave(以下、最新観察光平均値E2ave’ともいう)を算出する。
そして、制御部250は、さらに、算出したn個の観察光平均値E2のうち、最新観察光平均値E2ave’との差の絶対値が最も大きい観察光平均値E2aveを、観察光判定値E2detとする。なお、算出された観察光平均値E2aveが1個の場合、観察光判定値E2detは、1個の観察光平均値E2aveそのものの値となる。そして、制御部250は、観察光判定値E2detと、最新観察光平均値E2ave’との差の絶対値が、所定値以上であるか否かを判定する。当該所定値は、観察光判定値E2detを算出する元となった観察光データにより示される照明光と、最新観察光平均値E2ave’を算出する元となった観察光データにより示される照明光との違いが、人間の目で知覚できる程度の値とする。
観察光判定値E2detと、最新観察光平均値E2ave’との差の絶対値が、所定値以上である場合、制御部250は、観察光データE2の変化量が所定のしきい値以上であると判定する。この場合、ステップS113に進む。一方、観察光判定値E2detと、最新観察光平均値E2ave’との差の絶対値が、所定値以上でない場合、制御部250は、観察光データE2の変化量が所定のしきい値以上でないと判定する。この場合、再度、ステップS111Aの処理が行なわれる。
なお、観察光データE2の変化量の判定は、上記方法に限定されない。たとえば、前述した観察光平均値E2aveの代わりに、観察光データE2に含まれる401個のデータの合計値(積分値)を使用して判定してもよい。また、判定の対象とするデータは、観察光データ(分光放射照度)に限定されることなく、分光放射輝度のデータであってもよい。
ステップS113では、第1の実施の形態と同様にシステム行列Hが算出されるので詳細な説明は繰り返さない。この処理では、制御部250が、カメラ100の分光感度Sと、分光放射輝度E(被写体光データE1)とを使用して、式(4)により、システム行列Hを算出する。
ステップS114では、第1の実施の形態と同様に分光反射率推定行列Wが算出されるので詳細な説明は繰り返さない。この処理により、分光反射率推定行列Wが算出される。分光反射率推定行列Wは、システム行列Hを使用して算出される。システム行列Hおよび分光反射率推定行列Wは、被写体光データE1を使用して算出された値となる。そして、ステップS115Aに進む。
ステップS115Aでは、線形画像演算行列M’が算出される。具体的には、制御部250が、記憶部240に記憶されている等色関数hと、受信した最新の観察光データE2と、算出された分光反射率推定行列Wとを使用して、式(7)により、線形画像演算行列M’を算出する。分光反射率推定行列Wは、被写体光データE1を使用して算出された値なので、線形画像演算行列M’は、被写体光データE1および観察光データE2の値を反映した行列となる。
ここで、算出された線形画像演算行列M’は、照明スペクトル測定装置300Aから送信された最新の観察光データE2を使用して算出された値である。観察光データE2は、モニタ400を観察する利用者に照射される照明の分光放射照度のデータである。画像データgに基づく画像は、カメラ100が撮像する撮像対象被写体を表示する画像である。撮像対象被写体は、モニタ400を観察する利用者とは異なる照明条件(分光分布)となる位置にある。したがって、以下においては、上記条件における撮像対象被写体を、遠隔被写体ともいう。
したがって、線形画像演算行列M’は、画像データgcを、モニタ400を観察する利用者に照射される照明の分光分布および、遠隔被写体の分光反射率に基づき、遠隔被写体の色を正確に再現する画像データg’に変換するための行列である。すなわち、線形画像演算行列M’は、モニタ400を観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現するための行列である。また、線形画像演算行列M’は、モニタ400を観察する利用者に照射される照明の分光放射照度(分光分布)および被写体の分光反射率に基づいた画像データg’を算出するための変換行列(変換関数)である。
そして、ステップS116Aに進む。
ステップS116Aでは、制御部250が、算出した線形画像演算行列M’を、記憶部212Mに記憶させる。なお、記憶部212Mに線形画像演算行列M’が既に記憶されている場合は、算出した線形画像演算行列M’を、記憶部212Mに上書き記憶させる。すなわち、記憶部212Mに記憶されている線形画像演算行列M’を、最新の線形画像演算行列M’に更新する。そして、再度、ステップS111Aの処理が行なわれる。
ステップS116Aでは、制御部250が、算出した線形画像演算行列M’を、記憶部212Mに記憶させる。なお、記憶部212Mに線形画像演算行列M’が既に記憶されている場合は、算出した線形画像演算行列M’を、記憶部212Mに上書き記憶させる。すなわち、記憶部212Mに記憶されている線形画像演算行列M’を、最新の線形画像演算行列M’に更新する。そして、再度、ステップS111Aの処理が行なわれる。
以上の線形画像演算行列算出処理Aにより、制御部250は、観察光データE2の変化量が所定のしきい値以上でない場合、ステップS113、S114、S115Aの演算処理を行なわない。したがって、観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。
ここで、観察光データE2の変化量が所定のしきい値以上であるか否かの判定は、観察光データE2に基づく前述した観察光判定値E2detと、観察光データE2に基づく前述した最新観察光平均値E2ave’との差の絶対値が、所定値以上であるか否かの判定である。当該所定値は、前述したように、観察光判定値E2detを算出する元となった観察光データにより示される照明光と、最新観察光平均値E2ave’を算出する元となった観察光データにより示される照明光との違いが、人間の目で知覚できる程度の値である。
また、観察光データE2の変化量が所定のしきい値以上である場合、すなわち、観察光判定値E2detと、最新観察光平均値E2ave’との差の絶対値が所定値以上である場合にのみ、画像処理装置200は、被写体光データE1および観察光データE2の値を反映した線形画像演算行列M’を、記憶部212Mに記憶させることになる。ここで、被写体光データE1の値は、撮像対象被写体に照射される照明光に応じて変化する。また、観察光データE2の値は、モニタ400を観察する利用者に照射される照明光に応じて変化する。すなわち、被写体光データE1および観察光データE2の値は、同一条件で変化するとは限らない。したがって、線形画像演算行列M’の値は、被写体光データE1および観察光データE2の両方の変化を反映するか、どちらか一方の変化を反映させるかを切り替えられるように構成しても良い。
(画像の表示)
次に、本実施の形態において、モニタ400に、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(以下、画像表示処理Aともいう)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、本実施の形態において、モニタ400に、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(以下、画像表示処理Aともいう)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、12ビットで表される0〜4095の各々に対応付けて、各値を1/γc乗した値が規定されたカメラLUTが予め記憶されているとする。また、モニタLUT演算部213の記憶部213Mには、線形画像演算部212の処理の結果得られる三刺激値XYZをモニタ特性に応じて線形RGBに変換し、かつ、12ビットで表される0〜4095の各々に対応付けて、線形RGBの各値を1/γd乗した値となるように規定されたモニタLUTが予め記憶されているとする。
図6は、画像表示処理Aのフローチャートを示す図である。画像表示処理Aは、前述した線形画像演算行列算出処理Aとは独立して行なわれる処理である。図6において、図3の画像表示処理と同じステップ番号の処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
ステップS211では、第1の実施の形態で説明したのと同様な処理が行なわれるので詳細な説明は繰り返さない。ここでは、画像データgを受信したとして、ステップS212に進む。
ステップS212では、第1の実施の形態で説明したのと同様にカメラLUT演算処理が行なわれるので詳細な説明は繰り返さない。この処理により、線形特性を有する画像データgcが、線形画像演算部212へ送信される。そして、ステップS213Aに進む。
ステップS213Aでは、線形画像演算処理Aが行なわれる。線形画像演算処理Aは、受信した画像データを使用して、モニタ400を観察する利用者に照射される照明の分光分布(観察光)および遠隔被写体の分光反射率に基づき、遠隔被写体の色を正確に再現するよう補正する処理である。
線形画像演算処理Aでは、線形画像演算部212が、受信した画像データgcと、記憶部212Mに記憶されている線形画像演算行列M’とを使用して、式(8)により、画像データg’を算出する。前述したように、線形画像演算行列M’は、画像データgcを、モニタ400を観察する利用者に照射される照明の分光分布(観察光)および遠隔被写体の分光反射率に基づき、遠隔被写体の色を正確に再現する画像データg’に変換するための行列である。すなわち、線形画像演算行列M’は、モニタ400を観察する利用者に照射される照明の条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現するための行列である。また、線形画像演算行列M’は、モニタ400を観察する利用者に照射される観察光データおよび、遠隔被写体の分光反射率に基づいた画像データg’を算出するための変換行列(変換関数)である。
したがって、算出された画像データg’は、モニタ400を観察する利用者に照射される照明条件(観察光)下において遠隔被写体の色を正確に再現する画像データである。そして、線形画像演算部212は、算出した画像データg’を、モニタLUT演算部213へ送信する。そして、ステップS214に進む。
ステップS214では、第1の実施の形態で説明したのと同様にモニタLUT演算処理が行なわれるので詳細な説明は繰り返さない。この処理により、モニタ400のガンマ特性に応じた画像データgdが、モニタ400へ送信される。
ステップS215では、第1の実施の形態で説明したのと同様な処理が行なわれるので詳細な説明は繰り返さない。この処理により、モニタ400が、受信した画像データgdに基づく画像を表示する。そして、再度、ステップS211の処理が行なわれる。
前述したように、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200へ送信する。そのため、図6のステップS212〜S215の処理も、1/30秒毎に行なわれる。
前述したように、観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。ここで、観察光データE2の変化量が所定のしきい値以上であるか否かの判定は、前述した観察光判定値E2detと、前述した最新観察光平均値E2ave’との差の絶対値が、所定値以上であるか否かの判定である。当該所定値は、前述したように、観察光判定値E2detを算出する元となった観察光データにより示される照明光と、最新観察光平均値E2ave’を算出する元となった観察光データにより示される照明光との違いが、人間の目で知覚できる程度の値である。
また、観察光データE2の変化量が所定のしきい値以上である場合、すなわち、観察光判定値E2detと、最新観察光平均値E2ave’との差の絶対値が所定値以上である場合にのみ、画像処理装置200Aは、被写体光データE1および観察光データE2の値を反映した線形画像演算行列M’を、記憶部212Mに記憶させることになる。被写体光データE1の値は、撮像対象被写体に照射される照明光に応じて変化する。また、観察光データE2の値は、モニタ400を観察する利用者に照射される照明光に応じて変化する。すなわち、被写体光データE1および観察光データE2の値は、同一条件で変化するとは限らない。したがって、線形画像演算行列M’の値は、被写体光データE1および観察光データE2の両方の変化を反映するか、どちらか一方の変化を反映させるかを切り替えられるように構成しても良い。
したがって、本実施の形態においては、観察光データE2の変化量が所定のしきい値以上である場合においても、被写体光データE1および観察光データE2に基づいて、遠隔被写体の色を正確に再現した画像を、モニタ400に表示することができる。すなわち、モニタ400を観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400を観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。
以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
<第3の実施の形態>
図7は、本実施の形態における画像処理システム1000Bの構成を示す図である。図7を参照して、画像処理システム1000Bは、図1の画像処理システム1000と比較して、画像処理装置200の代わりに画像処理装置200Bを含む点と、モニタ400の代わりにモニタ400Nを含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
図7は、本実施の形態における画像処理システム1000Bの構成を示す図である。図7を参照して、画像処理システム1000Bは、図1の画像処理システム1000と比較して、画像処理装置200の代わりに画像処理装置200Bを含む点と、モニタ400の代わりにモニタ400Nを含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
画像処理装置200Bは、図1の画像処理装置200と比較して、さらに、モニタ400Nとデータ通信可能な点が異なる。それ以外は、画像処理装置200と同様なので詳細な説明は繰り返さない。
モニタ400Nは、図1のモニタ400と比較して、通信インタフェース(I/F)460を含む点が異なる。通信インタフェース460は、画像処理装置200Bとデータ通信するための機能を有し、代表的にRS232CやUSB(Universal Serial Bus)などの通信規格に準じたものを用いることができる。それ以外の構成および機能は、モニタ400と同様なので詳細な説明は繰り返さない。
通信インタフェース460は、画像処理装置200Bの制御部250とデータ通信可能であり、モニタ400Nの表示特性の変更、代表的にガンマ特性(ガンマ値γd)やダイナミックレンジの変更を画像処理装置200Bの制御部250へ送信する。すなわち、ガンマ特性を変更可能に構成されたモニタ400Nに対して、利用者がそのガンマ値を所望の値に変更された場合などに、変更後の値が通信インタフェース460から画像処理装置200Bの制御部250へ通知される。
もしくは、ダイナミックレンジ(輝度階調のレベル数)を変更可能に構成されたモニタ400Nに対して、利用者がそのダイナミックレンジを所望の値(たとえば、12ビットから16ビット)に変更した場合などに、変更後の値が通信インタフェース460から画像処理装置200Bの制御部250へ通知される。
画像処理装置200Bの制御部250は、通信インタフェース460から通知された表示特性の変更に応じて、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTを更新する。
具体的には、制御部250は、モニタ400Nのガンマ値γdの変更が通知されると、当該変更後のガンマ値γdを用いて、前述の線形RGBデータ(12ビットの場合には0〜4095)の各値を1/γd乗することに相当する変換値を順次算出することで、新たなモニタLUTを生成する。そして、制御部250は、記憶部213Mに記憶されているモニタLUTを最新のモニタLUTに更新する。
また、制御部250は、モニタ400Nのダイナミックレンジの変更が通知されると、線形画像演算部212に入力される画像データg’のデータ範囲(たとえば、12ビットであれば0〜4095)を、線形画像演算部212からモニタ400Nへ送信される画像データgdのデータ範囲(たとえば、16ビットであれば0〜65535)に適合するようにモニタLUTを更新する。具体的には、制御部250は、記憶部213Mに記憶されているモニタLUTの各値に、変更前と変更後とのダイナミックレンジの比(12ビットから16ビットへの変更であれば16倍)を乗じて、新たなモニタLUTを生成する。そして、制御部250は、記憶部213Mに記憶されているモニタLUTを最新のモニタLUTに更新する。
(画像処理装置における演算処理)
次に、本実施の形態において、画像処理装置200Bにおいて行なわれる演算処理について説明する。
次に、本実施の形態において、画像処理装置200Bにおいて行なわれる演算処理について説明する。
本実施の形態においては、制御部250が、線形画像演算行列Mを算出するための処理(線形画像演算行列算出処理)と、モニタ400Nの表示特性の変更に応答してモニタLUTを更新するための処理(以下、モニタLUT更新処理ともいう)とを実行する。なお、これらの処理は互いに実行されることが好ましい。なお、これらの処理のうち線形画像演算行列算出処理については、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
以下、モニタLUT更新処理について説明する。ここで、通信インタフェース460は、前述したように、利用者操作などによってモニタ400Nの表示特性が変更されたときに、変更後のガンマ特性(ガンマ値γd)またはダイナミックレンジを画像処理装置200Bの制御部250へ送信する。
図8は、モニタLUT更新処理のフローチャートを示す図である。図8を参照して、モニタLUT更新処理では、まず、ステップS311の処理が行なわれる。
ステップS311では、制御部250が、通信インタフェース460からモニタ400Nの表示特性の変更値(ガンマ値またはダイナミックレンジ)を受信したか否かを判定する。ステップS311において、YESならば、ステップS312に進む。一方、ステップS311において、NOならば、再度、ステップS311の処理が行なわれる。ここでは、モニタ400Nの表示特性の変更値を受信したとして、ステップS312に進む。
ステップS312では、受信した表示特性の変更値に応じて、新たなモニタLUTが生成される。具体的には、制御部250が、変更後のガンマ値またはダイナミックレンジに基づいて、モニタLUTを構成する各値を順次算出する。そして、ステップS313に進む。
ステップS313では、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTが更新される。具体的には、制御部250が、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTを、最新のモニタLUTに更新する。そして、再度、ステップS311の処理が行なわれる。
以上のモニタLUT更新処理により、画像処理装置200Bは、利用者がモニタ400Nの表示特性を変更する毎に、変更後の表示特性の値を反映したモニタLUTを、記憶部213Mに記憶させることになる。したがって、利用者がモニタ400Nの表示特性を変更した場合においても、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTを最新の状態に維持できる。
(画像の表示)
次に、本実施の形態において、モニタ400Nに、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Bへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、本実施の形態において、モニタ400Nに、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Bへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、12ビットで表される0〜4095の各々に対応付けて、各値を1/γc乗した値が規定されたカメラLUTが予め記憶されているとする。また、モニタLUT演算部213の記憶部213Mには、前述のモニタLUT更新処理によって最新の状態に維持されたモニタLUTが記憶されている。
本実施の形態における画像表示処理は、前述した線形画像演算行列算出処理とは独立して行なわれる処理である。また、本実施の形態における画像表示処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
したがって、本実施の形態においては、第1の実施の形態と同様、被写体光データE1の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、被写体光データE1の変化量が所定のしきい値以上である場合においても、カメラ100が撮像する撮像対象被写体の色を正確に再現した動画像を、モニタ400に表示することができる。すなわち、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がモニタ400Nの表示特性を変更した場合においても、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTを最新の状態に維持できる。すなわち、モニタ400Nの表示特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
<第4の実施の形態>
図9は、本実施の形態における画像処理システム1000Cの構成を示す図である。図9を参照して、画像処理システム1000Cは、図7の画像処理システム1000Bと比較して、画像処理装置200Bの代わりに画像処理装置200Cを含む点と、照明スペクトル測定装置300Aをさらに含む点が異なる。それ以外は、画像処理システム1000Bと同様なので詳細な説明は繰り返さない。
図9は、本実施の形態における画像処理システム1000Cの構成を示す図である。図9を参照して、画像処理システム1000Cは、図7の画像処理システム1000Bと比較して、画像処理装置200Bの代わりに画像処理装置200Cを含む点と、照明スペクトル測定装置300Aをさらに含む点が異なる。それ以外は、画像処理システム1000Bと同様なので詳細な説明は繰り返さない。
画像処理装置200Cは、図7の画像処理装置200Bと比較して、さらに、照明スペクトル測定装置300Aとデータ通信可能な点が異なる。それ以外は、画像処理装置200と同様なので詳細な説明は繰り返さない。また、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様なので詳細な説明は繰り返さない。
(画像処理装置における演算処理)
次に、本実施の形態において、画像処理装置200Cにおいて行なわれる演算処理について説明する。
次に、本実施の形態において、画像処理装置200Cにおいて行なわれる演算処理について説明する。
本実施の形態においては、制御部250が、線形画像演算行列M’を算出するための処理(線形画像演算行列算出処理A)と、モニタ400Nの表示特性の変更に応答してモニタLUTを更新するための処理(モニタLUT更新処理)とを実行する。これらの処理は互いに実行されることが好ましい。なお、これらの処理のうち線形画像演算行列算出処理Aについては、第2の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。また、モニタLUT更新処理については、第3の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
(画像の表示)
次に、本実施の形態において、モニタ400Nに、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Bへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、本実施の形態において、モニタ400Nに、カメラ100が撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Bへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、12ビットで表される0〜4095の各々に対応付けて、各値を1/γc乗した値が規定されたカメラLUTが予め記憶されているとする。また、モニタLUT演算部213の記憶部213Mには、前述のモニタLUT更新処理によって最新の状態に維持されたモニタLUTが記憶されている。
本実施の形態における画像表示処理は、前述した線形画像演算行列算出処理とは独立して行なわれる処理である。また、本実施の形態における画像表示処理は、第2の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
したがって、本実施の形態においては、第2の実施の形態と同様の効果を奏する。すなわち、観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、観察光データE2の変化量が所定のしきい値以上である場合においても、被写体光データE1および観察光データE2に基づいて、前述した遠隔被写体の色を正確に再現した画像を、モニタ400Nに表示することができる。すなわち、モニタ400Nを観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400Nを観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がモニタ400Nの表示特性を変更した場合においても、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTを最新の状態に維持できる。すなわち、モニタ400Nの表示特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
<第5の実施の形態>
図10は、本実施の形態における画像処理システム1000Dの構成を示す図である。図10を参照して、画像処理システム1000Dは、図1の画像処理システム1000と比較して、画像処理装置200の代わりに画像処理装置200Dを含む点と、カメラ100の代わりにカメラ100Nを含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
図10は、本実施の形態における画像処理システム1000Dの構成を示す図である。図10を参照して、画像処理システム1000Dは、図1の画像処理システム1000と比較して、画像処理装置200の代わりに画像処理装置200Dを含む点と、カメラ100の代わりにカメラ100Nを含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
画像処理装置200Dは、図1の画像処理装置200と比較して、さらに、カメラ100Nとデータ通信可能な点が異なる。それ以外は、画像処理装置200と同様なので詳細な説明は繰り返さない。
カメラ100Nは、図1のカメラ100と比較して、通信インタフェース160を含む点が異なる。通信インタフェース160は、画像処理装置200Dとデータ通信するための機能を有し、代表的にRS232CやUSBなどの通信規格に準じたものを用いることができる。それ以外の構成および機能は、カメラ100と同様なので詳細な説明は繰り返さない。
通信インタフェース160は、画像処理装置200Dの制御部250とデータ通信可能であり、カメラ100Nの撮像特性の変更、代表的にガンマ特性(ガンマ値γc)の変更を画像処理装置200Dの制御部250へ送信する。すなわち、ガンマ特性を変更可能に構成されたカメラ100Nに対して、利用者がそのガンマ値を所望の値に変更した場合などに、変更後の値が通信インタフェース160から画像処理装置200Dの制御部250へ通知される。
なお、利用者によるISO感度や絞りの調整、レンズ交換等によっても、カメラ100Nの撮像特性(ガンマ特性)は変化する。この場合、ISO感度調整を例にすれば、カメラ100Nは、たとえば、各受光感度(ISO感度)に対応付けてガンマ特性(ガンマ値γc)をテーブルとして予め記憶しており、利用者などによる受光感度の変更に応じて、対応するガンマ特性(ガンマ値γc)を通信インタフェース160を介して画像処理装置200Dへ出力する。
また、レンズ交換を例にすれば、カメラ100Nは、たとえば、各レンズを特定するためのレンズの型番に対応付けてガンマ特性(ガンマ値γc)をテーブルとして予め記憶しており、利用者などによるレンズ交換に応じて、交換されたレンズの型番に対応するガンマ特性(ガンマ値γc)を通信インタフェース160を介して画像処理装置200Dへ出力する。
画像処理装置200Dの制御部250は、通信インタフェース160から通知された表示特性の変更に応じて、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを更新する。
具体的には、制御部250は、カメラ100Nのガンマ値γcの変更が通知されると、当該変更後のガンマ値γcを用いて、カメラLUTの入力データ(12ビットの場合には0〜4095)の各値を1/γc乗することに相当する変換値を順次算出することで、新たなカメラLUTを生成する。そして、制御部250は、記憶部211Mに記憶されているカメラLUTを最新のカメラLUTに更新する。
(画像処理装置における演算処理)
次に、本実施の形態において、画像処理装置200Dにおいて行なわれる演算処理について説明する。
次に、本実施の形態において、画像処理装置200Dにおいて行なわれる演算処理について説明する。
本実施の形態においては、制御部250が、線形画像演算行列を算出するための処理(線形画像演算行列算出処理)と、カメラ100Nの撮像特性の変更に応答してカメラLUTを更新するための処理(カメラLUT更新処理)とを実行する。なお、これらの処理は互いに実行されることが好ましい。なお、これらの処理のうち線形画像演算行列算出処理については、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
以下、カメラLUT更新処理について説明する。ここで、通信インタフェース160は、前述したように、利用者操作などによってカメラ100Nの撮像特性が変更されたときに、変更後のガンマ特性(ガンマ値γc)を画像処理装置200Dの制御部250へ送信する。
図11は、カメラLUT更新処理のフローチャートを示す図である。図11を参照して、カメラLUT更新処理では、まず、ステップS411の処理が行なわれる。
ステップS411では、制御部250が、通信インタフェース160からカメラ100Nの撮像特性の変更値(ガンマ値)を受信したか否かを判定する。ステップS411において、YESならば、ステップS412に進む。一方、ステップS411において、NOならば、再度、ステップS411の処理が行なわれる。ここでは、カメラ100Nの表示特性の変更値を受信したとして、ステップS412に進む。
ステップS412では、受信した撮像特性の変更値に応じて、新たなカメラLUTが生成される。具体的には、制御部250が、変更後のガンマ値に基づいて、カメラLUTを構成する各値を順次算出する。そして、ステップS413に進む。
ステップS413では、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTが更新される。具体的には、制御部250が、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを、最新のカメラLUTに更新する。そして、再度、ステップS411の処理が行なわれる。
以上のカメラLUT更新処理により、画像処理装置200Dは、利用者がカメラ100Nの撮像特性を変更する毎に、変更後の撮像特性の値を反映したカメラLUTを、記憶部211Mに記憶させることになる。したがって、利用者がカメラ100Nの撮像特性を変更した場合においても、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを最新の状態に維持できる。
(画像の表示)
次に、本実施の形態において、モニタ400に、カメラ100Nが撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100Nは、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Dへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、本実施の形態において、モニタ400に、カメラ100Nが撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100Nは、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Dへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、前述のカメラLUT更新処理によって最新の状態に維持されたカメラLUTが記憶されている。また、モニタLUT演算部213の記憶部213Mには、線形画像演算部212の処理の結果得られる三刺激値XYZをモニタ特性に応じて線形RGBに変換し、かつ、12ビットで表される0〜4095の各々に対応付けて、線形RGBの各値を1/γd乗した値となるように規定されたモニタLUTが記憶されている。
本実施の形態における画像表示処理は、前述した線形画像演算行列算出処理とは独立して行なわれる処理である。また、本実施の形態における画像表示処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
したがって、本実施の形態においては、第1の実施の形態と同様、被写体光データE1の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、被写体光データE1の変化量が所定のしきい値以上である場合においても、カメラ100が撮像する撮像対象被写体の色を正確に再現した動画像を、モニタ400に表示することができる。すなわち、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がカメラ100Nの撮像特性を変更した場合においても、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100Nの撮像特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
(カメラの撮像特性の変更に係る第1の変形例)
前述したような通信インタフェース160から変更後のガンマ特性(ガンマ値γc)が画像処理装置200Dの制御部250へ送信される構成に代えて、制御部250がカメラの状態値に基づいてガンマ値γcを動的に変更してもよい。
前述したような通信インタフェース160から変更後のガンマ特性(ガンマ値γc)が画像処理装置200Dの制御部250へ送信される構成に代えて、制御部250がカメラの状態値に基づいてガンマ値γcを動的に変更してもよい。
一般的に、カメラの受光素子は温度依存特性を有しているので、本実施の形態の第1の変形例では、カメラの状態値として温度を取得して、カメラのガンマ値を補正(変更)する構成について例示する。なお、カメラの状態値は、ISO感度、絞り、レンズの型番等であってもよい。
図12は、本実施の形態の第1の変形例における画像処理システム1000DAの構成を示す図である。図12を参照して、画像処理システム1000DAは、図10の画像処理システム1000Dと比較して、カメラ100Nの代わりにカメラ100NAを含む点と、記憶部240にガンマ値補正テーブル242Aが記憶される点とが異なる。それ以外は、画像処理システム1000Dと同様なので詳細な説明は繰り返さない。
カメラ100NAは、図10のカメラ100Nと比較して、さらに、温度測定部170を含む点が異なる。それ以外は、カメラ100Nと同様なので詳細な説明は繰り返さない。温度測定部170は、カメラ100NAの内部もしくはカメラ100NAの近傍に配置されて温度を測定し、その測定結果をカメラ温度tcとして出力する。代表的に、温度測定部170は測温抵抗体や熱電対などからなる。
一方、記憶部240に格納されるガンマ値補正テーブル242Aは、カメラ温度tcに対応付けて複数のガンマ値γcを格納している。一例として、ガンマ値補正テーブル242Aには、カメラ温度tcの所定温度(たとえば、20℃)毎に、対応するガンマ値γcが規定される。なお、ガンマ値γcの温度依存性は、カメラ100NAを構成する撮像素子や画像処理回路などの種類に応じて定まるので、ガンマ値補正テーブル242Aはカメラ毎に予め実験的に求めることが好ましい。
画像処理装置200Dの制御部250は、通信インタフェース160を介してカメラ100NAからカメラ温度tcを受信し、受信したカメラ温度tcに応じて、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを更新する。
具体的には、制御部250は、カメラ100NAからカメラ温度tcを受信すると、記憶部240に格納されるガンマ値補正テーブル242Aを参照して、受信したカメラ温度tcに対応するガンマ値γcを取得する。そして、制御部250は、この取得したガンマ値γcを用いて、カメラLUTの入力データ(12ビットの場合には0〜4095)の各値を1/γc乗した値を順次算出することで、新たなカメラLUTを生成する。さらに、制御部250は、記憶部211Mに記憶されているカメラLUTを最新のカメラLUTに更新する。
本実施の形態の第1の変形例においては、制御部250が、上述のカメラLUT更新処理に代えて、カメラ100NAのカメラ温度tcに応じてカメラLUTを更新するための処理(カメラLUT更新処理A)を実行する。
以下、カメラLUT更新処理Aについて説明する。
図13は、カメラLUT更新処理Aのフローチャートを示す図である。図13を参照して、カメラLUT更新処理Aでは、まず、ステップS511の処理が行なわれる。
図13は、カメラLUT更新処理Aのフローチャートを示す図である。図13を参照して、カメラLUT更新処理Aでは、まず、ステップS511の処理が行なわれる。
ステップS511では、制御部250が、制御部250が、所定期間(たとえば、30秒)が経過したか否かを判定する。ステップS511において、YESならば、ステップS512に進む。一方、ステップS511において、NOならば、再度、ステップS511の処理が行なわれる。ここでは、所定期間(たとえば、30秒)が経過したとして、ステップS512に進む。
ステップS512では、制御部250が、カメラ100NAの通信インタフェース160からカメラ温度tcを受信する。そして、ステップS513に進む。
ステップS513では、記憶部240に格納されるガンマ値補正テーブル242Aを参照して、受信したカメラ温度tcに対応するガンマ値γcを取得する。そして、ステップS514に進む。
ステップS514では、取得したガンマ値γcに応じて、新たなカメラLUTが生成される。具体的には、制御部250が、取得したガンマ値γcに基づいて、カメラLUTを構成する各値を順次算出する。そして、ステップS515に進む。
ステップS515では、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTが更新される。具体的には、制御部250が、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを、最新のカメラLUTに更新する。そして、再度、ステップS511の処理が行なわれる。
また、本実施の形態の第1の変形例においては、カメラ100NAにおける温度環境の変化によって撮像特性が変化した場合においても、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100NAの撮像特性の変化に関わらず、正確な色再現できるという効果を奏する。
なお、上述の例では、カメラ温度tcに対応付けて複数のガンマ値γcをガンマ値補正テーブル242Aに格納する構成について説明したが、カメラ温度tcに対応付けてカメラLUTを構成するデータ群自体を格納してもよい。
なお、カメラの状態値を、ISO感度とする場合、記憶部240に、各ISO感度にガンマ特性(ガンマ値γc)を対応づけたテーブルを予め記憶させておく。そして、利用者がISO感度を変更することにより、変更後のISO感度が通信インタフェース160から画像処理装置200Dの制御部250へ通知される。制御部250は、受信したISO感度に対応するガンマ値γcを取得し、図13のステップS514、S515と同様な処理をすることにより、記憶部211Mに記憶されているカメラLUTを更新する。
また、カメラの状態値を、レンズの型番とする場合、記憶部240に、各レンズの型番に対応づけて、ガンマ特性(ガンマ値γc)をテーブルとして予め記憶させておく。そして、利用者がレンズ交換することにより、変更後のレンズの型番が通信インタフェース160から画像処理装置200Dの制御部250へ通知される。制御部250は、受信したレンズの型番に対応するガンマ値γcを取得し、図13のステップS514、S515と同様な処理をすることにより、記憶部211Mに記憶されているカメラLUTを更新する。
(カメラの撮像特性の変更に係る他の処理例2)
前述したように、線形画像演算行列算出処理または線形画像演算行列算出処理Aによれば、線形画像演算行列Mの算出過程においてカメラの分光感度Sが使用される。上述の実施の形態によれば、カメラの分光感度Sは予め記憶部240に記憶されている構成について例示したが、カメラの分光感度Sがカメラの撮像特性によって変化する場合には、この変化した後の分光感度Sを用いることが好ましい。
前述したように、線形画像演算行列算出処理または線形画像演算行列算出処理Aによれば、線形画像演算行列Mの算出過程においてカメラの分光感度Sが使用される。上述の実施の形態によれば、カメラの分光感度Sは予め記憶部240に記憶されている構成について例示したが、カメラの分光感度Sがカメラの撮像特性によって変化する場合には、この変化した後の分光感度Sを用いることが好ましい。
そこで、本実施の形態の第2の変形例では、カメラの分光感度Sを動的に変更する構成について例示する。
図14は、本実施の形態の第2の変形例における画像処理システム1000DBの構成を示す図である。図14を参照して、画像処理システム1000DBは、図10の画像処理システム1000Dと比較して、カメラ100Nの代わりにカメラ100NBを含む点が異なる。それ以外は、画像処理システム1000Dと同様なので詳細な説明は繰り返さない。
カメラ100NBは、図10のカメラ100Nと比較して、さらに、分光感度特性格納部180を含む点が異なる。それ以外は、カメラ100Nと同様なので詳細な説明は繰り返さない。分光感度特性格納部180は、カメラ100NBの撮像特性の変更に応じて複数の分光感度特性を格納する。カメラ100NBの撮像特性の代表例として、ズーム調整による倍率の値を変更可能である場合には、当該倍率の値の変更に応じて分光感度Sも変化する。そのため、分光感度特性格納部180は、各倍率の値に、各倍率の値で測定された分光感度Sを対応づけたテーブルを予め記憶している。そして、利用者などによるズーム調整に応じて、当該ズーム調整による倍率の値に対応する分光感度Sを通信インタフェース160を介して画像処理装置200Dへ出力する。
なお、カメラ100NBの撮像特性は、利用者によるレンズ交換、ISO感度調整等によっても変更される。レンズ交換を例にすると、分光感度特性格納部180は、各レンズの型番に、各型番のレンズを使用して測定された分光感度Sを対応づけたテーブルを予め記憶している。そして、利用者が、レンズ交換することにより、変更後のレンズの型番に対応する分光感度Sを通信インタフェース160を介して画像処理装置200Dへ出力する。
また、ISO感度調整を例にすると、分光感度特性格納部180は、各ISO感度に、各ISO感度で測定された分光感度Sを対応づけたテーブルを予め記憶している。そして、利用者が、ISO感度を変更することにより、変更後のISO感度に対応する分光感度Sを通信インタフェース160を介して画像処理装置200Dへ出力する。
画像処理装置200Dの制御部250は、通信インタフェース160を介してカメラ100NBから分光感度Sを受信すると、受信した分光感度Sを用いて線形画像演算行列を算出するための処理(以下、線形画像演算行列算出処理B)を実行する。
以下、線形画像演算行列算出処理Bについて説明する。
図15は、線形画像演算行列算出処理Bのフローチャートを示す図である。図15において、図2の線形画像演算行列算出処理と同じステップ番号の処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。図15を参照して、線形画像演算行列算出処理Bでは、まず、ステップS611の処理が行なわれる。
図15は、線形画像演算行列算出処理Bのフローチャートを示す図である。図15において、図2の線形画像演算行列算出処理と同じステップ番号の処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。図15を参照して、線形画像演算行列算出処理Bでは、まず、ステップS611の処理が行なわれる。
ステップS611では、画像処理装置200NBの制御部250が、カメラ100NBから変更された分光感度Sを受信したか否かを判定する。ステップS611において、YESならば、ステップS612に進む。一方、ステップS611において、NOならば、再度、ステップS611の処理が行なわれる。ここでは、変更後の分光感度Sを受信したとして、ステップS612に進む。
ステップS612では、制御部250が、受信した分光感度Sを、記憶部240に記憶させる。なお、記憶部240に分光感度Sが既に記憶されている場合は、受信した分光感度Sを、記憶部240に上書き記憶させる。すなわち、記憶部240に記憶されている分光感度Sを、最新の分光感度Sに更新する。そして、ステップS112に進む。
ステップS112では、第1の実施の形態と同様な処理が行なわれるので詳細な説明は繰り返さない。この処理により、被写体光データE1が受信される。そして、ステップS113に進む。
ステップS113では、第1の実施の形態と同様にシステム行列Hが算出されるので詳細な説明は繰り返さない。この処理では、制御部250が、カメラ100NBから受信した変更後の分光感度Sと、分光放射照度E(被写体光データE1)とを使用して、式(4)により、システム行列Hを算出する。
ステップS114では、第1の実施の形態と同様に分光反射率推定行列Wが算出されるので詳細な説明は繰り返さない。そして、ステップS115に進む。
ステップS115では、第1の実施の形態と同様に線形画像演算行列Mが算出されるので詳細な説明は繰り返さない。そして、ステップS116に進む。
ステップS116では、第1の実施の形態と同様に、算出した線形画像演算行列Mが記憶部212Mに記憶される。そして、再度、ステップS611の処理が行なわれる。
以上の線形画像演算行列算出処理Bにより、画像処理装置200Dは、利用者がカメラ100NBの撮像特性(受光感度)を変更する毎に、変更後の撮像特性の値を反映した線形画像演算行列Mを、線形画像演算部212の記憶部212Mに記憶させることになる。したがって、本実施の形態の第2の変形例においては、カメラ100NBの撮像特性が変更された場合においても、カメラ100NBが撮像する撮像対象被写体の色を正確に再現した画像をモニタ400に表示することができる。
なお、分光感度特性格納部180に記憶されている、ある値と、分光感度Sとが対応付けられた前述したテーブルは、記憶部240に記憶されていてもよい。この場合、カメラ100NBから、ズーム調整による倍率の値、レンズの型番、ISO感度等が、画像処理装置200Dへ送信される。そして、制御部250は、受信した値(たとえば、倍率の値)に対応する分光感度Sを、記憶部240から取得してもよい。
<第6の実施の形態>
図16は、本実施の形態における画像処理システム1000Eの構成を示す図である。図16を参照して、画像処理システム1000Eは、図10の画像処理システム1000Dと比較して、画像処理装置200Dの代わりに画像処理装置200Eを含む点と、照明スペクトル測定装置300Aをさらに含む点が異なる。それ以外は、画像処理システム1000Eと同様なので詳細な説明は繰り返さない。
図16は、本実施の形態における画像処理システム1000Eの構成を示す図である。図16を参照して、画像処理システム1000Eは、図10の画像処理システム1000Dと比較して、画像処理装置200Dの代わりに画像処理装置200Eを含む点と、照明スペクトル測定装置300Aをさらに含む点が異なる。それ以外は、画像処理システム1000Eと同様なので詳細な説明は繰り返さない。
画像処理装置200Eは、図10の画像処理装置200Dと比較して、さらに、照明スペクトル測定装置300Aとデータ通信可能な点が異なる。それ以外は、画像処理装置200Dと同様なので詳細な説明は繰り返さない。また、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様なので詳細な説明は繰り返さない。
(画像処理装置における演算処理)
次に、本実施の形態において、画像処理装置200Eにおいて行なわれる演算処理について説明する。
次に、本実施の形態において、画像処理装置200Eにおいて行なわれる演算処理について説明する。
本実施の形態においては、制御部250が、線形画像演算行列を算出するための処理(線形画像演算行列算出処理A)と、カメラ100Nの表示特性の変更に応答してカメラLUTを更新するための処理(カメラLUT更新処理)とを実行する。これらの処理は互いに実行されることが好ましい。なお、これらの処理のうち線形画像演算行列算出処理Aについては、第2の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。また、カメラLUT更新処理については、第5の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
(画像の表示)
次に、本実施の形態において、モニタ400に、カメラ100Nが撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100Nは、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Eへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、本実施の形態において、モニタ400に、カメラ100Nが撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100Nは、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Eへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、前述のカメラLUT更新処理によって最新の状態に維持されたカメラLUTが記憶されている。また、モニタLUT演算部213の記憶部213Mには、線形画像演算部212の処理の結果得られる三刺激値XYZをモニタ特性に応じて線形RGBに変換し、かつ、12ビットで表される0〜4095の各々に対応付けて、線形RGBの各値を1/γd乗した値となるように規定されたモニタLUTが記憶されている。
本実施の形態における画像表示処理は、前述した線形画像演算行列算出処理Aとは独立して行なわれる処理である。また、本実施の形態における画像表示処理は、第2の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
したがって、本実施の形態においては、第2の実施の形態と同様の効果を奏する。すなわち、観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、観察光データE2の変化量が所定のしきい値以上である場合においても、被写体光データE1および観察光データE2に基づいて、前述した遠隔被写体の色を正確に再現した画像を、モニタ400に表示することができる。
すなわち、モニタ400を観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400を観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がカメラ100Nの撮像特性を変更した場合においても、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100Nの撮像特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
なお、カメラLUT更新処理に代えて、前述した第5の実施の形態の第1の変形例において説明したカメラLUT更新処理Aを用いてもよい。また、線形画像演算行列算出処理Aに加えて、第5の実施の形態の第2の変形例において説明した線形画像演算行列算出処理Bを並列的に実行するようにしてもよい。
<第7の実施の形態>
図17は、本実施の形態における画像処理システム1000Fの構成を示す図である。図17を参照して、画像処理システム1000Fは、図16の画像処理システム1000Eと比較して、画像処理装置200Eの代わりに画像処理装置200Fを含む点と、カメラ100の代わりにカメラ100NCを含む点と、モニタ400の代わりにモニタ400Nを含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
図17は、本実施の形態における画像処理システム1000Fの構成を示す図である。図17を参照して、画像処理システム1000Fは、図16の画像処理システム1000Eと比較して、画像処理装置200Eの代わりに画像処理装置200Fを含む点と、カメラ100の代わりにカメラ100NCを含む点と、モニタ400の代わりにモニタ400Nを含む点が異なる。それ以外は、画像処理システム1000と同様なので詳細な説明は繰り返さない。
画像処理装置200Fは、画像処理装置200Eと比較して、さらに、モニタ400Nとデータ通信可能な点が異なる。それ以外は、画像処理装置200Eと同様なので詳細な説明は繰り返さない。カメラ100NCは、図14のカメラ100NBと比較して、ガンマ値γcを、さらに、画像処理装置200Fへ送信する点が異なる。それ以外は、カメラ100NBと同様なので詳細な説明は繰り返さない。ガンマ値γcを送信する処理は、第5の実施の形態で説明したので詳細な説明は繰り返さない。
(画像処理装置における演算処理)
次に、本実施の形態において、画像処理装置200Fにおいて行なわれる演算処理について説明する。
次に、本実施の形態において、画像処理装置200Fにおいて行なわれる演算処理について説明する。
本実施の形態においては、制御部250が、線形画像演算行列を算出するための処理(線形画像演算行列算出処理A)と、カメラ100NCの表示特性の変更に応答してカメラLUTを更新するための処理(カメラLUT更新処理)と、モニタ400Nの表示特性の変更に応答してモニタLUTを更新するための処理(モニタLUT更新処理)とを実行する。これらの処理は互いに実行されることが好ましい。なお、これらの処理のうち線形画像演算行列算出処理Aについては、第2の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。また、カメラLUT更新処理については、第5の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。また、モニタLUT更新処理については、第3の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
(画像の表示)
次に、本実施の形態において、モニタ400Nに、カメラ100Nが撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100Nは、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Fへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
次に、本実施の形態において、モニタ400Nに、カメラ100Nが撮像することにより得られた画像データgに基づく画像を表示するための処理(画像表示処理)について説明する。ここで、カメラ100Nは、1/30秒毎に、1フレームとしての画像データgを、画像処理装置200Fへ送信する。前述したように、画像データgは、画像データgに含まれる複数の画素毎に、R,G,Bの各々の値を含むデータである。この場合、画像データgは、各画素に対応する3行1列の行列を含む。
ここで、カメラLUT演算部211の記憶部211Mには、前述のカメラLUT更新処理によって最新の状態に維持されたカメラLUTが記憶されている。また、モニタLUT演算部213の記憶部213Mには、前述のモニタLUT更新処理によって最新の状態に維持されたモニタLUTが記憶されている。
本実施の形態における画像表示処理は、前述した線形画像演算行列算出処理Aとは独立して行なわれる処理である。また、本実施の形態における画像表示処理は、第2の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
したがって、本実施の形態においては、第2の実施の形態と同様の効果を奏する。すなわち、観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、観察光データE2の変化量が所定のしきい値以上である場合においても、被写体光データE1および観察光データE2に基づいて、前述した遠隔被写体の色を正確に再現した画像を、モニタ400Nに表示することができる。すなわち、モニタ400Nを観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400Nを観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がカメラ100NCの撮像特性を変更した場合においても、カメラLUT演算部211の記憶部211Mに記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100NCの撮像特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
また、本実施の形態においては、利用者がモニタ400Nの表示特性を変更した場合においても、モニタLUT演算部213の記憶部213Mに記憶されているモニタLUTを最新の状態に維持できる。すなわち、モニタ400Nの表示特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
なお、カメラLUT更新処理に代えて、前述した第5の実施の形態の第1の変形例において説明したカメラLUT更新処理Aを用いてもよい。また、線形画像演算行列算出処理Aに加えて、第5の実施の形態の第2の変形例において説明した線形画像演算行列算出処理Bを並列的に実行するようにしてもよい。
<第8の実施の形態>
第1〜第7の実施の形態に記載の処理は、PC(Personal Computer)等のコンピュータにおいても実施可能である。
第1〜第7の実施の形態に記載の処理は、PC(Personal Computer)等のコンピュータにおいても実施可能である。
(コンピュータの構成)
次に、コンピュータの構成について説明する。
次に、コンピュータの構成について説明する。
図18は、コンピュータ500の内部構成を示したブロック図である。なお、図18には、説明のために、記録媒体555も示している。記録媒体555には、後述するプログラム180が記録されている。すなわち、プログラム180は、媒体等に記録されてプログラム製品として流通される。また、記録媒体555もプログラム製品として流通される。
図18を参照して、コンピュータ500には、前述したモニタ400が接続される。コンピュータ500は、制御部510と、一時記憶部522と、記憶部520とを備える。
記憶部520は、データを不揮発的に記憶する機能を有する。記憶部520は、制御部510によってデータアクセスされる。記憶部520は、大容量のデータを記憶可能なハードディスクである。なお、記憶部520は、ハードディスクに限定されることなく、電源を供給されなくてもデータを不揮発的に保持可能な媒体(たとえば、フラッシュメモリ)であってもよい。記憶部520には、プログラム180、その他の各種データ等が記憶されている。
制御部510は、記憶部520に記憶されたプログラム180に従って、コンピュータ500内の各部に対する各種処理や、演算処理等を行なう機能を有する。制御部510は、CPU(Central Processing Unit)である。なお、制御部510は、CPUに限定されることなく、演算機能を有するその他の回路であってもよい。
一時記憶部522は、制御部510によってデータアクセスされ、一時的にデータを記憶するワークメモリとして使用される。一時記憶部522は、DRAM(Dynamic Random Access Memory)である。なお、一時記憶部522は、DRAMに限定されることなく、データを揮発的に記憶可能なその他の回路であってもよい。
コンピュータ500は、さらに、VDP532と、VRAM(Video Random Access Memory)536とを備える。
VRAM536は、画像データを一時的に記憶する機能を有する。
制御部510は、記憶部520に記憶されたプログラム180に従って、VDP532に対し、描画指示を出す。描画指示とは、画像を生成し、当該画像をモニタ400に表示させる指示である。
制御部510は、記憶部520に記憶されたプログラム180に従って、VDP532に対し、描画指示を出す。描画指示とは、画像を生成し、当該画像をモニタ400に表示させる指示である。
VDP532はモニタ400と接続されている。VDP532は、制御部510からの描画指示に応じて、記憶部520内の後述するプログラム180からフォントデータ、図形データ等を読出し、VRAM536を利用して画像を生成する。そして、VDP532は、VRAM536に記憶された画像データを読出し、モニタ400に、当該画像データに基づく画像を表示させる。すなわち、制御部510は、VDP532を利用して、画像を生成し、当該画像をモニタ400に表示させる。
コンピュータ500は、さらに、入力部540と、記録媒体アクセス部550とを備える。
入力部540には、マウス542と、キーボード544とが接続されている。利用者は、マウス542またはキーボード544を利用して、コンピュータ500に指示を与える。マウス542またはキーボード544からの入力指示は、入力部540を介して制御部510へ送信される。制御部510は、入力部540からの入力指示に基づいて所定の処理を行なう。
記録媒体アクセス部550は、記録媒体555が、図示しない記録媒体挿入部からコンピュータ500に挿入(装着)されると、記録媒体555にデータアクセス可能となる。これにより、記録媒体アクセス部550は、プログラム180が記録された記録媒体555から、プログラム180を読出すことが可能となる。
記録媒体555に記憶されているプログラム180は、制御部510のインストール処理により、記録媒体アクセス部550により読み出され、制御部510が、プログラム180を、記憶部520に記憶させる。このインストール処理用プログラムは、予め、記憶部520に格納されており、インストール処理は、制御部510が、インストール処理用プログラムに基づいて行なう。
なお、記憶部520には、プログラム180がインストールされていなくてもよい。この場合、制御部510は、記録媒体アクセス部550を介して、記録媒体555に記憶されたプログラム180を読み出して、プログラム180に基づいた所定の処理を行なう。
記録媒体555は、CD−ROM(Compact Disk Read Only Memory)である。なお、記録媒体555は、CD−ROMに限定されることなく、データを不揮発的に記録可能なその他の媒体であってもよい。その他の媒体は、たとえば、DVD−ROM(Digital Versatile Disk Read Only Memory)、DVD−R(Digital Versatile Disk Recordable)、SD(Secure Digital)メモリーカード、フレキシブルディスク等である。
コンピュータ500は、さらに、通信部560と、通信部562とを備える。
通信部560は、制御部510とデータの送受信を行なう。また、通信部560は、カメラ100、照明スペクトル測定装置300およびモニタ400の各々と、有線または無線で、データ通信を行なう機能を有する。
通信部560は、制御部510とデータの送受信を行なう。また、通信部560は、カメラ100、照明スペクトル測定装置300およびモニタ400の各々と、有線または無線で、データ通信を行なう機能を有する。
通信部562は、制御部510と、データの送受信を行なう。通信部562は、無線LANの規格である、IEEE802.11gに基づく無線技術を利用してデータ通信を行なう機能を有する。なお、無線技術は、IEEE802.11gに基づく技術に限定されることはなく、その他の無線技術であってもよい。したがって、通信部562は、無線により、ネットワーク70とデータ通信を行なうことができる。ネットワーク70は、インターネットなどの外部のネットワークである。
また、通信部562は、さらに、イーサネット(登録商標)を利用した通信用インターフェースの機能を有する。したがって、通信部562は、たとえば、LANケーブルを介して、ネットワーク70とデータ通信を行なうことができる。
コンピュータ500は、制御部510および通信部562の処理により、ネットワーク70からプログラムのダウンロード処理を行ない、記憶部520に格納することもできる。この場合、当該ダウンロードしたプログラムは、プログラム180である。
制御部510は、ネットワーク70からダウンロードしたプログラム(プログラム180)に従って、所定の処理を行なう。このダウンロード用プログラムは、予め、記憶部520に格納されており、ダウンロード処理は、制御部510が、ダウンロード用プログラムに基づいて行なう。
(コンピュータによる処理)
次に、第1の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。
次に、第1の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。
ここで、照明スペクトル測定装置300は、コンピュータ500からの要求に応じて、被写体光データE1を、コンピュータ500へ送信するとする。また、記憶部520には、カメラ100の分光感度Sのデータ、式(3)に示される自己相関行列Aのデータ、および、式(7)に示される等色関数hのデータが予め記憶されているとする。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図2の線形画像演算行列算出処理において、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(以下、線形画像演算行列算出処理Pともいう)を行なう。この処理により、所定時間毎に、線形画像演算行列Mが算出され、算出された線形画像演算行列Mが記憶部520に記憶される。
ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、コンピュータ500へ送信するとする。また、記憶部520には、12ビットで表される0〜4095の各々に対して、1/γc乗した複数の値が規定されたカメラLUTが予め記憶されているとする。また、記憶部520には、線形画像演算部212の処理の結果得られる三刺激値XYZをモニタ特性に応じて線形RGBに変換し、かつ、12ビットで表される0〜4095の各々に対応付けて、線形RGBの各値を1/γd乗した値となるように規定されたモニタLUTが予め記憶されているとする。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図3の画像表示処理において、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(以下、画像表示処理Pともいう)を行なう。
なお、線形画像演算行列算出処理Pと、画像表示処理Pとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第1の実施の形態で得られる効果を奏することができる。すなわち、被写体光データE1の変化量が所定のしきい値以上である場合においても、カメラ100が撮像する撮像対象被写体の色を正確に再現した動画像を、モニタ400に表示することができる。
以上により、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
(コンピュータによる処理の他の例1)
次に、第2の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300Aとデータ通信可能であるとする。
次に、第2の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300Aとデータ通信可能であるとする。
ここで、照明スペクトル測定装置300Aは、モニタ400を観察する利用者に照射される照明の分光分布(分光放射輝度もしくは分光放射照度)を測定可能なように、利用者の近傍に配置される。利用者の近傍とは、照明スペクトル測定装置300Aが測定する照明光のスペクトルと、利用者の目が知覚する照明光のスペクトルとが等価となるような位置である。なお、照明スペクトル測定装置300と、照明スペクトル測定装置300Aは、各々、異なる照明条件(分光分布)となる位置に配置されるとする。
ここで、照明スペクトル測定装置300は、コンピュータ500からの要求に応じて、所定時間(たとえば、1秒)毎に、被写体光データE1を、コンピュータ500へ送信するとする。また、照明スペクトル測定装置300Aは、所定時間(たとえば、1秒)毎に、観察光データE2を、制御部250へ送信するとする。また、記憶部520には、カメラ100の分光感度Sのデータ、式(3)に示される自己相関行列Aのデータ、および、式(7)に示される等色関数hのデータが予め記憶されているとする。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図5の線形画像演算行列算出処理Aにおいて、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(以下、線形画像演算行列算出処理PAともいう)を行なう。この処理により、所定時間毎に、線形画像演算行列M’が算出され、算出された線形画像演算行列M’が記憶部520に記憶される。
ここで、カメラ100は、1/30秒毎に、1フレームとしての画像データgを、コンピュータ500へ送信するとする。また、記憶部520には、12ビットで表される0〜4095の各々に対して、1/γc乗した複数の値からなるカメラLUTが予め記憶されているとする。また、記憶部520には、線形画像演算部212の処理の結果得られる三刺激値XYZをモニタ特性に応じて線形RGBに変換し、かつ、12ビットで表される0〜4095の各々に対応付けて、線形RGBの各値を1/γd乗した値となるように規定されたモニタLUTが予め記憶されているとする。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図6の画像表示処理Aにおいて、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(以下、画像表示処理PAともいう)を行なう。
なお、線形画像演算行列算出処理PAと、画像表示処理PAとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第2の実施の形態で得られる効果を奏することができる。すなわち、モニタ400を観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400を観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。
以上により、本実施の形態においても、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
(コンピュータによる処理の他の例2)
次に、第3の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、モニタ400Nとデータ通信可能であるとする。ここで、モニタ400Nは、図7に示すモニタ400Nと同様なので詳細な説明は繰り返さない。
次に、第3の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、モニタ400Nとデータ通信可能であるとする。ここで、モニタ400Nは、図7に示すモニタ400Nと同様なので詳細な説明は繰り返さない。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図2の線形画像演算行列算出処理において、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(線形画像演算行列算出処理P)を行なう。この処理により、所定時間毎に、線形画像演算行列Mが算出され、算出された線形画像演算行列Mが記憶部520に記憶される。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、図8のモニタLUT更新処理において、制御部250、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、制御部510および記憶部520に置き換えた処理(以下、モニタLUT更新処理Pともいう)を行なう。この処理により、利用者がモニタ400Nの表示特性を変更する毎に、変更後の表示特性の値を反映したモニタLUTが記憶部520に記憶される。
さらに、コンピュータ500の制御部510は、プログラム180を実行することにより、図3の画像表示処理において、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(画像表示処理P)を行なう。
なお、線形画像演算行列算出処理Pと、モニタLUT更新処理Pと、画像表示処理Pとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第3の実施の形態で得られる効果を奏することができる。被写体光データE1の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、被写体光データE1の変化量が所定のしきい値以上である場合においても、カメラ100が撮像する撮像対象被写体の色を正確に再現した動画像を、モニタ400に表示することができる。すなわち、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、利用者がモニタ400Nの表示特性を変更した場合においても、記憶部520に記憶されているモニタLUTを最新の状態に維持できる。すなわち、モニタ400Nの表示特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
(コンピュータによる処理の他の例3)
次に、第4の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300Aおよびモニタ400Nとデータ通信可能であるとする。ここで、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様であり、モニタ400Nは、図7に示すモニタ400Nと同様なので詳細な説明は繰り返さない。
次に、第4の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300Aおよびモニタ400Nとデータ通信可能であるとする。ここで、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様であり、モニタ400Nは、図7に示すモニタ400Nと同様なので詳細な説明は繰り返さない。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図5の線形画像演算行列算出処理Aにおいて、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(線形画像演算行列算出処理PA)を行なう。この処理により、所定時間毎に、線形画像演算行列M’が算出され、算出された線形画像演算行列M’が記憶部520に記憶される。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、図8のモニタLUT更新処理において、制御部250、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、制御部510および記憶部520に置き換えた処理(モニタLUT更新処理P)を行なう。この処理により、利用者がモニタ400Nの表示特性を変更する毎に、変更後の表示特性の値を反映したモニタLUTが記憶部520に記憶される。
さらに、コンピュータ500の制御部510は、プログラム180を実行することにより、図6の画像表示処理Aにおいて、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(画像表示処理PA)を行なう。
なお、線形画像演算行列算出処理Pと、モニタLUT更新処理Pと、画像表示処理PAとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第4の実施の形態で得られる効果を奏することができる。すなわち、モニタ400を観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400を観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、利用者がモニタ400Nの表示特性を変更した場合においても、記憶部520に記憶されているモニタLUTを最新の状態に維持できる。すなわち、モニタ400Nの表示特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
(コンピュータによる処理の他の例4)
次に、第5の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、カメラ100Nとデータ通信可能であるとする。また、カメラ100Nは、図10に示すカメラ100Nと同様なので詳細な説明は繰り返さない。
次に、第5の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、カメラ100Nとデータ通信可能であるとする。また、カメラ100Nは、図10に示すカメラ100Nと同様なので詳細な説明は繰り返さない。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図2の線形画像演算行列算出処理において、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(線形画像演算行列算出処理P)を行なう。この処理により、所定時間毎に、線形画像演算行列Mが算出され、算出された線形画像演算行列Mが記憶部520に記憶される。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、図11のカメラLUT更新処理において、制御部250、カメラLUT演算部211および記憶部211Mを、それぞれ、制御部510、制御部510および記憶部520に置き換えた処理(以下、カメラLUT更新処理Pともいう)を行なう。この処理により、利用者がカメラ100Nの撮像特性を変更する毎に、変更後の撮像特性の値を反映したモニタLUTが記憶部520に記憶される。
さらに、コンピュータ500の制御部510は、プログラム180を実行することにより、図3の画像表示処理において、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(画像表示処理P)を行なう。
なお、線形画像演算行列算出処理Pと、カメラLUT更新処理Pと、画像表示処理Pとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第5の実施の形態で得られる効果を奏することができる。すなわち、被写体光データE1の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、被写体光データE1の変化量が所定のしきい値以上である場合においても、カメラ100が撮像する撮像対象被写体の色を正確に再現した動画像を、モニタ400に表示することができる。すなわち、演算処理を効率よく削減しつつ、被写体に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がカメラ100Nの表示特性を変更した場合においても、記憶部520に記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100Nの撮像特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、第5の実施の形態の第1および第2の変形例で説明した処理を行なうこともできる。
(コンピュータによる処理の他の例5)
次に、第6の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300Aおよびカメラ100Nとデータ通信可能であるとする。ここで、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様であり、カメラ100Nは、図10に示すカメラ100Nと同様なので詳細な説明は繰り返さない。
次に、第6の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300Aおよびカメラ100Nとデータ通信可能であるとする。ここで、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様であり、カメラ100Nは、図10に示すカメラ100Nと同様なので詳細な説明は繰り返さない。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図5の線形画像演算行列算出処理Aにおいて、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(線形画像演算行列算出処理PA)を行なう。この処理により、所定時間毎に、線形画像演算行列M’が算出され、算出された線形画像演算行列M’が記憶部520に記憶される。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、図11のカメラLUT更新処理において、制御部250、カメラLUT演算部211および記憶部211Mを、それぞれ、制御部510、制御部510および記憶部520に置き換えた処理(カメラLUT更新処理P)を行なう。この処理により、利用者がカメラ100Nの撮像特性を変更する毎に、変更後の撮像特性の値を反映したモニタLUTが記憶部520に記憶される。
さらに、コンピュータ500の制御部510は、プログラム180を実行することにより、図3の画像表示処理において、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(画像表示処理P)を行なう。
なお、線形画像演算行列算出処理PAと、カメラLUT更新処理Pと、画像表示処理Pとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第6の実施の形態で得られる効果を奏することができる。観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、観察光データE2の変化量が所定のしきい値以上である場合においても、被写体光データE1および観察光データE2に基づいて、前述した遠隔被写体の色を正確に再現した画像を、モニタ400に表示することができる。
すなわち、モニタ400を観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400を観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がカメラ100Nの表示特性を変更した場合においても、記憶部520に記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100Nの撮像特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
(コンピュータによる処理の他の例6)
次に、第7の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300A、カメラ100NCおよびモニタ400Nとデータ通信可能であるとする。ここで、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様であり、カメラ100NCは、図17に示すカメラ100NCと同様であり、モニタ400Nは、図17に示すモニタ400Nと同様なので詳細な説明は繰り返さない。
次に、第7の実施の形態で説明した処理を、コンピュータ500で行なう場合の処理について説明する。ここで、コンピュータ500は、さらに、照明スペクトル測定装置300A、カメラ100NCおよびモニタ400Nとデータ通信可能であるとする。ここで、照明スペクトル測定装置300Aは、図4に示す照明スペクトル測定装置300Aと同様であり、カメラ100NCは、図17に示すカメラ100NCと同様であり、モニタ400Nは、図17に示すモニタ400Nと同様なので詳細な説明は繰り返さない。
そして、コンピュータ500の制御部510は、プログラム180を実行することにより、図5の線形画像演算行列算出処理Aにおいて、制御部250および記憶部240を、それぞれ、制御部510および記憶部520に置き換えた処理(線形画像演算行列算出処理PA)を行なう。この処理により、所定時間毎に、線形画像演算行列M’が算出され、算出された線形画像演算行列M’が記憶部520に記憶される。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、図11のカメラLUT更新処理において、制御部250、カメラLUT演算部211および記憶部211Mを、それぞれ、制御部510、制御部510および記憶部520に置き換えた処理(カメラLUT更新処理P)を行なう。この処理により、利用者がカメラ100NCの撮像特性を変更する毎に、変更後の撮像特性の値を反映したモニタLUTが記憶部520に記憶される。
また、コンピュータ500の制御部510は、プログラム180を実行することにより、図8のモニタLUT更新処理において、制御部250、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、制御部510および記憶部520に置き換えた処理(モニタLUT更新処理P)を行なう。この処理により、利用者がモニタ400Nの表示特性を変更する毎に、変更後の表示特性の値を反映したモニタLUTが記憶部520に記憶される。
さらに、コンピュータ500の制御部510は、プログラム180を実行することにより、図3の画像表示処理において、カメラLUT演算部211、記憶部211M、線形画像演算部212、記憶部212M、モニタLUT演算部213および記憶部213Mを、それぞれ、制御部510、記憶部520、制御部510、記憶部520、制御部510および記憶部520に置き換えた処理(画像表示処理PA)を行なう。
なお、線形画像演算行列算出処理PAと、カメラLUT更新処理Pと、モニタLUT更新処理Pと、画像表示処理PAとは、互いに独立して行なわれる。
以上の処理が、コンピュータ500において行なわれることにより、コンピュータ500においても、第7の実施の形態で得られる効果を奏することができる。すなわち、観察光データE2の変化量が所定のしきい値以上でない場合、制御部250の演算処理量を大幅に削減することができる。また、観察光データE2の変化量が所定のしきい値以上である場合においても、被写体光データE1および観察光データE2に基づいて、前述した遠隔被写体の色を正確に再現した画像を、モニタ400Nに表示することができる。
すなわち、モニタ400Nを観察する利用者に照射される照明条件(分光分布)において、遠隔被写体を見たのと同様に、遠隔被写体の色を再現することができる。すなわち、モニタ400を観察する利用者が、目の前で遠隔被写体を見たのと同様な色を再現することができる。以上により、演算処理を効率よく削減しつつ、モニタを観察する利用者に照射される照明の分光分布および、被写体の分光反射率に基づいた動画像を得ることができるという効果を奏する。
また、本実施の形態においては、利用者がカメラ100NCの表示特性を変更した場合においても、記憶部520に記憶されているカメラLUTを最新の状態に維持できる。すなわち、カメラ100NCの撮像特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
また、利用者がモニタ400NCの表示特性を変更した場合においても、記憶部520に記憶されているモニタLUTを最新の状態に維持できる。すなわち、モニタ400NCの表示特性の変更に関わらず、正確な色再現を可能とするという効果を奏する。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
70 ネットワーク、100,100N,100NA,100NB,100NC カメラ、180 プログラム、200,200A,200B,200C,200D,200E,200F 画像処理装置、210 演算部、211 カメラLUT演算部、212 線形画像演算部、213 モニタLUT演算部、211M,212M,213M,240 記憶部、250 制御部、300,300A 照明スペクトル測定装置、400,400N モニタ、500 コンピュータ、510 制御部、555 記録媒体、1000,1000A,1000B,1000C,1000D,1000DA,1000DB,1000E,1000F 画像処理システム。
Claims (7)
- 撮像装置で撮像された被写体の撮像データを受けて、表示装置に前記被写体を表示するための画像データを生成する画像処理装置であって、
前記撮像装置により順次撮像される前記被写体の撮像データを、所定時間経過毎に、順次受信する受信手段と、
前記被写体に照射される照明の分光分布データである被写体光データを、所定時間経過毎に、順次取得する被写体光取得手段と、
前記被写体光データおよび前記被写体の分光反射率に基づいた画像データを算出するための変換関数であって、前記被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、前記表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行なう被写体光使用変換処理実行手段と、
前記被写体光取得手段により順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、前記変換関数を更新する被写体光変化時更新手段とを備え、
前記被写体光使用変換処理実行手段は、前記変換関数が更新された場合、更新された変換関数を使用して、前記被写体光使用変換処理を行なう、画像処理装置。 - 前記被写体光使用変換処理は、受信された撮像データを、前記撮像装置の撮像特性に基づいた撮像特性関数により変換する撮像特性変換処理を含む、請求項1に記載の画像処理装置。
- 前記被写体光データは、光の波長毎のエネルギー量を示す分光放射輝度もしくは分光放射照度のデータである、請求項1または2に記載の画像処理装置。
- 前記表示装置を観察する利用者に照射される照明の分光分布データである観察光データを、所定時間経過毎に、順次取得する観察光取得手段と、
前記観察光データおよび前記被写体の分光反射率に基づいた画像データを算出するためのデータ変換関数であって、前記観察光取得手段により取得された観察光データを含むデータ変換関数を使用して、受信した撮像データを、前記表示装置に表示するための画像データに変換する観察光使用変換処理を、撮像データを受信する毎に行なう観察光使用変換処理実行手段と、
前記観察光取得手段により順次取得される、観察光データの変化量が、所定のしきい値以上となった場合、取得された最新の観察光データに基づいて、前記データ変換関数を更新する観察光変化時更新手段とをさらに備え、
前記観察光変換処理実行手段は、前記データ変換関数が更新された場合、更新されたデータ変換関数を使用して、前記観察光使用変換処理を行なう、請求項1〜3のいずれかに記載の画像処理装置。 - 前記観察光データは、光の波長毎のエネルギー量を示す分光放射輝度もしくは分光放射照度のデータである、請求項4に記載の画像処理装置。
- 被写体を撮像する撮像装置と、表示装置と、画像処理装置とを含む画像処理システムであって、
前記画像処理装置は、
前記撮像装置により順次撮像される前記被写体の撮像データを、所定時間経過毎に、順次受信する受信手段と、
前記被写体に照射される照明の分光分布データである被写体光データを、所定時間経過毎に、順次取得する被写体光取得手段と、
前記被写体光データおよび前記被写体の分光反射率に基づいた画像データを算出するための変換関数であって、前記被写体光取得手段により取得された被写体光データを含む変換関数を使用して、受信した撮像データを、前記表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行なう被写体光使用変換処理実行手段と、
前記被写体光取得手段により順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、前記変換関数を更新する被写体光変化時更新手段とを備え、
前記被写体光使用変換処理実行手段は、前記変換関数が更新された場合、更新された変換関数を使用して、前記被写体光使用変換処理を行なう、画像処理システム。 - 撮像装置で撮像された被写体の撮像データを受けて、表示装置に前記被写体を表示するための画像データを生成するコンピュータにより実行される画像処理プログラムであって、
前記画像処理プログラムは、
前記撮像装置により順次撮像される前記被写体の撮像データを、所定時間経過毎に、順次受信するステップと、
前記被写体に照射される照明の分光分布データである被写体光データを、所定時間経過毎に、順次取得するステップと、
前記被写体光データおよび前記被写体の分光反射率に基づいた画像データを算出するための変換関数であって、前記取得するステップにより取得された被写体光データを含む変換関数を使用して、受信した撮像データを、前記表示装置に表示するための画像データに変換する被写体光使用変換処理を、撮像データを受信する毎に行なうステップと、
順次取得される、被写体光データの変化量が、所定のしきい値以上となった場合、取得された最新の被写体光データに基づいて、前記変換関数を更新するステップとを備え、
前記被写体光使用変換処理を行なうステップは、前記変換関数が更新された場合、更新された変換関数を使用して、前記被写体光使用変換処理を行なうステップを含む、画像処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007278020A JP2009105846A (ja) | 2007-10-25 | 2007-10-25 | 画像処理装置、画像処理システムおよび画像処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007278020A JP2009105846A (ja) | 2007-10-25 | 2007-10-25 | 画像処理装置、画像処理システムおよび画像処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009105846A true JP2009105846A (ja) | 2009-05-14 |
Family
ID=40707077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007278020A Withdrawn JP2009105846A (ja) | 2007-10-25 | 2007-10-25 | 画像処理装置、画像処理システムおよび画像処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009105846A (ja) |
-
2007
- 2007-10-25 JP JP2007278020A patent/JP2009105846A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009104547A (ja) | 画像処理装置、画像処理システムおよび画像処理プログラム | |
JP4076248B2 (ja) | 色再現装置 | |
US8947519B2 (en) | Image processing apparatus, image processing system, image processing method, and image processing program | |
EP3284252B1 (en) | Methods and systems for camera characterization in terms of response function, color, and vignetting under non-uniform illumination | |
JP2009171008A (ja) | 色再現装置および色再現プログラム | |
JP2005117612A (ja) | 画像処理方法および装置 | |
JP5457652B2 (ja) | 画像処理装置およびその方法 | |
JP2001060082A (ja) | 色再現端末装置およびネットワーク色再現システム | |
JP2011124948A (ja) | 情報処理装置、情報処理方法、プログラム、及び光学顕微鏡を搭載した撮像装置 | |
EP3318175A1 (en) | Image processing apparatus and imaging system | |
JP2001258044A (ja) | 医療用画像処理装置 | |
US20190239729A1 (en) | Remote monitoring of a region of interest | |
WO2013100029A1 (ja) | 画像処理装置、画像表示システム、画像処理方法および画像処理プログラム | |
JPWO2015194421A1 (ja) | 医療用システム、その画像処理設定方法、及び画像処理装置 | |
WO2013100026A9 (ja) | 画像処理装置、画像処理システム、画像処理方法および画像処理プログラム | |
JP2005311581A (ja) | 画像入力システム、変換マトリックス算出方法、及びプログラム | |
JP2010214055A (ja) | 歯色の時系列表示装置及びその方法 | |
JP2009105844A (ja) | 画像処理装置、画像処理システムおよび画像処理プログラム | |
JP5127638B2 (ja) | 画像処理装置およびその方法 | |
JP5074066B2 (ja) | 画像処理装置、及び、画像処理方法 | |
JP2008206163A (ja) | カラー画像処理装置 | |
JP4898578B2 (ja) | 画像処理システム、撮像システム、及び顕微鏡撮像システム | |
JP2009105846A (ja) | 画像処理装置、画像処理システムおよび画像処理プログラム | |
JP2006090897A (ja) | 2種類の光源を用いた分光反射率推定方式 | |
JP2009105845A (ja) | 画像処理装置および画像処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110104 |