(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022162426
(43)【公開日】2022-10-24
(54)【発明の名称】情報処理方法、情報処理装置、プログラム
(51)【国際特許分類】
H04N 5/232 20060101AFI20221017BHJP
H04N 5/77 20060101ALI20221017BHJP
H04N 5/92 20060101ALI20221017BHJP
【FI】
H04N5/232 300
H04N5/232 290
H04N5/77
H04N5/92 010
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2021067271
(22)【出願日】2021-04-12
(71)【出願人】
【識別番号】316005926
【氏名又は名称】ソニーセミコンダクタソリューションズ株式会社
(74)【代理人】
【識別番号】100116942
【弁理士】
【氏名又は名称】岩田 雅信
(74)【代理人】
【識別番号】100167704
【弁理士】
【氏名又は名称】中川 裕人
(72)【発明者】
【氏名】奥池 和幸
【テーマコード(参考)】
5C053
5C122
【Fターム(参考)】
5C053GB06
5C053JA21
5C053LA01
5C122EA31
5C122FG02
5C122FH06
5C122FH11
5C122FH14
5C122GA34
5C122GC52
5C122HA01
5C122HB01
(57)【要約】
【課題】RAW画像データをクラウド側で扱う場合に管理するデータ量を削減できるようにする。
【解決手段】情報処理装置が、RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、その個体情報を撮像デバイスに関連づけて記憶する処理を行うようにする。
【選択図】
図6
【特許請求の範囲】
【請求項1】
情報処理装置が、
RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する第1処理を行う
情報処理方法。
【請求項2】
前記個体情報は、前記撮像デバイスの光学中心の情報である
請求項1に記載の情報処理方法。
【請求項3】
撮像デバイスの光学中心の情報を、撮像デバイスから受信した画像データを用いて算出して取得する
請求項2に記載の情報処理方法。
【請求項4】
前記個体情報は、前記撮像デバイスの画像処理に調整値の情報である
請求項1に記載の情報処理方法。
【請求項5】
RAW画像データのフレーム毎の撮影情報を保存する第2処理を、さらに行う
請求項1に記載の情報処理方法。
【請求項6】
前記撮影情報は、RAW画像データの切り出し位置情報である
請求項5に記載の情報処理方法。
【請求項7】
前記撮影情報は、RAW画像データの水平垂直回転情報である
請求項5に記載の情報処理方法。
【請求項8】
RAW画像データのフレーム毎の画像の認識情報を保存する第3処理を、さらに行う
請求項1に記載の情報処理方法。
【請求項9】
前記認識情報は画像の被写体についての物体認識の結果を示す情報である
請求項8に記載の情報処理方法。
【請求項10】
前記個体情報を用いて歪補正パラメータ算出する第4処理を、さらに行う
請求項1に記載の情報処理方法。
【請求項11】
前記個体情報及び前記撮影情報を用いて歪補正パラメータ算出する第4処理を、さらに行う
請求項5に記載の情報処理方法。
【請求項12】
前記個体情報及び前記認識情報を用いて歪補正パラメータ算出する第4処理を、さらに行う
請求項8に記載の情報処理方法。
【請求項13】
前記第4処理で算出した歪補正パラメータを用いてRAW画像データを現像する第5処理を、さらに行う
請求項10に記載の情報処理方法。
【請求項14】
RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する処理部を備えた
情報処理装置。
【請求項15】
RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する処理を
情報処理装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は情報処理方法、情報処理装置、プログラムに関し、RAW画像データを扱う場合の技術に関する。
【背景技術】
【0002】
撮像装置によって撮像された画像データとして、現像処理、特に画作りの処理が施される前の段階の画像データであるRAW画像データを保存するケースがある。
下記特許文献1には、RAW画像データをオフラインで現像するために、RAW画像データと幾何変形パラメータ(歪補正パラメータ)を紐づけて保存する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の場合、RAW画像データの現像、特に歪補正のために、幾何変形パラメータを1枚(1フレーム)毎に付加する。これによってデータサイズの増大という問題が発生している。
【0005】
本開示では、RAW画像データを保存する状況において、データサイズの増大を抑えつつ、RAW画像データに対する適切な処理が実行できるようにする技術を提案する。
【課題を解決するための手段】
【0006】
本技術に係る情報処理方法は、情報処理装置が、RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する第1処理を行うようにする。
外部の撮像デバイスからRAW画像データを受信する情報処理装置を想定した場合に、撮像デバイスの個体情報を、撮像デバイスに関連づけて管理する。
【図面の簡単な説明】
【0007】
【
図1】本技術の実施の形態の撮像デバイスと情報処理装置によるシステム構成の説明図である。
【
図3】実施の形態のセンサの構造例の説明図である。
【
図4】実施の形態の情報処理装置の構成のブロック図である。
【
図5】実施の形態の設定段階及び運用段階の処理の説明図である。
【
図7】実施の形態の情報処理装置の光学中心算出処理のフローチャートである。
【
図8】実施の形態のセンサにおけるISP処理の説明図である。
【
図9】実施の形態のアプリケーションプロセッサにおけるデータ分離のフローチャートである。
【
図10】実施の形態のアプリケーションプロセッサにおけるデータ分離のフローチャートである。
【
図11】実施の形態の送信されるデータ内容の説明図である。
【
図12】実施の形態の情報処理装置の歪補正パラメータ算出処理のフローチャートである。
【
図13】実施の形態の情報処理装置の歪補正パラメータ算出の際の広角歪に対応する処理のフローチャートである。
【発明を実施するための形態】
【0008】
以下、実施の形態を次の順序で説明する。
<1.システム構成>
<2.装置構成>
<3.設定段階及び運用段階の処理例>
<4.第1の実施の形態>
<5.第2の実施の形態>
<6.まとめ及び変形例>
【0009】
なお本開示では、「画像データ」とは静止画や動画としての画像データを指す。また図面の表記において「画像データ」を省略して「画像」とする場合がある。
また、RAW画像データとは、撮像により得られた画像データにおいて、現像処理の一部又は全部を行う前の画像データである。例えば画作りが行われる前の、イメージセンサの画素配列のままのデータ(例えばR(赤)/G(緑)/B(青)形式のデータ)、或いはそれを輝度信号と色信号に分離した段階のデータなどをRAW画像データと呼ぶことができる。さらには例えば色再現/シャープネス等の処理が施されていない段階の画像データをRAW画像データと呼ぶことができる。
【0010】
<1.システム構成>
図1に実施の形態のシステム構成例を示している。このシステムは撮像デバイス100と情報処理装置103がネットワーク104により通信可能とされる。
【0011】
撮像デバイス100は、光学系105、センサ101、アプリケーションプロセッサ102を備える。
【0012】
光学系105は、例えばズームレンズ、フォーカスレンズ、絞り等を有し、外部からの光をセンサ101に入射させる。
【0013】
センサ101は、例えば1チップで構成されるCMOS(Complementary Metal Oxide Semiconductor)イメージセンサであり、光学系105からの入射光の受光及び光電変換という撮像動作を行って、光学系105からの入射光に対応する画像データを出力する。
またセンサ101は、撮像により得た画像データに対して、例えば所定の認識対象を認識する認識処理、その他の信号処理を行い、その信号処理の信号処理結果を出力する。
【0014】
アプリケーションプロセッサ102は、例えば外部の装置との間でデータ伝送を行うI/F(Interface)として機能するとともに、本開示の処理に関連するデータ分離処理などを行う。
センサ101とアプリケーションプロセッサ102の通信は、例えば、MIPI(Mobile Industry Processor Interface)等の比較的高速なパラレルI/F等を採用することができる。
【0015】
情報処理装置103は、例えばクラウドコンピューティングによる画像処理を行うクラウドサーバとして機能する。
本実施の形態では、情報処理装置103は、撮像デバイス100からネットワーク104を介してRAW画像データを受信し、RAW画像データに対する各種処理を行うことができるものとする。
【0016】
情報処理装置103はコンピュータ機器など、情報処理、特に画像処理が可能な機器である。この情報処理装置103としては、具体的には、サーバ機能を実現する処理の能力を有するコンピュータ装置が想定されるが、例えばパーソナルコンピュータ、スマートフォンやタブレット等の携帯端末装置、携帯電話機、ビデオ編集装置、ビデオ再生機器等などであって本実施の形態で説明する処理機能を備えるものでもよい。
【0017】
なお、情報処理装置103は、撮像デバイス100と別体の情報処理装置であるが、必ずしもクラウドコンピューティングによるコンピュータ装置に限られない。例えば情報処理装置103は、スマートフォン等の端末装置などとして、撮像デバイス100の近距離の位置で使用されるものであってもよい。
【0018】
また、センサ101や情報処理装置103は、AI(artificial intelligence)エンジンによる機械学習を用いた各種の解析処理を行うことも想定される。例えばAIエンジンは、画像データについてDNN(Deep Neural Network)処理としての画像解析により、画像内容判定、シーン判定、物体認識(顔認識、人物認識等を含む)、個人識別、姿勢推定の処理などを行うことができる。
【0019】
ネットワーク104は、イーサネット、衛星通信回線、電話回線等を用いた遠隔地間の伝送路を形成するネットワークでもよいし、Wi-Fi(登録商標)通信、ブルートゥース(Bluetooth:登録商標)等による無線伝送路によるネットワークでもよい。さらにビデオケーブル、USB(Universal Serial Bus)ケーブル、LAN(Local Area Network)ケーブル等を用いた有線接続の伝送路によるネットワークでもよい。
【0020】
このようなシステムにおいて、センサ101によって画像撮像が行われ、画像データが出力される。このセンサ101が出力する画像データは、アプリケーションプロセッサ102によって情報処理装置103に送信される。情報処理装置103では、送信されてきた画像データを記憶するとともに、画像データを用いた各種処理を行うことができる。
【0021】
ここで、撮像デバイス100から情報処理装置103に送信される画像データはRAW画像データであるとする。情報処理装置103は、逐次送信されてくるRAW画像データを記憶するとともに、必要に応じてRAW画像データに対する現像処理、物体認識処理、画像や物体認識に基づく解析処理などを行って、各種情報をユーザに提供するサービスを行う。
本実施の形態では、このように情報処理装置103でRAW画像データを扱うことを想定して、より精度の高い情報提供を行うとともに、必要なデータ量の増大を抑制する。
【0022】
<2.装置構成>
以下、センサ101及び情報処理装置103の構成例を説明する。
図2はセンサ101の構成例を示している。
【0023】
センサ101は撮像ブロック20及び信号処理ブロック30を有する。
撮像ブロック20と信号処理ブロック30とは、接続線(内部バス)CL1,CL2、及び、CL3によって電気的に接続されている。
【0024】
撮像ブロック20は、撮像部21、撮像処理部22、出力制御部23、出力I/F(Interface)24、及び撮像制御部25を有している。
【0025】
撮像部21は複数の画素が2次元に並んで構成される。撮像部21は、撮像処理部22によって駆動され、画像を撮像する。
すなわち撮像部21に光学系105(
図1)からの光が入射すると、撮像部21における各画素がその入射光を受光し、光電変換を行う。この光電変換により得られるアナログ信号が入射光に対応する画像信号として出力される。
【0026】
なお撮像部21が出力する画像(信号)のサイズは、例えば、12M(3968×2976)ピクセルや、VGA(Video Graphics Array)サイズ(640×480ピクセル)等の複数のサイズの中から選択することができる。
また、撮像部21が出力する画像については、例えば、RGB(赤、緑、青)のカラー画像とするか、又は、輝度のみの白黒画像とするかを選択することができる。
これらの選択は、撮影モードの設定の一種として行うことができる。
【0027】
撮像処理部22は、撮像制御部25の制御に従い、撮像部21の駆動や、撮像部21が出力するアナログの画像信号のAD(Analog to Digital)変換、撮像信号処理等の、撮像部21での画像撮像に関連する処理を行う。
【0028】
ここで撮像信号処理としては、例えば撮像部21が出力する画像について、所定の小領域ごとに画素値の平均値を演算すること等により、小領域ごとの明るさを求める処理や、撮像部21が出力する画像をHDR(High Dynamic Range)画像に変換する処理、欠陥補正、現像等がある。
【0029】
撮像処理部22は、撮像部21が出力するアナログの画像信号のAD変換等によって得られるデジタルの画像信号を撮像画像として出力する。
本実施の形態の場合、少なくともRAW画像データとして撮像画像を出力する。
【0030】
撮像処理部22が出力する撮像画像は、出力制御部23に供給されるとともに、接続線CL2を介して、信号処理ブロック30の画像圧縮部35に供給される。
【0031】
出力制御部23には、撮像処理部22から撮像画像が供給される他、信号処理ブロック30から、接続線CL3を介して、撮像画像等を用いた信号処理の信号処理結果などの各種情報が供給される。例えば後述する認識情報や撮影情報が供給される。
【0032】
出力制御部23は、撮像処理部22からの撮像画像、及び信号処理ブロック30からの信号処理結果を、出力I/F24から外部に出力させる出力制御を行う。例えば
図1のアプリケーションプロセッサ102に出力する制御を行う。
【0033】
例えば出力制御部23は、撮像処理部22からの撮像画像、又は信号処理ブロック30からの信号処理結果(後述する認識情報や撮影情報)を選択し、出力I/F24に供給する。
【0034】
出力I/F24は、出力制御部23から供給される撮像画像、及び、信号処理結果を外部に出力するI/Fである。
出力I/F24としては、例えばMIPI等の比較的高速なパラレルI/F等を採用することができる。
【0035】
出力I/F24は、出力制御部23の出力制御に応じて、撮像処理部22からの撮像画像、又は信号処理ブロック30からの信号処理結果を外部に出力する。
したがって、例えば、外部において、信号処理ブロック30からの信号処理結果だけが必要であり、撮像画像そのものが必要でない場合には、信号処理結果だけを出力することができ、出力I/F24から外部に出力するデータ量を削減することができる。
また、信号処理ブロック30において、外部で必要とする信号処理結果が得られる信号処理を行い、その信号処理結果を、出力I/F24から出力することにより、外部で信号処理を行う必要がなくなり、外部のブロックの負荷を軽減することができる。
【0036】
撮像制御部25は、通信I/F26及びレジスタ群27を有する。
【0037】
通信I/F26は、例えば、I2C(Inter Integrated Circuit)等のシリアル通信I/F等の第1の通信I/Fであり、外部との間で、レジスタ群27に読み書きする情報等の必要な情報のやりとりを行う。
【0038】
レジスタ群27は、複数のレジスタを有し、撮像部21での画像の撮像に関連する撮影情報、その他の各種情報を記憶する。
例えば、レジスタ群27は、通信I/F26において外部から受信された情報や、撮像処理部22での撮像信号処理の結果を記憶する。これら撮影時の撮像処理に関連する情報を、説明上「撮影情報」と呼ぶ。
【0039】
レジスタ群27に記憶される撮影情報としては、例えば、ISO感度(撮像処理部22でのAD変換時のアナログゲイン)、露光時間(シャッタスピード)、フレームレート、フォーカス、撮影モード等を示す情報や、切り出し位置情報、水平垂直回転情報などがある。
【0040】
撮影モードには、例えば、露光時間やフレームレート等が手動で設定される手動モードと、シーンに応じて自動的に設定される自動モードとがある。自動モードには、例えば、夜景や、人の顔等の各種の撮影シーンに応じたモードがある。
【0041】
また、切り出し位置情報とは、撮像処理部22において、撮像部21が出力する画像の一部を切り出して、撮像画像として出力する場合に、撮像部21が出力する画像から切り出す範囲を表す情報である。切り出し範囲の指定によって、例えば、撮像部21が出力する画像から、人が映っている範囲だけを切り出すこと等が可能になる。
またいわゆる手ブレ補正のために、撮像デバイス100に設けられた不図示の角速度センサや加速度センサの情報に応じて、撮像処理部22がフレーム毎に切り出し範囲を調整することもある。
なお、画像の切り出しとしては、撮像部21が出力する画像から切り出す方法の他、撮像部21から、切り出し範囲の画像(信号)だけを読み出す方法がある。
【0042】
水平垂直回転情報とは、画像の縦横の切り替え、傾き補正などによる、水平方向、垂直方向の変化の情報である。
【0043】
撮像制御部25は、レジスタ群27に記憶された撮影情報に従って、撮像処理部22を制御し、これにより、撮像部21での画像の撮像処理を制御する。
【0044】
なおレジスタ群27は、撮影情報として、撮像処理部22での撮像信号処理の結果の他、出力制御部23での出力制御に関する出力制御情報も記憶することができる。
出力制御部23は、レジスタ群27に記憶された出力制御情報に従って、撮像画像及び信号処理結果を選択的に出力させる出力制御を行うことができる。
【0045】
またセンサ101では、撮像制御部25と、信号処理ブロック30のCPU31とは、接続線CL1を介して接続されており、CPU31は接続線CL1を介してレジスタ群27に対して情報の読み書きを行うことができる。
【0046】
すなわちセンサ101では、レジスタ群27に対する情報の読み書きは通信I/F26から行う他、CPU31からも行うことができる。
【0047】
信号処理ブロック30は、CPU(Central Processing Unit)31、ISP(Image Signal Processor)32、DSP(Digital Signal Processor)33、通信I/F34、画像圧縮部35、入力I/F36、及びメモリ37を有し、撮像ブロック20で得られた撮像画像等を用いて所定の信号処理を行う。
【0048】
信号処理ブロック30を構成するCPU31からメモリ37までの上記各部は、相互にバス39を介して接続され、必要に応じて情報のやりとりを行うことができる。
【0049】
CPU31は、メモリ37に記憶されたプログラムを実行することで、信号処理ブロック30の制御、接続線CL1を介しての、撮像制御部25のレジスタ群27への情報の読み書き、その他の各種の処理を行う。
【0050】
例えばCPU31は、プログラムを実行することにより、DSP33での信号処理により得られる信号処理結果を用いて撮影情報を算出する算出部として機能し、信号処理結果を用いて算出した新たな撮影情報を、接続線CL1を介して撮像制御部25のレジスタ群27にフィードバックして記憶させることができる。
【0051】
したがってCPU31は、撮像画像の信号処理結果に応じて撮像部21での撮像動作や撮像処理部22での撮像信号処理を制御することができる。
【0052】
またCPU31がレジスタ群27に記憶させた撮影情報は、通信I/F26から外部に提供(出力)することができる。例えば、レジスタ群27に記憶された撮影情報のうちのフォーカスの情報は、通信I/F26から、フォーカスを制御するフォーカスドライバ(図示せず)に提供することができる。
【0053】
ISP32は、メモリ37に記憶されたプログラムを実行することで、撮像処理部22から、接続線CL2を介して、信号処理ブロック30に供給される撮像画像や、入力I/F36が外部から受け取る情報を用いた信号処理を行う信号処理部として機能する。
これによりISP32は、DSP33における認識処理の入力画像を生成する。
【0054】
DSP33は、メモリ37に記憶されたプログラムを実行することで、撮像処理部22から、接続線CL2を介して、信号処理ブロック30に供給される撮像画像や、入力I/F36が外部から受け取る情報を用いた信号処理を行う信号処理部として機能する。
特に本実施の形態では、ISP32からの入力画像についてDNN処理等の物体認識処理を行うことができる。
【0055】
メモリ37は、SRAM(Static Random Access Memory)やDRAM(Dynamic RAM)等で構成され、信号処理ブロック30の処理上必要なデータ等を記憶する。
例えば、メモリ37は、通信I/F34において、外部から受信されたプログラムや、画像圧縮部35で圧縮され、ISP32やDSP33での信号処理で用いられる撮像画像、DSP33で行われた認識処理の結果である認識情報、CPU31や撮像制御部25の制御で行われた撮影時の処理の情報(撮影情報)、入力I/F36が受け取った情報、レジスタ群27に記憶された情報のうちで出力I/F24から出力する情報等を記憶する。上述のように撮影情報としては、切り出し位置情報や、水平垂直回転情報などがある。
認識情報や、切り出し位置情報、水平垂直回転情報などを含む撮影情報などは、逐次メモリ37から出力制御部23転送されて出力I/F24から出力されるようにすることができる。
【0056】
通信I/F34は、例えば、SPI(Serial Peripheral Interface)等のシリアル通信I/F等の第2の通信I/Fであり、外部との間で、CPU31やDSP33が実行するプログラム等の必要な情報のやりとりを行う。
例えば、通信I/F34は、CPU31やDSP33が実行するプログラムを外部からダウンロードし、メモリ37に供給して記憶させる。
したがって、通信I/F34がダウンロードするプログラムによって、CPU31やDSP33で様々な処理を実行することができる。
【0057】
なお通信I/F34は、外部との間で、プログラムの他、任意のデータのやりとりを行うことができる。
例えば通信I/F34は、DSP33での信号処理により得られる信号処理結果を外部に出力することができる。
また通信I/F34は、CPU31の指示に従った情報を外部の装置に出力し、これによりCPU31の指示に従って、外部の装置を制御することができる。
【0058】
画像圧縮部35には、撮像処理部22から接続線CL2を介して撮像画像が供給される。画像圧縮部35は、撮像画像を圧縮する圧縮処理を行い、その撮像画像よりもデータ量が少ない圧縮画像を生成する。画像圧縮部35で生成された圧縮画像は、バス39を介してメモリ37に供給されて記憶される。
なお画像圧縮部35は、圧縮を行わずに撮像画像をそのままメモリ37に記憶させることもある。
メモリ37に記憶された圧縮された(又は非圧縮の)撮像画像は、ISP32やDSP33の処理に供される。
【0059】
即ちISP32やDSP33での信号処理は、撮像画像そのものを用いて行う他、画像圧縮部35で撮像画像から生成された圧縮画像を用いて行うことができる。圧縮画像は、撮像画像よりもデータ量が少ないため、ISP32やDSP33での信号処理の負荷の軽減や、圧縮画像を記憶するメモリ37の記憶容量の節約を図ることができる。
【0060】
画像圧縮部35での圧縮処理としては、例えば12M(3968×2976)ピクセルの撮像画像をVGAサイズの画像に変換するスケールダウンを行うことができる。またISP32やDSP33での信号処理が輝度を対象として行われ、かつ撮像画像がRGBの画像である場合には、圧縮処理としては、RGBの画像を例えばYUVの画像に変換するYUV変換を行うことができる。
【0061】
なお画像圧縮部35はソフトウェアにより実現することもできるし、専用のハードウエアにより実現することもできる。
【0062】
入力I/F36は外部から情報を受け取るI/Fである。入力I/F36は、例えば外部のセンサから、その外部のセンサの出力(外部センサ出力)を受け取り、バスを介してメモリ37に供給して記憶させる。
入力I/F36としては、例えば出力I/F24と同様に、MIPI等のパラレルI/F等を採用することができる。
【0063】
また外部のセンサとしては、例えば、距離に関する情報をセンシングする距離センサを採用することができる。
さらに外部のセンサとしては、例えば、光をセンシングし、その光に対応する画像を出力するイメージセンサ、すなわちセンサ101とは別のイメージセンサを採用することができる。
また外部のセンサとしては、撮像デバイス100の挙動を検出する角速度センサ、加速度センサなどを採用することもできる。
【0064】
CPU31、ISP32、DSP33では、撮像画像(から生成された圧縮画像)を用いる他、入力I/F36が上述のような外部のセンサから受け取り、メモリ37に記憶される外部センサ出力を用いて信号処理を行うことができる。
【0065】
以上のように構成される1チップのセンサ101では、撮像部21での撮像により得られる撮像画像(から生成される圧縮画像)を用いた信号処理がISP32、DSP33で行われ、その信号処理の信号処理結果、及び、撮像画像が、出力I/F24から選択的に出力される。特に本実施の形態では、RAW画像データとしての撮像画像や、上述した認識情報、撮影情報などが出力I/F24から出力される。
従ってユーザが必要とする情報を出力するセンサ101を小型に構成することができる。
【0066】
図3にセンサ101の外観構成例を模式的に示している。
センサ101は、例えば複数のダイが積層された積層構造を有する1チップの半導体装置として構成することができる。
図3では、センサ101は、ダイ51、52の2枚のダイが積層されて構成される例を示している。
【0067】
図示のように上側のダイ51には撮像部21が搭載され、下側のダイ52には撮像処理部22から撮像制御部25までの各部や、CPU31からメモリ37までの各部が搭載されている。
【0068】
上側のダイ51と下側のダイ52とは、例えばダイ51を貫きダイ52にまで到達する貫通孔を形成することにより、又はダイ51の下面側に露出したCu配線と、ダイ52の上面側に露出したCu配線とを直接接続するCu-Cu接合を行うこと等により、電気的に接続される。
【0069】
ここで、撮像処理部22において、撮像部21が出力する画像信号のAD変換を行う方式としては、例えば、列並列AD方式やエリアAD方式を採用することができる。
【0070】
列並列AD方式では、例えば撮像部21を構成する画素の列に対してADC(AD Converter)が設けられ、各列のADCが、その列の画素の画素信号のAD変換を担当することで、1行の各列の画素の画像信号のAD変換が並列に行われる。列並列AD方式を採用する場合には、その列並列AD方式のAD変換を行う撮像処理部22の一部が、上側のダイ51に搭載されることがある。
【0071】
エリアAD方式では、撮像部21を構成する画素が複数のブロックに区分され、各ブロックに対してADCが設けられる。そして各ブロックのADCが、そのブロックの画素の画素信号のAD変換を担当することで、複数のブロックの画素の画像信号のAD変換が並列に行われる。エリアAD方式では、ブロックを最小単位として、撮像部21を構成する画素のうちの必要な画素についてだけ、画像信号のAD変換(読み出し及びAD変換)を行うことができる。
【0072】
なお、センサ101の面積が大になることが許容されるのであれば、センサ101は1枚のダイで構成することができる。
【0073】
また、
図3では2枚のダイ51、52を積層して1チップのセンサ101を構成することとしたが、1チップのセンサ101は3枚以上のダイを積層して構成することができる。例えば3枚のダイを積層して1チップのセンサ101を構成する場合には、
図3のメモリ37を別のダイに搭載することができる。
【0074】
ところでセンサチップ、メモリチップ、DSPチップ等のチップどうしを、複数のバンプで並列に接続してセンサ101を構成する場合、積層構造に構成された1チップのセンサ101に比較して厚みが大きく増加し装置が大型化する。
さらにその場合、バンプの接続部分での信号劣化等により、撮像処理部22から出力制御部23に撮像画像を出力するレートとして、十分なレートを確保することが困難になることがあり得る。
【0075】
図3のような積層構造のセンサ101によれば、以上のような装置の大型化や、撮像処理部22と出力制御部23との間のレートとして、十分なレートを確保することができなくなることを防止することができる。
従って積層構造のセンサ101によれば、ユーザが必要とする情報を出力する撮像装置を小型に構成することを実現することができる。
【0076】
ユーザが必要とする情報が撮像画像である場合には、センサ101は撮像画像を出力することができる。
また、ユーザが必要とする情報が、撮像画像を用いた信号処理により得られる場合には、センサ101は、DSP33等において、その信号処理、例えば撮像画像から所定の認識対象を認識する認識処理を行うことにより、ユーザが必要とする情報としての信号処理結果を得て出力することができる。
【0077】
次に
図1に示したように、例えばクラウドサーバ等として機能する情報処理装置103の構成例を
図4で説明する。
【0078】
情報処理装置103のCPU71は、ROM72や例えばEEP-ROM(Electrically Erasable Programmable Read-Only Memory)などの不揮発性メモリ部74に記憶されているプログラム、または記憶部79からRAM73にロードされたプログラムに従って各種の処理を実行する。RAM73にはまた、CPU71が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU71、ROM72、RAM73、不揮発性メモリ部74は、バス83を介して相互に接続されている。このバス83にはまた、入出力インタフェース75も接続されている。
【0079】
なお情報処理装置103を、画像処理やDNN処理を行うものとする場合、CPU71に代えて、或いはCPU71と共に、GPU(Graphics Processing Unit)、GPGPU(General-purpose computing on graphics processing units)、AI専用プロセッサ等が設けられてもよい。
【0080】
入出力インタフェース75には、操作子や操作デバイスよりなる入力部76が接続される。例えば入力部76としては、キーボード、マウス、キー、ダイヤル、タッチパネル、タッチパッド、リモートコントローラ等の各種の操作子や操作デバイスが想定される。
入力部76によりユーザの操作が検知され、入力された操作に応じた信号はCPU71によって解釈される。
入力部76としてはマイクロフォンも想定される。ユーザの発する音声を操作情報として入力することもできる。
【0081】
また入出力インタフェース75には、LCD或いは有機ELパネルなどよりなる表示部77や、スピーカなどよりなる音声出力部78が一体又は別体として接続される。
表示部77は各種表示を行う表示部であり、例えば情報処理装置103の筐体に設けられるディスプレイデバイスや、情報処理装置103に接続される別体のディスプレイデバイス等により構成される。
表示部77は、CPU71の指示に基づいて表示画面上に各種の画像処理のための画像や処理対象の動画等の表示を実行する。また表示部77はCPU71の指示に基づいて、各種操作メニュー、アイコン、メッセージ等、即ちGUI(Graphical User Interface)としての表示を行うことができる。
【0082】
入出力インタフェース75には、ハードディスクや固体メモリなどより構成される記憶部79や、モデムなどより構成される通信部80が接続される場合もある。
記憶部79は各種の情報の格納に用いられる。本実施の形態の場合、例えば後述する画像保存用DB42、情報保存用DB44、或いはDB47等を記憶部79において構成することができる。
【0083】
通信部80は、ネットワーク104等の伝送路を介しての通信処理や、各種機器との有線/無線通信、バス通信などによる通信を行う。
【0084】
入出力インタフェース75にはまた、必要に応じてドライブ81が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブル記録媒体82が適宜装着される。
ドライブ81により、リムーバブル記録媒体82からは画像ファイル等のデータファイルや、各種のコンピュータプログラムなどを読み出すことができる。読み出されたデータファイルは記憶部79に記憶されたり、データファイルに含まれる画像や音声が表示部77や音声出力部78で出力されたりする。またリムーバブル記録媒体82から読み出されたコンピュータプログラム等は必要に応じて記憶部79にインストールされる。
【0085】
この情報処理装置103では、例えば本実施の形態の処理のためのソフトウェアを、通信部80によるネットワーク通信やリムーバブル記録媒体82を介してインストールすることができる。或いは当該ソフトウェアは予めROM72や記憶部79等に記憶されていてもよい。
【0086】
<3.実施の形態の概要、及び設定段階と運用段階の処理例>
実施の形態の処理の概要について説明する。
実施の形態では、センサ101で撮像したRAW画像データを、クラウド側の情報処理装置103にアップロードし、当該画像や画像に基づく情報を各種サービスに用いることを想定している。
【0087】
サービスの例を挙げる。
例えば撮像デバイス100を監視カメラや定点カメラとして監視システムや観測システムを構成することが考えられる。
センサ101で撮像した画像データをクラウドサーバである情報処理装置103に逐次アップロードしていく。情報処理装置103は、アップロードされた画像をユーザに提供したり、画像からの検出結果、分析結果の情報、例えば特定の人物の認識情報、単位時間での人数情報、混雑情報、気象情報などをユーザに提供したりすることができる。
【0088】
また撮像デバイス100を店舗の商品のモニタカメラとする用途とし、情報処理装置103が画像に基づいて商品の販売状況、欠品情報などを生成し、ユーザに提供するというケースも想定される。
また撮像デバイス100を工場の製造ラインのモニタカメラとする用途とし、情報処理装置103が画像に基づいて生産品の状態、不良品情報、ライン稼働状況情報などを生成し、ユーザに提供するというケースも想定される。
【0089】
これら多様なユースケースが想定されるが、本実施の形態では、エッジ側である撮像デバイス100から、クラウド側である情報処理装置103にアップロードする画像はRAW画像データであるとする。
情報処理装置103では、RAW画像データを必要に応じて現像処理を行い、また或いは被写体の解析処理や、画像から目的の情報の分析処理等を行う。これによりサービスに必要な情報を生成し、ユーザに提供する。
【0090】
このような場合に、画像の歪補正や画像処理を、情報処理装置103において適切に行うようにすることを考える。
【0091】
例えばRAW画像データについて歪補正を行うには、そのRAW画像データと幾何変形パラメータ、即ち歪補正パラメータが紐づけられている必要がある。ところが、情報処理装置103側で、RAW画像データのフレーム毎に歪補正パラメータを紐づけて管理することは、必要なデータ量の増大を招く。
【0092】
そこで情報処理装置103は、RAW画像データと歪補正パラメータを別管理するものとする。
具体的には、RAW画像データの撮像を行った撮像デバイス100におけるレンズの光学中心情報をデバイスに紐づけて管理する。これにより、RAW画像データのフレーム毎に幾何変形パラメータ等を記憶・管理する必要をなくし、データサイズの拡大を抑える。
【0093】
歪補正のために幾何変形パラメータを作成する際に、撮像デバイス100における光軸中心と、RAW画像データの画像中心がずれている場合、歪補正が適切にできないという事情がある。例えば撮像デバイス100において安価なレンズを用いる場合、ピント合わせのためにレンズをねじ込むが、この動作によって、光軸中心と画像中心の位置が回転してしまう。例えばこのような状況に対応するために、情報処理装置103において撮像デバイス100の個体ごとに幾何変形パラメータを作成できるようにする。
【0094】
またRAW画像データのフレーム毎に関連づけて管理する情報として、撮影情報と認識情報を用いる。
撮影情報とは、切り出し位置情報、水平垂直回転情報などである。
認識情報は、DSP33において行われる例えばDNN結果情報など、被写体の認識結果の情報である。
これらを用いることで、情報処理装置103側で生成する歪補正パラメータの精度を向上させる。
【0095】
図5は設定段階の手順、及び運用段階の手順をそれぞれ示している。
図の下部のエッジ側として撮像デバイス100側の動作手順、図の上部のクラウド側として情報処理装置103側の動作手順を示している。
まず手順ST1から手順ST6として設定段階の処理や動作を説明する。
【0096】
・手順ST1
撮像デバイス100において、例えば撮像を行う現場での設置時などに設定用の所定の画像の撮影を行う。例えば格子画像、マクベスなどと呼ばれる画像を用意して撮影する。
【0097】
・手順ST2
撮像デバイス100において手順ST1の撮影による撮像画像や、その他必要な撮像デバイス100のデバイス情報を情報処理装置103にアップロードする。ここでいうデバイス情報としては、撮像デバイス100の識別情報や、レンズの種別、特性等を示すレンズデータ、イメージセンサ(撮像部21)のRGB感度など、その撮像デバイス100の固有の特性等の情報を含む。
【0098】
・手順ST3
情報処理装置103が、撮像デバイス100における光学中心や、撮像デバイス100の特性に応じた調整値(以下「個体調整値」という)を計算する。
個体調整値とは、例えばその撮像デバイス100の特性に応じた色味調整のパラメータや、シェーディング補正のパラメータなど、その撮像デバイス100で撮像された画像データに対する画像処理に用いることに適した調整値である。
なお本開示では、光学中心や個体調整値など、撮像デバイス100の個体に応じたRAW画像データの画像処理に用いる補正パラメータの算出の元になる情報を総称して個体情報と呼んでいる。上記のデバイス情報の全部又は一部が個体情報となる場合もあるし、デバイス情報は個体情報とはならないこともある。
【0099】
・手順ST4
情報処理装置103が、撮像デバイス100にフィードバックする設定値を作成する。
【0100】
・手順ST5
情報処理装置103が作成した設定値に基づいて、パラメータやプログラムが撮像デバイス100にデプロイされる。
【0101】
・手順ST6
情報処理装置103は、デバイスを特定するデバイス情報と共に、手順ST3で計算した光学中心や個体調整値を、DB(データベース)に保存する。
【0102】
以上の手順で、情報処理装置103は、撮像デバイス100に応じた個体情報、即ち光学中心の情報や個体調整値を管理できる状態になる。なお、このためには少なくとも手順ST1,ST2,ST3,ST6が行われればよい。
【0103】
続いて、運用段階の処理又は動作として、手順ST11から手順ST16までを説明する。
【0104】
・手順ST11
撮像デバイス100において、実際の設置環境における撮影を行う。
【0105】
・手順ST12
撮像デバイス100において手順ST11として行われた撮影による撮像画像や、その撮影に付随する情報を情報処理装置103にアップロードする。この場合、撮像画像としてのRAW画像データが情報処理装置103にアップロードされるとともに、撮影に付随する情報として、RAW画像データのフレームに対応する認識情報や撮影情報がアップロードされる。
認識情報は撮像したRAW画像データに対するセンサ101内での画像信号処理、物体認識処理が行われた結果としての認識情報である。撮影情報は、そのRAW画像データの撮影の際の切り出しを行った場合の切り出し位置情報や、水平-垂直変換や回転調整による水平垂直回転情報である。
【0106】
・手順ST13
アップロードされるRAW画像データのフレームや、認識情報、撮影情報が関連づけられて情報処理装置103側のDBに保存される。
【0107】
・手順ST14
情報処理装置103は、DBに取り込んだRAW画像データに対して現像処理のためのパラメータ算出を行う。この場合に、設定段階で撮像デバイス100に関連づけて保存した光学中心や個体調整値の情報を用いる。
またRAW画像データのフレームに関連づけて保存されている認識情報、撮影情報も用いられる。具体的には、現像処理では歪補正が行われるが、歪補正のための歪補正パラメータを計算する際に、光学中心、認識情報、撮影情報を用いることができる。
【0108】
・手順ST15
情報処理装置103は、DBに取り込んだRAW画像データに対して、算出したパラメータを用いた現像処理を行う。
例えば現像処理では、歪補正、色処理、シェーディング補正などを含む各種処理が行われる。歪補正には手順ST14で計算した歪補正パラメータを用いる。また色処理、シェーディング補正などに個体調整値を用いることができる。
【0109】
・手順ST16
情報処理装置103は、現像した画像データについてDNN処理等を行うことができる。これは、運用しているサービスにとって要求される被写体の認識のための人物認識、クラス判定、物体認識などを行うものである。
【0110】
・手順ST17
情報処理装置103は、認識処理の結果を解析し、例えば運用しているサービスのユーザに対して提供する情報を生成する。また撮像デバイスに対してフィードバックする情報を生成することもできる。
【0111】
・手順ST18
情報処理装置103が撮像デバイス100にフィードバックする情報を生成した場合、それを撮像デバイス100に送信し、撮像デバイス100において撮像制御やDNN処理に用いられるようにすることができる。例えば撮像動作制御や認識処理のパラメータの変更などが行われることが想定される。
【0112】
以上の手順で、運用段階において情報処理装置103は、撮像デバイス100からアップロードされたRAW画像データについて、光学中心の情報や個体調整値を用い、また同時にアップロードされる認識情報や撮影情報を用いて、適切に現像処理を行うことができる。
特に、手順ST13,ST14が行われることで、情報処理装置103において手順ST15でRAW画像データを適切に現像処理できることになる。
【0113】
<4.第1の実施の形態>
第1の実施の形態としての
図5の設定段階及び運用段階の処理の流れを
図6のブロック図で説明する。
図6は、センサ101、アプリケーションプロセッサ102、情報処理装置103の機能(機能を発揮する部位)又は処理などをブロック化したものである。
【0114】
センサ101における構成として撮像部21、ISP32、DSP33を抽出して示している。
この場合の撮像部21は、RAW画像データや撮影情報を出力する機能部としての意味で示している。
ISP32は、撮像部21で得られた撮像画像について現像処理を行い、認識処理のための入力画像を生成する機能部としての意味で示している。
DSP33は、ISP32からの入力画像データを対象としてDNNによる物体認識処理を行う機能部としての意味で示している。
【0115】
アプリケーションプロセッサ102については、データ分離処理41を行うことを示している。データ分離処理41は、センサ101からの情報の分離、特にRAW画像データと、認識情報及び撮影情報の分離を行う処理である。
【0116】
情報処理装置103については、画像保存用DB42、算出処理43、情報保存用DB44、歪補正パラメータ算出処理45、現像処理46を示している。
画像保存用DB42はRAW画像データを保存するDBである。
算出処理43は、光学中心や個体調整値を算出する処理である。
情報保存用DB44は、撮影情報や認識情報を保存するDBである。
歪補正パラメータ算出処理45は、歪補正パラメータを算出する処理である。
現像処理46は、RAW画像データに対して現像を行う処理である。
【0117】
この
図6を用いて、
図5の設定段階の処理、特に手順ST1,ST2,ST3,ST6の流れを説明する。
手順ST1の画像撮影として、格子画像などの所定の画像の撮像が撮像部21で行われ、例えば格子画像を被写体としたRAW画像データがセンサ101から出力される。
このRAW画像データが、手順ST2として、アプリケーションプロセッサ102を介して情報処理装置103にアップロードされる。
なお、この手順ST1,ST2では撮像デバイス100についてのデバイス情報も情報処理装置103に送信される。
【0118】
情報処理装置においては送信されてきたRAW画像データを画像保存用DB42に取り込んだ後、そのRAW画像データを用いて、手順ST3としての算出処理43を行う。
すなわち算出処理43では、光学中心や個体調整値を算出する。これらのいずれか一方のみの算出を行う場合もある。
【0119】
光学中心の算出処理の例を
図7に示す。
情報処理装置103のCPU71(
図4参照)は、ステップS201でRAW画像データ、つまり格子画像を処理対象として取得する。
【0120】
ステップS202でCPU71は、光学中心の仮設定を行う。
ステップS203でCPU71は、仮設定した光学中心を用いて歪補正パラメータを作成する。
【0121】
ステップS204でCPU71は、作成した歪補正パラメータを用いて歪補正を含む現像処理を行う。
ステップS205でCPU71は、現像した画像について格子情報の解析を行う。例えば格子が直線になっているかであるとか、格子が垂直に交差しているかなどを解析する。これはステップS202で仮設定した光学中心を用いた場合の歪補正の具合を確認するためである。
【0122】
ステップS206でCPU71は、解析結果としての直線性や垂直交差の度合いを数値化した値と、それらに対応して設定されている閾値を比較し、閾値条件を満たすか否かを確認する。これはステップS202で仮設定した光学中心により、正しく歪補正が行われたか否かの確認を行うことを意味する。
【0123】
閾値を満たさなければCPU71はステップS202に戻って光学中心の仮設定を行う。すなわち、それまでとは異なる光学中心の設定を行う。そしてステップS203以降の処理を行う。
つまりCPU71は、光学中心の仮設定を変更しながら、閾値条件を満たすまで、ステップS202からステップS205の処理を繰り返す。
閾値条件を満たした時点で、そのとき仮設定されている光学中心は、処理対象としたRAW画像データにとって適切な光学中心となる。つまり、そのRAW画像データを撮像した撮像デバイス100についての光学中心となる。
【0124】
算出処理43として個体調整値を算出する場合は、例えばデバイス情報におけるRGB感度の情報などを用いて算出を行う。例えば色味調整のパラメータや、シェーディング補正のパラメータなどが個体調整値として算出できる。
【0125】
手順ST6に相当する処理として、算出された光学中心や個体調整値は、撮像デバイス100のデバイス情報とともに情報保存用DB44に記憶される。
例えば算出された光学中心や個体調整値は、撮像デバイス100の識別情報と関連づけられて保存されればよい。
【0126】
なお、手順ST4,ST5に相当する処理として、算出処理43の段階でRAW画像データに基づいて撮像デバイス100に関する設定値が算出され、センサ101の例えばISP32の処理のパラメータなどとしてフィードバックされる場合もある。
【0127】
続いて運用段階の処理の流れを説明する。
図5の手順ST11の画像撮影としての撮像が、
図6の撮像部21で行われる。
また手順ST12としてRAW画像データ、認識情報、撮影情報がアプリケーションプロセッサ102を介して情報処理装置103にアップロードされる。この場合の動作が以下のように行われる。
なお、以下の手順ST11,ST12に相当する処理は、撮像される画像のフレーム毎に行われる。
【0128】
図6の撮像部21による撮像によりRAW画像データと撮影情報が得られる。撮影情報は、実際には
図2の撮像制御部25の制御などによりレジスタ群27に記憶される切り出し位置情報や水平垂直変換情報である。
【0129】
撮像により得られたRAW画像データはISP32において処理される。
例えばISP32では
図8のように、シェーディング補正60、混色補正61、デジタルゲイン62、ホワイトバランスゲイン63、デモザイク64、ガンマ補正65、正規化66、歪補正67を行って、認識処理のための入力画像データを生成する。
またデジタルゲイン62の処理を経た画像データについて検波68を行い、検波結果を例えば撮像制御部25によるフォーカス制御、アイリス制御等に用いるようにする。
【0130】
ISP32によって得られた認識処理のための入力画像データは、
図6のようにDSP33に送られてDNN処理対象とされる。
そしてDSP33によってDNN処理が行われ、認識情報が生成される。
【0131】
以上のように、撮像部21からRAW画像データや撮影情報が出力され、DSP33から認識情報が出力され、これらは例えばMIPIによりアプリケーションプロセッサ102に送信される。
【0132】
アプリケーションプロセッサ102はRAW画像データ、撮影情報、認識情報についてデータ分離処理41を行ったうえで情報処理装置103に送信する。
【0133】
データ分離処理41の処理例を
図9,
図10に示す。
図9の処理例では、アプリケーションプロセッサ102は、ステップS101で、MIPIで受信したデータのヘッダーのVC/DTを見てデータを分離する。VC/DTは、VC(Virtual Channel Id)及びDT(Data Type)の値によりデータ種別を示している。
【0134】
VC/DTがRAW画像データ用の値であれば、アプリケーションプロセッサ102はステップS102で、画像保存用DB42に保存するデータとして情報処理装置103へのデータ送信を行う。すなわちこの場合は、センサ101から送信されてきたRAW画像データを情報処理装置103に送信することになる。
これに応じて情報処理装置103はRAW画像データを画像保存用DB42に保存する。
【0135】
ステップS101で判定するVC/DTがメタデータ用の値であれば、センサ101から送信されてきた情報は撮影情報又は認識情報である。
この場合、アプリケーションプロセッサ102はステップS103で、情報の変化の有無を確認する。例えば前回以前の直近に送信したRAW画像データのフレームにおける撮影情報、認識情報と比較して、今回の撮影情報又は認識情報の内容に変化がなければ、ステップS105に進んで、特に送信を行わずに
図9の処理を終える。
【0136】
一方、前回以前の直近に送信したRAW画像データのフレームにおける撮影情報、認識情報と比較して、今回の撮影情報又は認識情報の内容に変化があった場合は。アプリケーションプロセッサ102はステップS104に進んで、今回の撮影情報又は認識情報を、情報保存用DB44に保存するデータとして情報処理装置103に送信する。
これに応じて情報処理装置103は撮影情報又は認識情報を情報保存用DB44に保存する。
【0137】
図9の処理例によれば、アプリケーションプロセッサ102は、撮影情報や認識情報として変化があったフレームについて、これらを送信する。これにより、通信データ量や、情報処理装置103で管理するデータ量を削減できる。
【0138】
図10はデータ分離処理41としての他の処理例である。
アプリケーションプロセッサ102は、ステップS101で、MIPIで受信したデータのヘッダーのVC/DTを見てデータを分離する。
VC/DTがRAW画像データ用の値であれば、アプリケーションプロセッサ102はステップS102で、画像保存用DB42に保存するデータとして情報処理装置103へRAW画像データの送信を行う。
【0139】
ステップS101で判定するVC/DTがメタデータ用の値であれば、センサ101から送信されてきた情報は撮影情報又は認識情報である。
この場合、アプリケーションプロセッサ102はステップS110で、当該情報が切り出し位置情報又は水平垂直変換情報であるか否かを判定する。
【0140】
切り出し位置情報又は水平垂直変換情報であったら、アプリケーションプロセッサ102は、ステップS111で、これらの撮影情報と、認識情報とを、情報保存用DB44に保存するデータとして情報処理装置103に送信する。
これに応じて情報処理装置103は撮影情報と認識情報を情報保存用DB44に保存する。
【0141】
切り出し位置情報又は水平垂直変換情報でなかった場合は、アプリケーションプロセッサ102は、ステップS112で、今回のフレームの認識情報を、情報保存用DB44に保存するデータとして情報処理装置103に送信する。
これに応じて情報処理装置103は認識情報を情報保存用DB44に保存する。
【0142】
図10の処理例によれば、アプリケーションプロセッサ102は、撮影情報として特に切り出し位置情報又は水平垂直変換情報がセンサ101から送信されてきた場合のみ、そのフレームについて撮影情報と認識情報を情報処理装置103に送信する。それ以外のフレームでは認識情報のみ情報処理装置103に送信する。これにより、フレーム毎に認識情報が情報処理装置103で管理されるとともに、撮影情報については、切り出し処理又は水平垂直変換処理が行われた場合のみ情報処理装置103で管理されるようになり、情報処理装置103で管理するデータ量を削減できる。
【0143】
運用段階の手順ST11,ST12として、撮像されるフレーム毎に、ここまでの説明のように処理が行われる。
図11に、手順ST11,ST12で送信される情報を示している。
センサ101からアプリケーションプロセッサ102に対しては、MIPIデータとしてRAW画像データ、撮影情報、認識情報が送信される。
アプリケーションプロセッサ102から情報処理装置103に対しては、ファイルデータとしてRAW画像データ、撮影情報、認識情報が送信される。これらは1つのファイルとして送信されてもよいが、分割してそれぞれのファイルとして送信してもよい。
図8,
図9の処理は分割して送信する例の処理である。
【0144】
情報処理装置103では、上述のように撮像デバイス100からの送信に応じて、手順ST13として、
図6の画像保存用DB42へのRAW画像データの記憶や、情報保存用DB44への撮影情報や認識情報の記憶を行う。
【0145】
その後、情報処理装置103は任意の時点で手順ST14としての
図6の歪補正パラメータ算出処理45を行うことができる。これは情報保存用DB44に保存された光学中心の情報を用いてRAW画像データに対する歪補正パラメータを算出する。
【0146】
また情報処理装置103は任意の時点で手順ST15としての現像処理46を行うことができる。これは、画像保存用DB42に保存されたRAW画像データの現像処理である。なお現像処理としては
図8で説明した処理内容とほぼ同様の処理が行われることが考えられる。例えばシェーディング補正60から歪補正67までの処理が行われる。
このような処理を
図6の現像処理46として行う際に、歪補正パラメータ算出処理45で算出された歪補正パラメータ等を用いる。
【0147】
現像処理46の対象となるRAW画像データが画像保存用DB42に保存されている場合、そのRAW画像データを撮像した撮像デバイス100についてのデバイス情報に関連づけられて光学中心の情報及び個体調整値が、情報保存用DB44に保存されている。またRAW画像データのフレーム毎に関連づけられて、撮影情報と認識情報又はその一方が情報保存用DB44に保存されている。
【0148】
歪補正パラメータ算出処理45では、デバイス情報におけるレンズデータ、光学中心の情報及び個体調整値、撮影情報、認識情報を用いて歪補正パラメータを算出する。
【0149】
図12に歪補正パラメータの算出処理例を示す。
情報処理装置103のCPU71はステップS301で、レンズデータと、光学中心の情報を基にして歪補正パラメータを算出する。
この算出された歪補正パラメータは、エッジ用、つまり撮像デバイス100で用いられる歪補正パラメータとなる。例えば情報処理装置103は、このエッジ用の歪補正パラメータを、ISP32における歪補正67で用いる歪補正パラメータとして撮像デバイス100にフィードバックすることができる。
【0150】
ステップS302でCPU71は、レンズデータと光学中心の情報に加えて、撮影情報(切り出し位置情報、水平垂直変換情報)を用いてRAW画像データ用の歪補正パラメータを作成する。これは情報処理装置103側でのRAW画像データに対する歪補正に用いるパラメータである。
【0151】
ステップS304でCPU71は、認識情報、例えばDSP33によるDNN結果を用いて、広角歪み補正を加味したRAW画像データ用の歪補正パラメータを作成する。
例えば立体物の被写体が画像の隅に或る場合に歪補正を行うと、その立体物の形状が、本来の形ではない状態に変形される。特に歪補正を精密に行うと広角歪みが出ることがある。
そこでステップS304では、被写体の認識結果に応じて処理を切り替える。
【0152】
このステップS304の処理例を
図13に示す。
情報処理装置103のCPU71は、ステップS340で認識情報について判定処理を行う。例えば認識された物体の種別(クラス)や、物体の画像内での位置などを判定する。
【0153】
ステップS341でCPU71は、画像における像高の高い位置に立体物としての被写体が存在するか否かを判定する。
存在する場合は、CPU71はステップS343に進み、広角歪みを発生させないために水平方向のみの補正を行う歪補正パラメータを生成する。
像高の高い位置に立体物としての被写体が存在しない場合は、水平・垂直の両方に対して歪補正を行う歪補正パラメータを生成する。
【0154】
このように認識情報に応じて処理を切り替えることで、広角歪みが発生しない歪補正を行うことができるようにする。
【0155】
情報処理装置103は、
図6の歪補正パラメータ算出処理45として、以上のような処理で歪補正パラメータを生成したら、その歪補正パラメータを用いて現像処理46を行うことができる。これにより、情報処理装置103側でも、RAW画像データに対して適切な歪補正ができるようになる。
【0156】
さらに現像処理46では、情報保存用DB44から読み出した個体調整値の情報を用いて、シェーディング補正や色調整等の処理を行うことができる。つまり、処理対象のRAW画像データの撮像元である撮像デバイス100の個体に合わせた現像処理を行うことができる。
なお、歪補正パラメータ算出処理45では、歪補正パラメータの算出に加えて、例えば個体調整値を用いて現像処理で用いるパラメータを算出してもよい。例えば情報保存用DB44から読み出した個体調整値が現像処理に用いるパラメータそのものであるときは、加えてパラメータ算出を行う必要は無いが、個体調整値に基づいて現像処理に用いるパラメータを算出するものとしてもよい。
【0157】
現像処理46により,現像後の画像データ、例えばJPEG画像データやビットマップ画像データなどが得られる。
このような画像データに対して、必要に応じて、また提供するサービス内容に応じて、情報処理装置103が
図5に示した手順ST16,ST17,ST18の処理を行う場合がある。
また、手順ST18に関しては、歪補正パラメータ算出処理で算出した歪補正パラメータを、情報保存用DB44に記憶し、何らかの時点でセンサ101にフィードバックしてISP32における歪補正処理に適用できるようにしてもよい。
【0158】
<5.第2の実施の形態>
第2の実施の形態の処理の流れを
図14に示す。
図14は
図6と同様の形式で処理の流れを示している。
図6では画像保存用DB42と情報保存用DB44を分けてデータ保存を行ったが、
図14は、情報処理装置103における手順ST6や手順ST13においてDB47にまとめてデータ保存を行う例である。
【0159】
すなわち、DB47において、撮像デバイス100のデバイス情報に関連づけて、その光学中心の情報や個体調整値が記憶される。
またRAW画像データが記憶されるとともに、RAW画像データのフレーム毎に、撮影情報、認識情報が記憶される。
【0160】
設定段階では、算出処理43として撮像デバイス100によって撮像された格子画像などの画像データから
図7のように光学中心が算出される。そして撮像デバイス100のデバイス情報に関連づけて、その光学中心の情報や個体調整値が記憶される。
【0161】
運用段階では、DB47から読み出されるRAW画像データのフレーム毎に、
図12のように、レンズデータ、光学中心、撮影情報、認識情報を用いて歪補正パラメータ算出処理45が行われる。そして算出された歪補正パラメータや、DB47から読み出された個体調整値を用いた現像処理46が行われる。
【0162】
<6.まとめ及び変形例>
実施の形態で説明した技術によれば、以下のような効果が得られる。
実施の形態の情報処理装置103は、RAW画像データの撮像を行う撮像デバイス100の個体情報として例えば光学中心の情報や個体調整値等、RAW画像データの画像処理パラメータの設定に用いる情報を取得し、これらの個体情報を撮像デバイス100に関連づけて記憶する第1処理を行う。つまり
図5の手順ST6の処理である。
外部の撮像デバイス100からRAW画像データを受信する情報処理装置103を想定した場合に、撮像デバイス100の個体情報を、撮像デバイス100に関連づけて管理する。
これにより、RAW画像データのフレーム毎に幾何変形パラメータ等を記憶・管理する必要をなくし、データサイズの拡大を抑えることができる。
【0163】
実施の形態では、個体情報は撮像デバイス100の光学中心の情報である例を挙げた。
これにより撮像デバイス100の個体に応じたレンズ歪補正パラメータを算出できる。RAW画像データのフレーム毎ではなく、撮像デバイス100の個体に関連づけて光学中心の情報を管理することで、現像処理に用いるために記憶しておく情報の情報量を削減できる。即ちフレーム毎に幾何変形パラメータを記憶しておく必要は無い。
【0164】
実施の形態では、撮像デバイス100の光学中心の情報を、撮像デバイス100から受信した画像データを用いて算出して取得する例を挙げた(
図7参照)。
設定段階における撮像デバイス100により撮像された画像、例えば格子画像の画像データを用いて、その撮像デバイス100の光学中心の情報を算出して取得することができる。
【0165】
実施の形態では、個体情報は撮像デバイス100の個体調整値の情報である例を挙げた。
これにより情報処理装置103側で撮像デバイス100の個体に応じた画像処理を行うためのパラメータを設定できる。
例えば撮像デバイス100の個体に応じた画像処理としての色味補正やシェーディング補正などに関するパラメータを算出できる。従ってクラウド側で撮像デバイス100に応じた画像処理を行うことができる。またエッジ側にパラメータをフィードバックすることも可能である。
個体調整値としては色味調整のパラメータや、シェーディング補正のパラメータを例示したが、これら以外の情報も考えられる。例えばホワイトバランスゲイン、ガンマカーブなどのパラメータも考えられる。
【0166】
実施の形態では、RAW画像データのフレーム毎の撮影情報を保存する第2処理を行う例を挙げた。つまり
図5の手順ST13における撮影情報の保存の処理である。
これによりフレーム毎の撮影時の処理に関する情報を管理でき、その後の処理に利用できるようになる。例えば歪補正パラメータの算出や色調整処理、シェーディング補正処理、輝度調整処理、などの各種画像処理に、撮影時の処理の情報を利用できる。
【0167】
実施の形態では、撮影情報は、RAW画像データの切り出し位置情報である例を挙げた。
撮像デバイス100側からのRAW画像データに関して切り出し位置情報がフレーム毎に管理されることで、フレーム毎に適切な補正パラメータを算出できる。
例えば安価な撮像デバイス100などの事情で光学中心と画像中心がずれている場合において、撮像された画像データの切り出し位置を加味した計算を行うことで精度の高い歪補正パラメータを算出できる。また撮像デバイス100においてブレ補正機能などでフレーム毎に切り出し位置を調整するような場合も、光軸中心と画像中心がフレーム毎にずれるため、各フレームの切り出し位置情報が管理されることで、高精度な歪補正パラメータを算出できるようになる。
【0168】
実施の形態では、撮影情報は、RAW画像データの水平垂直回転情報である例を挙げた。
撮像デバイス100側で撮像されたRAW画像データについての水平-垂直の回転処理の情報がフレーム毎に管理されることで、フレーム毎に、その水平垂直回転処理を反映した適切な補正パラメータを算出できる。
【0169】
実施の形態では、RAW画像データのフレーム毎の画像の認識情報を保存する第3処理を行う例を挙げた。つまり
図5の手順ST13における認識情報の保存の処理である。
これによりフレーム毎の撮像画像の認識情報、例えば被写体の種別、シーン種別、構図などに関する情報を管理でき、その後の処理に利用できるようになる。例えば歪補正パラメータの算出や色調整処理、シェーディング補正処理、輝度調整処理、などの各種画像処理に認識情報を利用できる。
【0170】
実施の形態では、認識情報は画像の被写体についての物体認識の結果を示す情報である例を挙げた。
撮像デバイス100側で撮像されたRAW画像の被写体の物体認識結果、例えばDNN処理の結果がフレーム毎に管理されることで、フレーム毎に、その認識結果に応じた適切な歪補正パラメータを算出できる。例えば
図12,
図13で述べたように立体物に応じて歪補正パラメータの算出方式を切り替えることで、広角ひずみが生じないような歪補正パラメータを算出できるようになる。
【0171】
実施の形態では、個体情報を用いて歪補正パラメータを算出する第4処理を行う例を挙げた。つまり
図5の手順ST14の処理である。
図12で説明したように、個体情報としての光学中心の情報を用いて歪補正パラメータ(エッジ用、RAW用)を算出する。これによりRAW画像について、その撮影元である撮像デバイス100に応じた歪補正パラメータを算出できる。
【0172】
実施の形態では、個体情報及び撮影情報を用いて歪補正パラメータを算出する例を挙げた。
図12のステップS302で撮影情報を反映した歪補正パラメータ(RAW用)を算出している。これによりクラウド側で、フレーム毎の撮影情報を反映させた歪補正ができるようになる。
【0173】
実施の形態では、個体情報及び認識情報を用いて歪補正パラメータ算出する例を挙げた。
図12のステップS304で認識情報を反映した歪補正パラメータ(RAW用)を算出している。これによりクラウド側で、フレーム毎の画像の認識情報を反映させた歪補正ができるようになる。例えば像高の高い箇所に立体物の存在によって広角歪みが生じないような歪補正パラメータを算出することができる。
【0174】
実施の形態では、第4処理で算出した歪補正パラメータを用いてRAW画像データを現像する第5処理を行う例を挙げた。つまり
図5の手順ST15の処理である。
即ちクラウド側の情報処理装置103において、
図6や
図14における現像処理46を行う。これによりエッジ側で撮像したRAW画像について、クラウド側で視認可能な画像データ、例えばJPEG画像データやビットマップ画像データなどを生成し、ユーザに提供することができる。
【0175】
なお
図6や
図14で説明したクラウド側の処理は、1つの情報処理装置103で行われてもよいし、複数の情報処理装置103によって分散されて実行されてもよい。
第1処理(手順ST6)、第2処理(手順ST13の撮影情報の保存)、第3処理(手順ST13の認識情報の保存)、第4処理(手順ST14)、第5処理(手順ST15)は、それぞれが、もしくは一部が、別体の情報処理装置103によって実行されてもよい。
運用段階の第2処理から第5処理は、時系列的に連続して行われるものでもよいし、連続的に行われなくてもよい。
【0176】
本開示の技術は、クラウドコンピューティングに限らず、撮像装置(カメラ)と別体の情報処理装置でRAW画像を扱う場合に広く適用できる。
例えばデジタルカメラと有線又は無線でデータ通信可能に接続される情報処理装置、画像処理装置、画像編集装置などにおいて、上述の実施の形態で説明したクラウド側の情報処理装置103と同様の処理を行うことができる。この場合も、RAW画像データに対して適切に歪補正や画像処理を行うことができるとともに、幾何変形パラメータ等をフレーム毎に記憶しなくてもよく、データ量の削減効果を得ることができる。
【0177】
実施の形態のプログラムは、上述の
図5,
図6,
図14で説明した情報処理方法を実現する処理を例えばCPU、DSP、GPU、GPGPU、AIプロセッサ等、或いはこれらを含むデバイスに実行させるプログラムである。
即ち実施の形態のプログラムは、RAW画像データの撮像を行う撮像デバイス100について、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、個体情報を撮像デバイス100に関連づけて記憶する処理を情報処理装置103に実行させるプログラムである。
このようなプログラムにより本開示でいう情報処理装置103を各種のコンピュータ装置により実現できる。
【0178】
これらのプログラムはコンピュータ装置等の機器に内蔵されている記録媒体としてのHDDや、CPUを有するマイクロコンピュータ内のROM等に予め記録しておくことができる。
あるいはまた、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、MO(Magneto Optical)ディスク、DVD(Digital Versatile Disc)、ブルーレイディスク(Blu-ray Disc(登録商標))、磁気ディスク、半導体メモリ、メモリカードなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
また、このようなプログラムは、リムーバブル記録媒体からパーソナルコンピュータ等にインストールする他、ダウンロードサイトから、LAN(Local Area Network)、インターネットなどのネットワークを介してダウンロードすることもできる。
【0179】
またこのようなプログラムによれば、本開示の情報処理装置の広範な提供に適している。例えばスマートフォンやタブレット等の携帯端末装置、携帯電話機、パーソナルコンピュータ、ゲーム機器、ビデオ機器、PDA(Personal Digital Assistant)等にプログラムをダウンロードすることで、これらの機器を本開示の情報処理装置として機能させることができる。
【0180】
なお、本明細書に記載された効果はあくまでも例示であって限定されるものではなく、また他の効果があってもよい。
【0181】
なお本技術は以下のような構成も採ることができる。
(1)
情報処理装置が、
RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する第1処理を行う
情報処理方法。
(2)
前記個体情報は、前記撮像デバイスの光学中心の情報である
上記(1)に記載の情報処理方法。
(3)
撮像デバイスの光学中心の情報を、撮像デバイスから受信した画像データを用いて算出して取得する
上記(2)に記載の情報処理方法。
(4)
前記個体情報は、前記撮像デバイスの画像処理に調整値の情報である
上記(1)から(3)のいずれかに記載の情報処理方法。
(5)
RAW画像データのフレーム毎の撮影情報を保存する第2処理を、さらに行う
上記(1)から(4)のいずれかに記載の情報処理方法。
(6)
前記撮影情報は、RAW画像データの切り出し位置情報である
上記(5)に記載の情報処理方法。
(7)
前記撮影情報は、RAW画像データの水平垂直回転情報である
上記(5)又は(6)に記載の情報処理方法。
(8)
RAW画像データのフレーム毎の画像の認識情報を保存する第3処理を、さらに行う
上記(1)から(7)のいずれかに記載の情報処理方法。
(9)
前記認識情報は画像の被写体についての物体認識の結果を示す情報である
上記(8)に記載の情報処理方法。
(10)
前記個体情報を用いて歪補正パラメータ算出する第4処理を、さらに行う
上記(1)から(9)のいずれかに記載の情報処理方法。
(11)
前記個体情報及び前記撮影情報を用いて歪補正パラメータ算出する第4処理を、さらに行う
上記(5)から(7)のいずれかに記載の情報処理方法。
(12)
前記個体情報及び前記認識情報を用いて歪補正パラメータ算出する第4処理を、さらに行う
上記(8)又は(9)に記載の情報処理方法。
(13)
前記第4処理で算出した歪補正パラメータを用いてRAW画像データを現像する第5処理を、さらに行う
上記(10)から(12)のいずれかに記載の情報処理方法。
(14)
RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する処理部を備えた
情報処理装置。
(15)
RAW画像データの撮像を行う撮像デバイスについて、RAW画像データの画像処理パラメータの設定に用いる個体情報を取得し、前記個体情報を前記撮像デバイスに関連づけて記憶する処理を
情報処理装置に実行させるプログラム。
【符号の説明】
【0182】
20 撮像ブロック
21 撮像部
22 撮像処理部
23 出力制御部
25 撮像制御部
30 信号処理ブロック
31 CPU
32 ISP
33 DSP
37 メモリ
41 データ分離処理
42 画像保存用DB
43 算出処理
44 情報保存用DB
45 歪補正パラメータ算出処理
46 現像処理
47 DB
71 CPU
100 撮像デバイス
101 センサ
102 アプリケーションプロセッサ
103 情報処理装置
104 ネットワーク
105 光学系