(57)【要約】【課題】画素ごとに設けられたカウンタ回路のうち、故障したカウンタ回路に対応する画素値の補正を可能にする撮像素子および撮像装置を提供すること。【解決手段】  撮像素子が有する複数の画素のそれぞれが、単一フォトンの入射を検出可能な光電変換部と、光電変換部が出力するパルスをカウントするカウンタとを有する。撮像素子はまた、画素アレイに含まれる複数のカウンタのうち、故障しているカウンタと、故障の内容についての情報であるカウンタ故障情報を記憶する不揮発性メモリを有する。【選択図】図９
2020010093.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素が配置された画素アレイであって、前記複数の画素のそれぞれが、単一フォトンの入射を検出可能な光電変換部と、前記光電変換部が出力するパルスをカウントするカウンタとを有する画素アレイと、
前記画素アレイに含まれる複数のカウンタのうち、故障しているカウンタと、故障の内容についての情報であるカウンタ故障情報を記憶する記憶手段と、
を有することを特徴とする撮像素子。
【請求項２】
前記故障の内容が、故障しているビット位置であることを特徴とする請求項１に記載の撮像素子。
【請求項３】
さらに、前記カウンタ故障情報に基づいて、故障しているカウンタのカウント値を補正するための補正情報を生成して出力する出力手段を有することを特徴とする請求項１または２に記載の撮像素子。
【請求項４】
前記故障の内容が、故障しているビット位置であり、前記出力手段は、ビット位置（ｎ＋１）についての補正の強さが、ビット位置ｎについての補正の強さ以上となるような補正情報を生成することを特徴とする請求項３に記載の撮像素子。
【請求項５】
前記出力手段は、故障しているカウンタを有する画素に設けられているカラーフィルタの色が赤または青の場合には、緑である場合よりも補正が強くなるような補正情報を生成することを特徴とする請求項４に記載の撮像素子。
【請求項６】
前記カウンタ故障情報は、前記撮像素子の製造時におけるテスト結果に基づいて記憶されることを特徴とする請求項１から５のいずれか１項に記載の撮像素子。
【請求項７】
複数のカウンタを直列に接続する、故障検出用の経路を有することを特徴とする請求項１から６のいずれか１項に記載の撮像素子。
【請求項８】
前記光電変換部と前記カウンタとが、別個のチップに実装された積層型撮像素子であることを特徴とする請求項１から７のいずれか１項に記載の撮像素子。
【請求項９】
請求項３から５のいずれか１項に記載の撮像素子と、
前記撮像素子から画素データとして読み出した前記カウント値を、前記補正情報に基づいて補正する補正手段と、
を有することを特徴とする撮像装置。
【請求項１０】
前記補正手段は、前記カウント値と補正データとを、前記補正情報に基づく重みを用いて重み付け加算することにより前記カウント値を補正することを特徴とする請求項９に記載の撮像装置。
【請求項１１】
複数の画素が配置された撮像素子であって、前記複数の画素のそれぞれが、単一フォトンの入射を検出可能な光電変換部と、前記光電変換部が出力するパルスをカウントするカウンタとを有する撮像素子と、
前記撮像素子が有する複数のカウンタのうち、故障しているカウンタと、故障の内容についての情報であるカウンタ故障情報を記憶する記憶手段と、
前記カウンタ故障情報に基づいて、前記故障しているカウンタを有する画素から読み出された画素データを補正する補正手段と、
を有することを特徴とする撮像装置。
【請求項１２】
前記故障の内容が、故障しているビット位置であることを特徴とする請求項１１に記載の撮像装置。
【請求項１３】
前記補正手段は、ビット位置（ｎ＋１）についての補正の強さが、ビット位置ｎについての補正の強さ以上となるように前記画素データを補正することを特徴とする請求項１２に記載の撮像装置。
【請求項１４】
前記補正手段は、故障しているカウンタを有する画素に設けられているカラーフィルタの色が赤または青の場合には、緑である場合よりも強く補正することを特徴とする請求項１３に記載の撮像装置。
【請求項１５】
前記補正手段は、前記画素データと補正データとを、前記カウンタ故障情報に基づく重みを用いて重み付け加算することにより前記画素データを補正することを特徴とする請求項１１から１４のいずれか１項に記載の撮像装置。
【請求項１６】
撮像装置が有するコンピュータを、請求項１０から１５のいずれか１項に記載の撮像装置の補正手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像素子および撮像装置に関する。
【背景技術】
【０００２】
例えばアバランシェフォトダイオード（ＡＰＤ）を受光素子として用い、フォトンの入射によって発生する電圧パルスの数をカウントすることで、入射光量をデジタル値として取得可能なフォトンカウンティング式撮像素子が知られている（特許文献１）。
【０００３】
フォトンカウンティング式撮像素子は、受光素子に入射した光量に相当するデジタル値を直接取得であり、アナログ信号の伝送や増幅を必要としない。そのため、アナログ信号の伝送や増幅に伴うランダムノイズ、固定ノイズが発生しない。デジタル値に含まれるノイズ成分は画素内で発生した光ショットノイズと暗電流のみであるため、特に低照度環境下でＳＮ比の高い画像を得ることができる。
【０００４】
しかしながら、フォトンカウンティング式撮像素子は、電圧パルスの数をカウントするカウンタ回路（カウンタ、メモリ、比較器など）を画素ごとに設ける必要があり、画素あたりの回路規模が増大する。そのため、産業用カメラのように、画素の多さや装置の小型化に対する要求が厳しくない分野で用いられるに留まっていた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平７−６７０４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
近年、複数のＩＣチップを積層する３次元実装技術を応用し、撮像素子のチップと、Ａ／Ｄ変換回路やメモリなどの周辺回路を実装したチップを積層させて同一パッケージに収容した多層型または積層型撮像素子が実現されている。したがって、撮像素子のチップと、カウンタ回路のチップとを別個に形成し、３次元実装することで、フォトンカウンティング式撮像素子の小型化や高画素化を実現することが考えられる。
【０００７】
しかし、例えば２千万画素のフォトンカウンティング式撮像素子を実現する場合、１チップに２千万のカウンタ回路を形成する必要があるため、全てのカウンタ回路を設計通りに製造することは困難である。一般的なロジックＬＳＩでは、製造時の検査工程において故障検出を行い、一か所でも故障が検出されたチップは不良品として廃棄している。しかし、フォトンカウンティング式撮像素子のカウンタ回路を形成したチップについて、正常に動作しないカウンタ回路が１つでもあれば廃棄とすると、チップの製造歩留まりが大幅に低下することが想定される。
【０００８】
本願発明は、このような、今後発生することが想定される課題を緩和することを目的としている。具体的には、本発明は、画素ごとに設けられたカウンタ回路のうち、故障したカウンタ回路に対応する画素値の補正を可能にする撮像素子および撮像装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の目的は、複数の画素が配置された画素アレイであって、複数の画素のそれぞれが、単一フォトンの入射を検出可能な光電変換部と、光電変換部が出力するパルスをカウントするカウンタとを有する画素アレイと、画素アレイに含まれる複数のカウンタのうち、故障しているカウンタと、故障の内容についての情報であるカウンタ故障情報を記憶する記憶手段と、を有することを特徴とする撮像素子によって達成される。
【発明の効果】
【００１０】
このような構成により、本発明によれば、画素ごとに設けられたカウンタ回路のうち、故障したカウンタ回路に対応する画素値の補正を可能にする撮像素子および撮像装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係る単位画素の構成例を示す図
【図２】実施形態に係るカウンタの故障検出方法を説明するための図
【図３】実施形態に係る撮像素子の構成例を示す図
【図４】実施形態に係る撮像装置の機能構成例を示すブロック図
【図５】実施形態に係るカウンタ故障情報のデータ構成例を示す図
【図６】第１実施形態における補正処理部の構成例を示す図
【図７】第１実施形態に係るデコーダの動作を説明するためのタイミングチャート
【図８】第１実施形態に係る重み制御の例を示す図
【図９】第２実施形態に係る撮像装置の機能構成例を示すブロック図
【図１０】第２実施形態に係る重み制御の例を示す図
【図１１】第２実施形態に係るフラグ付加部の構成例を示す図
【図１２】第２実施形態のフラグ付き画像データのデータ構成例を示す図
【図１３】第２実施形態の補正処理部の構成例を示す図
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して、本発明をその例示的な実施形態に基づいて詳細に説明する。なお、説明する実施形態は単なる例示であり、本発明の範囲を限定するものではない。本発明の範囲は、特許請求の範囲の記載によって定められる。例えば、以下では単一フォトンの入射を検出可能な光電変換素子を有するフォトンカウンティング式の撮像素子を用いた撮像装置に関する実施形態を説明する。しかし、本発明はフォトンカウンティング式の撮像素子を利用可能な、すなわち撮影機能を有しうる任意の電子機器において実施可能である。このような電子機器には、デジタルカメラやデジタルビデオカメラといった撮像装置はもちろん、パーソナルコンピュータ、タブレット端末、携帯電話機、ゲーム機、ドライブレコーダ、ロボット、ドローンなどが含まれるが、これらに限定されない。
【００１３】
●（第１実施形態）
図１は、本実施形態に係るフォトンカウンティング式撮像素子（以下、単に撮像素子と呼ぶ）が有する画素の構成例を示す回路図である。撮像素子は、図１に示す構成の画素（単位画素）が複数配置された画素アレイを有する。
【００１４】
画素１００は、アバランシェフォトダイオード（ＡＰＤ）１０１、クエンチ抵抗１０２、波形整形回路１０３、加算器１０４、リセット付きフリップフロップ（ＦＦ）回路１０５（以下、単にＦＦ１０５と呼ぶ）により構成される。本実施形態においてＦＦ１０５は、１２ビットの値を保持、出力できるように構成されている。
【００１５】
ＡＰＤ１０１にはクエンチ抵抗１０２を介して降伏電圧以上のバイアス電圧ＶＡＰＤが印加されている。この状態でＡＰＤ１０１に光子が入射すると、アバランシェ増倍によって大きな光電流が流れ、クエンチ抵抗１０２で電圧降下が発生する。これにより、ＡＰＤ１０１に印加されるバイアス電圧ＶＡＰＤが低下し、バイアス電圧ＶＡＰＤが降伏電圧まで降下するとアバランシェ増倍は停止する。その結果、光電流が流れなくなり、ＡＰＤ１０１には再びバイアス電圧ＶＡＰＤが印加される状態に戻る。クエンチ抵抗１０２はＡＰＤ１０１のアバランシェ増倍を停止するための抵抗素子である。クエンチ抵抗１０２はトランジスタの抵抗成分を利用して実現してもよい。
【００１６】
波形整形回路１０３は、ＡＰＤ１０１とクエンチ抵抗１０２との接続点の電圧を増幅したのちにエッジ検出することにより、光子の入射によって生じる電圧変化から電圧パルスを生成する。このように、ＡＰＤ１０１、クエンチ抵抗１０２、および波形整形回路１０３は、単一フォトンの入射を検出可能な光電変換部を形成する。あるいは、ＡＰＤ１０１、クエンチ抵抗１０２、および波形整形回路１０３は、光子の入射の有無を電圧パルスに変換することにより、１ｂｉｔ型ＡＤ変換器を形成するとも言える。
【００１７】
加算器１０４およびＦＦ１０５は、波形整形回路１０３が生成する電圧パルスを計数するカウンタを構成する。そして、ＦＦ１０５から１２ビットの計数値を計数結果出力１０６として出力する。したがって、露光期間中に受光素子（ＡＰＤ１０１）に入射した光量に相当する１２ビットデジタル値を出力する。なお、ＦＦ１０５が保持する計数値は、リセット入力１０９からのリセット信号によってリセットすることができる。
【００１８】
ＦＦ１０５のテスト入力１０７およびテスト出力１０８は、カウンタの故障を検出するためのテストデータの入力および出力である。チップ製造後のテスト工程において、各画素にはテスト入力１０７を通じて、ＦＦ１０５の記憶ビット数に等しい長さのシリアルテストデータを順次入力する。そして、１サイクルのカウント動作を実行したのち、テスト出力１０８を通じてＦＦ１０５からシリアルデータを読み出し、正常動作時に出力されるべきデータと比較する。このテスト工程により、各カウンタの動作が正常か否か、また異常である場合にはどのビットに異常が発生しているかを特定することができる。
【００１９】
図２に示す、画素１００が４ビットのカウンタを有する場合の例を用いて、上下に隣接する画素１００−１，１００−３のカウンタの故障を検出する方法について説明する。本実施形態では、図２に示す様に、複数のカウンタを直列に接続する故障検出用の経路を通じてテストを行う。ここでは、画素１００−１のカウンタ（ＦＦ１０５）のビット２の配線が電源にショートしており、故障しているものとする。テストを行う場合には、ＴＧ２０１を通じて対象の画素のＳｃａｎ＿Ｔｅｓｔ＿Ｍｏｄｅをハイレベル（論理１）とする。
【００２０】
そして、テスト入力１０７から、シリアル入力”００００ ００００”を与えて、ＦＦ１０５の各ビットを０にセットする。その後、Ｓｃａｎ＿Ｔｅｓｔ＿Ｍｏｄｅをローレベル（論理０）に戻し、１サイクル動作させる（すなわち、個々のカウンタ値を＋１）させる。次いで、再びＳｃａｎ＿Ｔｅｓｔ＿Ｍｏｄｅをハイレベルにして、テスト出力１０８からカウンタ値をシリアルデータとして読み出す。
【００２１】
読み出したシリアルデータが“１０００ １０００”であればカウンタは正常と判断できる。ただし、図２に示した例では画素１００−１のカウンタのビット２が故障しているため、読み出されるシリアルデータは“１０００ １０１０”となる。このように読み出されたシリアルデータから、画素１００−１のビット２が故障していることが検出できる。なお、ここで例示したテスト工程は、ロジックＬＳＩ製造後のテスト工程として公知のスキャン方式と同様であるため、詳細については説明を省略する。
【００２２】
なお、３次元実装を用いた積層型撮像素子を形成する場合、単位画素１００を構成する回路のうち、ＡＰＤ１０１、クエンチ抵抗１０２、および波形整形回路１０３を同一チップに実装し、加算器１０４およびＦＦ１０５を同一チップに実装することができる。なお、積層型撮像素子を形成するにあたり、各チップにどの回路を実装するかに特に制限は無いが、画素ごとに設けられる回路を複数のチップに分散して実装すると、実装面積の増加を抑制することができる。
【００２３】
図３は、図１に示した単位画素が２次元配置された画素アレイを有する撮像素子の模式的な回路構成例を示す図である。ここでは便宜上、画素アレイを４つの単位画素１００−１から１００−４で示しているが、実際には１千万以上の単位画素が配置されている。撮像素子２００は、画素アレイの他に、タイミング信号生成回路（ＴＧ）２０１、垂直走査回路２０２、垂直伝送路への出力スイッチ２０３、水平走査回路２０４、出力伝送路への出力スイッチ２０５、制御部２０６を有している。
【００２４】
なお、本実施形態において、画素アレイには所定のパターンを有するカラーフィルタが設けられている。ここでは、原色ベイヤ配列のカラーフィルタが用いられているものとする。したがって、各画素には、ベイヤ配列に従って、赤（Ｒ）、青（Ｂ）、または緑（Ｇ）のいずれかのカラーフィルタが設けられている。以下では、赤のフィルタが設けられた画素を、赤画素またはＲ画素と呼ぶ。他の色のフィルタが設けられた画素についても同様に呼称する。
【００２５】
ＴＧ２０１は、露光期間や転送期間などの開始や終了を制御するタイミング信号を生成し、垂直走査回路２０２、水平走査回路２０４、制御部２０６に供給する。
垂直走査回路２０２は、撮像期間が終了した行の画素に接続された出力スイッチ２０３に読出し信号ＲＥＡＤ＿ＥＮを供給する。出力スイッチ２０３はＲＥＡＤ＿ＥＮを受信するとオンし、対応する単位画素１００からの計数結果を垂直伝送路に出力する。
【００２６】
水平走査回路２０４は、出力伝送路への出力スイッチ２０５を制御して垂直伝送路を順次選択し、垂直走査回路２０２が読み出し信号ＲＥＡＤ＿ＥＮを供給した行の画素１００から得られた計数結果（画素データ）を、出力伝送路を介して外部に出力する。
【００２７】
制御部２０６はＴＧ２０１から供給されるタイミング信号に基づいて、露光期間が始まる前に画素１００の計数値をリセットする。
【００２８】
テスト入力２０７およびテスト出力２０８は、図１におけるテスト入力１０７およびテスト出力１０８と同様である。図３の例では、テストデータが単位画素１００−１のテスト入力１０７から供給され、単位画素１００−１のテスト出力１０８から出力される。このテスト出力１０８は単位画素１００−３にテスト入力として入力される。同様にして、テストデータは、単位画素１００−３から単位画素１００−４に入力され、最後に単位画素１００−４のテスト出力１０８を通じてテスト出力２０８として外部に出力される。ここでは４つの画素のカウンタを直列に接続する経路を用いてテストを行う例を示したが、より多くの画素を接続してテストを行ってもよい。
【００２９】
図３の例では、単位画素１００のカウンタを４つ直列に接続した回路に対して物理的故障を検出するため、１２ビット×４画素の計４８ビット長のシリアルテストデータを用いる。故障検出の原理はテストデータの長さに依存しない。４８ビットのテストデータと、正常動作時に出力されるべきデータとを照合することにより、どの画素のどのビットに物理的故障が生じているかを検出することができる。そして、テスト結果に基づいて、物理的故障が生じているカウンタ（画素）と、故障内容（ここでは故障しているビット位置）に関する情報（カウンタ故障情報）を、撮像素子２００の外部から参照可能な不揮発性メモリに保存しておくことができる。この不揮発性メモリは撮像素子２００の内蔵メモリであってもよいし、撮像素子２００を用いる電子機器が有するメモリであってもよい。故障を検出するためのテストおよびカウンタ故障情報の記憶は、例えば撮像素子２００もしくは撮像装置３００の製造時に実行することができる。
【００３０】
なお、カウンタ故障情報は、故障が検出されたカウンタごとに生成される。また、最後のカウンタ故障情報として、それ以降は故障が検出されたカウンタが存在しないことを示す特定のデータ（ＥＯＤデータと呼ぶ）を保存することができる。このように、撮像素子やそれを用いる電子機器の製造時に、カウンタ故障情報を記憶しておくことにより、故障が生じているカウンタの計数値を補正することが可能になる。補正処理の詳細については後述する。
【００３１】
図４は、本発明の実施形態に係る撮像素子を用いた撮像装置３００の機能構成例を示すブロック図である。
レンズユニット３０１は、撮影光学系であり、合焦距離を調整するためのフォーカシングレンズを含む光学レンズ群、絞り、フォースシングレンズや絞りの駆動など、光学系の制御を行うレンズ制御部などを有する。本実施形態においてレンズユニット３０１は撮像装置３００に固定されているものとするが、着脱可能であってもよい。また、絞りはシャッターを兼ねていてもよい。レンズユニット３０１は、撮像素子２００の撮像面に光学像を形成する。
【００３２】
システム制御部３０２は例えばＣＰＵのようなプログラマブルプロセッサを有し、不揮発性メモリ３０６に記憶されたプログラムをシステムメモリ３０８に読み込んで実行することにより、撮像装置３００の各部を制御し、撮像装置３００の機能を実現する。図においてシステム制御部３０２と接続されていないブロックについても、実際にはシステム制御部３０２の制御に従って動作する。システム制御部３０２は、画像処理部３０４から得られる評価値に基づいて自動焦点調節（ＡＦ）および自動露出制御（ＡＥ）処理を実行する。例えばシステム制御部３０２は、レンズユニット３０１のデフォーカス量を示す評価値に基づいて、光学系駆動部３０３を通じてレンズユニット３０１のフォーカシングレンズを駆動する。また、システム制御部３０２は、輝度に関する評価値に基づいて、絞り、シャッタースピード、撮影感度といった撮影条件を決定する。なお、システム制御部３０２は、コントラスト評価値に基づいて、コントラスト検出方式のＡＦ処理を実行してもよい。また、画像処理部３０４が顔領域など予め定められた被写体領域の検出を行う場合には、被写体領域が適正露出となるようにＡＥ処理を行ったり、被写体領域が合焦する様にＡＦ処理を行うことができる。
【００３３】
システム制御部３０２は、ＡＥ処理で決定した撮影条件や撮影モード（例えば静止画撮影モードか動画撮影モードか）などに応じて、撮像素子２００の露光期間や読み出し間隔など、撮像素子２００の駆動情報を決定し、ＴＧ２０１の動作を制御する。システム制御部３０２はまた、キーやボタンなどの入力デバイス群の総称である操作部３０９の操作を検出すると、操作に応じた処理を実行する。例えばシステム制御部３０２は、静止画撮影モードにおいて、シャッターボタンの半押しを検出すると、撮影準備指示と認識し、ＡＦおよびＡＥ処理を実行する。また、シャッターボタンの全押しを検出すると、撮影開始指示と認識し、静止画の撮影処理および記録処理を実行する。
【００３４】
補正処理部３０７は、不揮発性メモリ３０６に記憶されたカウンタ故障情報に基づいて、撮像素子２００が出力する画像データを補正し、画像処理部３０４に出力する。補正処理部３０７の動作の詳細については後述する。
【００３５】
画像処理部３０４は、補正処理部３０７から供給される画像データに対して、デモザイク（色補間）処理、ホワイトバランス調整処理、被写体検出処理、ＡＦ評価値算出処理、ＡＥ評価値算出処理などの画像処理を、撮影モードなどに応じて適用する。また、画像処理部３０４は、画像データの用途に応じて、スケーリング処理、符号化処理、復号処理、Ｄ／Ａ変換処理などを適用する。例えば、画像処理部３０４は、記録用の画像データに対しては符号化処理を適用したのち、記録形式に応じた付加情報を生成して画像データファイルを生成し、記録装置３０５に記録することができる。また、表示用の画像データについては、表示解像度に合わせるスケーリング処理を適用した後、Ｄ／Ａ変換して表示装置３１０に出力することができる。また、記録装置３０５から符号化された画像データを読み出した場合には、復号処理を適用することができる。なお、ここに列挙した処理は単なる例示であり、画像処理部３０４は他の処理を実行することもできる。画像処理部３０４はＡＳＩＣなどの専用ハードウェアによって実現されることが多いが、少なくとも一部の処理を画像処理部３０４もしくはシステム制御部３０２が有するマイクロプロセッサがプログラムを実行することによって実現してもよい。
【００３６】
記録装置３０５は記録媒体にデータを記録したり、記録媒体からデータを読み出したりする。記録媒体はメモリカードや磁気ディスクドライブなどであってよい。また、記録媒体は着脱可能であってもなくてもよい。
【００３７】
不揮発性メモリ３０６は、システム制御部３０２などのマイクロプロセッサが実行可能なプログラム、各種の設定値、ＧＵＩデータ、カウンタ故障情報などを記憶する。不揮発性メモリ３０６は書き換え可能であってよい。
【００３８】
操作部３０９は入力デバイス群の総称であり、ユーザが撮像装置３００に指示を入力するために用いる。シャッターボタン、動画撮影・停止ボタン、撮影モード切り換えダイヤル、方向キー、決定ボタン、メニューボタンなどが操作部３０９に含まれる入力デバイスの代表例である。表示装置３１０がタッチディスプレイの場合、タッチパネル部分は操作部３０９に含まれる。
【００３９】
システムメモリ３０８は、システム制御部３０２が実行するプログラムを読み込んだり、プログラムの実行に必要な情報を記憶したりする。また、システムメモリ３０８は、画像処理部３０４が画像データを一時的に記憶するバッファメモリとしても用いられる。
【００４０】
表示装置３１０は例えばＬＣＤや有機ＥＬディスプレイであり、撮像装置３００で撮影された画像や、撮像装置３００の情報、メニュー画面、記録媒体から再生された画像などの表示に用いられる。静止画撮影のスタンバイ時や動画記録中には撮影中の動画が表示装置３１０に実質的にリアルタイムに表示され、表示装置３１０は電子ビューファインダとして機能する。
便宜上図示していないが、撮像装置３００は、上述した機能ブロック以外にも、一般的なデジタルカメラが備える構成を備えている。
【００４１】
図５は不揮発性メモリ３０６に格納されているカウンタ故障情報のデータフォーマットの一例を示す図である。本実施形態は個々のカウンタ故障情報を２１ビットで構成し、ｂｉｔ０からｂｉｔ１５までの１６ビットを、カウンタが故障している画素間の距離情報に用いる。また、ｂｉｔ１６からｂｉｔ１９の４ビットを、カウンタの故障ビット位置を示すカウンタビット情報に用いる。また、ｂｉｔ２０はダミーフラグに用いる。ダミーフラグは、距離情報が１６ビットで表現できない（６５５３５画素を超える）場合に、距離情報（６５５３５画素）が表す画素のカウンタが故障していないことを示すために１に設定される。また、最後のカウンタ故障情報として保存されるＥＯＤデータは、ダミーフラグが１に設定され、距離情報やカウンタビット情報が存在しないデータであってよい。また、カウンタビット情報のビット数は、撮像素子２００が有するカウンタのビット数に応じて定めることができる。
【００４２】
次に、本実施形態の補正処理部３０７の機能構成例と動作例について図６〜図８を用いて説明する。
図６は、補正処理部３０７の機能構成例を示すブロック図である。また、図７は、撮像装置３００の起動時（Ｉｎｉｔ）からの、補正処理部３０７の動作タイミングを示すタイミングチャートである。
【００４３】
ＳＲＡＭ５０１は、撮像装置３００の起動時（図７の時刻ＩｎｉｔからＶｓｔａｒｔ１までの、Ｄａｔａ−Ｌｏａｄ期間）に、不揮発性メモリ３０６に格納されているカウンタ故障情報を、データ入力５０９経由で読み込んで記憶するためのバッファメモリである。また、ＳＲＡＭ５０１に読み込まれたカウンタ故障情報のうち、距離情報（ｂｉｔ０〜１５）は比較回路５０３に入力され、カウンタビット情報およびダミーフラグ（ｂｉｔ１６〜２０）はデコーダ５０４に入力される。
【００４４】
リセット入力５１０は、画像フレームの先頭のタイミング（図７のＶｓｔａｒｔ１）でシステム制御部３０２から入力され、カウンタ５０２をリセットする。カウンタ５０２は撮像素子２００から画素入力５０７として入力される画像データについて、１画素を１サイクルとしてカウントする。つまり、カウンタ５０２の計数値は入力される画素データが、フレームの先頭から何画素目であるかを示す。本実施形態においてカウンタ５０２は１６ビットカウンタであり、計数値は比較回路５０３に入力される。
【００４５】
比較回路５０３は、ｎ番目のカウンタ故障情報の距離情報Ｄｎ（ｎは１以上の整数）と、カウンタ５０２の計数値とを比較し、両者が一致したときに、デコーダ５０４に通知するとともに、カウンタ５０２をリセットする。比較回路５０３は、距離情報と計数値とが一致しない場合にはデコーダ５０４に対して通知はしない。
【００４６】
そして、デコーダ５０４（重み制御手段）は、通知を受信すると、ｎ番目のカウンタ故障情報のカウンタビット情報に基づく重みを決定し、重み付け加算回路５０６に与える。そして、デコーダ５０４は、ＳＲＡＭ５０１から次の（ｎ＋１番目の）カウンタ故障情報を読み出す。これにより、デコーダ５０４および比較回路５０３のカウンタ故障情報が更新される（図７のＰ１〜Ｐ４のそれぞれ）。
【００４７】
デコーダ５０４はカウンタ５０２から通知が入力されたサイクル（故障したカウンタ回路の出力である画素データ）について、ダミーフラグが設定されていない（１でない）場合、カウンタビット情報に基づいて重み付け加算回路５０６の重み付けを制御する。図７において、ダミーフラグの値はＤｕｍｍｙとして示している。例えば、Ｐ１のタイミングでデコーダ５０４が通知を受けた場合、デコーダ５０４はＶｓｔａｒｔ１のタイミングでＳＲＡＭ５０１から読み出したダミーフラグＤｕｍｍｙの値を確認する。同様に、Ｐ２のタイミングでデコーダ５０４が通知を受けた場合、デコーダ５０４はＰ１のタイミングでＳＲＡＭ５０１から読み出したダミーフラグＤｕｍｍｙの値を確認する。図７では、ＥＯＤデータを除くカウンタ故障情報が４つである場合の動作タイミングを示している。
【００４８】
デコーダ５０４は、カウンタ５０２から通知が入力されないサイクルについては、重み付け加算回路５０６に重みを与えないか、重み０を与える。いずれの場合も重み付け加算回路５０６による補正は行われない。また、ＳＲＡＭ５０１から読み出したカウンタ故障情報がＥＯＤデータであった場合、デコーダ５０４は次のフレームが開始されるまでＳＲＡＭ５０１からカウンタ故障情報の読み込みを行わず、また重み付け加算回路５０６に重みを与えないか、重み０を与える。
【００４９】
重み付け加算回路５０６は、画素入力５０７からの画素データ（入力画素データ）と、補正データ生成回路５０５からの補正データとを、以下の式に基づいて重み付け加算し、画素データを補正する。
補正後の画素データ＝（１−ｗ／１００）×入力画素データ＋ｗ／１００×補正データ
ここで、ｗ［％］（０≦ｗ≦１００）はデコーダ５０４から与えられる重み（または補正度合い）である。なお、重み付け加算回路５０６は、デコーダ５０４から重みを与えられないサイクルおよび、重み０を与えられたサイクルについては、入力画素データをそのまま出力する。次のフレームが開始されると（図７の時刻Ｖｓｔａｒｔ２）、デコーダ５０４はＳＲＡＭ５０１から最初のカウンタ故障情報を読み出す。
【００５０】
補正データ生成回路５０５は画素入力５０７からの画素データの周辺の所定範囲の画素データを用いて、補正データ（補正値）を生成する。周辺画素データから補正データを生成する方法に特に制限はなく、例えば周辺画素データの平均値を補正データとしてもよい。また、補正対象の画素データも補正データの生成に用いてもよい。なお、図６では図面および説明を簡単にするために記載していないが、例えば補正データの生成に、補正対象の画素データより後に入力される画素データを用いる場合には、入力される画素データを一定量蓄積するバッファなどを用いる。また、比較回路５０３やデコーダ５０４の処理タイミングについても調整する。
【００５１】
ここで、デコーダ５０４による重み付け制御について、図８を用いて説明する。図８は、デコーダ５０４が重み付け加算回路５０６に対して設定する重みの例を示す図である。本実施形態において、デコーダ５０４は、カウンタのどのビットが故障しているかに応じて、重みを変化させる。ここでは、撮像素子２００は１２ビットカウンタを用いているため、図８の横軸の故障ビット位置は、ｂｉｔ−０からｂｉｔ−１１までである。
【００５２】
ここで、図８（Ａ）はＧ画素用の重み、図８（Ｂ）はＲ画素およびＢ画素用の重みの例をそれぞれ示している。いずれも、基本的には故障ビット位置ｎについての重み（補正度合い）は、故障ビット位置（ｎ−１）についての重み以上とする。これは、上位ビットの故障ほど、正しいカウント値との差が大きくなるためである。一方、カラーフィルタのパターンや人間の視覚特性により、Ｇ画素と比較してＲ画素やＢ画素については補正による画質劣化が目立たない。そのため、同じ故障ビット位置に対する重みは、Ｇ画素よりもＲ画素およびＢ画素に対する重みを大きく（補正を強く）している。例えばＧ画素については、故障ビット位置が最下位ビット近傍（ここではビット０または１）の場合には、補正度合いを０％として、補正は行わない。
【００５３】
なお、個々の画素に設けられたカラーフィルタの色（以下、画素の色という）は、予め不揮発性メモリ３０６に記憶しておき、システム制御部３０２からデコーダに通知することができるが、必須ではない。画素の位置と色との対応は固定かつ規則的であるため、最初に読み出される画素の色が分かれば、その後読み出される画素の色も特定できる。したがって、例えば最初に読み出される画素の位置と、読み出す順序が固定であれば、情報を記憶しておかなくても、個々の画素の色は特定できる。あるいは、システム制御部３０２から、最初に読み出す画素の色の情報をデコーダ５０４に通知し、その後はデコーダ５０４がカラーフィルタの規則性に従って個々の画素の色を特定してもよい。
【００５４】
なお、画素の色によって重みを異ならせることは必須ではなく、全ての画素について、故障ビット位置に応じた共通の重みを適用してもよい。この場合も、基本的には故障ビット位置ｎについての重みは、故障ビット位置（ｎ−１）についての重み以上とする。
【００５５】
図７において、Ｂｉｔは故障ビット位置を示している。したがって、デコーダ５０４は、例えば時刻Ｐ１では、故障ビット位置４（および必要に応じて画素の色）に対応した重みを重み付け加算回路５０６に与える。同様に、デコーダ５０４は、時刻Ｐ３では故障ビット位置７、時刻Ｐ４では故障ビット位置１１に対応した重みを重み付け加算回路５０６に与える。一方、時刻Ｐ２についてはダミーフラグが１であるため、対象画素は補正すべきでない。そのため、デコーダ５０４は補正度合い０％に相当する重み（すなわち、補正データに対する重み０）を、重み付け加算回路５０６に与える。
【００５６】
時刻Ｐ４でＥＯＤデータを読み出すと、デコーダ５０４は現フレームについての画素データの読み出しが完了するまで、カウンタ故障情報の読み出しおよび重み付け加算回路５０６への重みの提供を停止する（重み０を提供し続けてもよい）。
【００５７】
以上説明したように、本実施形態によれば、フォトンカウンティング式の撮像素子において画素ごとに設けられたカウンタ回路のうち、故障が検出されたカウンタ回路と、故障しているビット位置とに関するカウンタ故障情報を保持するようにした。これにより、読み出した画素データのうち、故障したカウンタに対応する画素データを補正することが可能になる。そのため、膨大な数のカウンタ回路が実装されるチップの歩留まりを高めることが可能になる。また、故障しているビット位置に応じた度合い（強さ）で補正することにより、故障の影響の大きさに応じて適切な補正が可能となる。さらに、補正する画素の色に応じて度合い（強さ）を異ならせることにより、補正による画像劣化を目立たなくすることができる。また、本実施形態は、積層型撮像素子として実施することにより、数千万画素以上の撮像素子、代表的にはＡＰＳ−Ｃサイズやフルサイズ以上の大型撮像素子に好適に実施可能である。
【００５８】
●（第２実施形態）
次に、本発明の第２実施形態について説明する。図９は、本実施形態に係る撮像装置８００の構成例を示すブロック図である。図９において、第１実施形態で説明した撮像装置３００と同じ構成要素については図４および図６と同じ参照数字を付し、説明を省略する。
【００５９】
撮像装置８００は、第１実施形態において撮像装置３００が撮像素子２００の外部に有していた構成の一部を、撮像素子２００と同一のパッケージ（撮像素子パッケージ８０１）に封入されるチップに実装している。また、撮像素子パッケージ８０１から読み出した画素データを補正するための重みに関する情報を、撮像素子パッケージ８０１内で画素データに付与するための構成を有している。なお、撮像素子パッケージ８０１内で３次元実装するチップの数や、各チップにどの回路を実装するかについては特に制限はない。
【００６０】
本実施形態において、フラグ付加部８０２は、撮像素子２００が出力する画素データのそれぞれに対し、デコーダ８０４の指示に応じた補正情報（補正フラグ）を付加してデータ送信部８０３に出力する。デコーダ８０４は、重みの代わりに補正フラグをフラグ付加部８０２に与えるほかは、第１実施形態のデコーダ５０４と同様である。
【００６１】
つまり、デコーダ８０４は、故障しているカウンタに対応する画素データに対して、故障ビット位置に応じた補正度合い（重み）を決定し、決定した補正度合いを示す補正フラグをフラグ付加部８０２に与える。故障ビット位置と補正度合いとの関係は第１実施形態と同じであってもよいが、ここでは付加するビット数を少なくするため、補正度合いの種類を減らしている。具体的には、２ビットの補正フラグで表現できるよう、図１０に示す通り、補正度合いを０％、２５％、５０％、１００％の４種類とした。また、画素の色については考慮していない。なお、ダミーフラグが１である場合に、補正度合いを０％とする点は第１実施形態と共通である。
【００６２】
図１１はフラグ付加部８０２の回路構成例を示す図である。フラグ付加部８０２は、撮像素子２００が出力するｍビット（ここではｍ＝１２）の画素データ９０１に、セレクタ９０４が出力する２ビットの補正フラグを付加して、（ｍ＋２）ビットのフラグ付き画素データ９０３としてデータ送信部８０３に出力する。図１２に、フラグ付き画素データのデータ構成例を示す。ここでは補正フラグを最上位２ビットとして付加するものとしたが、最下位２ビットとして付加してもよい。また、画素データと補正フラグとの関連づけができれば、補正フラグを画素データと別個に出力してもよい。
【００６３】
セレクタ９０４は、４種類の補正フラグのうち、デコーダ８０４から与えられる補正度合い９０２に応じた１つを出力する。ここでは、セレクタ９０４は、補正度合いが０［％］の場合は”００”、補正度合いが２５［％］の場合は”０１”、補正度合いが５０［％］の場合は”１０”、補正度合いが１００［％］の場合は”１１”の補正フラグを出力する。
【００６４】
データ送信部８０３は、フラグ付き画素データ９０３を、撮像素子パッケージ８０１の外部回路であるデータ受信部８０５に送信する。データ受信部８０５は、フラグ付き画像データ９０３を補正処理部８０６に出力する。
【００６５】
図１３は本実施形態の補正処理部８０６の機能構成例を示すブロック図である。補正処理部８０６は、データ受信部８０５から受信した１４ビットのフラグ付き画像データ１１０１を受信する。１４ビットのうち最上位２ビットはフラグ検出部１１０３へ、残りの１２ビットは補正データ生成回路５０５に入力される。
【００６６】
フラグ検出部１１０３はフラグ付加部８０２のセレクタ９０４と逆の動作を行い、２ビットのフラグを補正度合いに変換して重み付け加算回路５０６に与える。すなわち、フラグ検出部１１０３は、補正フラグが”００”であれば０［％］、”０１”であれば２５［％］、”１０”であれば５０［％］、”１１”であれば１００［％］の補正度合いを重み付け加算回路５０６に与える。補正データ生成回路５０５および重み付け加算回路５０６の動作は第１実施形態と同様であるため、説明を省略する。
【００６７】
本実施形態においても、第１実施形態と同様の効果を実現できる。また、本実施形態では、撮像素子パッケージがカウンタ故障情報を保持し、必要は補正量に関する情報（補正フラグ）を付加した画素データを出力するので、撮像素子のユーザがカウンタの故障検出を行う必要が無い。そのため、撮像素子単体での流通に適しているという利点がある。なお、補正フラグのビット数を増やしたり、画素の色を考慮したりして、よりきめ細かい補正制御を行ってもよい。
【００６８】
（その他の実施形態）
本発明は、上述の実施形態における少なくとも補正処理部の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６９】
１００…単位画素、１０４…加算器、１０５…ＦＦ、２００…撮像素子、３０２…システム制御部、３０６…不揮発性メモリ、３０７、８０６…補正処理部、５０４、８０４…デコーダ、５０５…補正データ生成回路、５０６…重み付け加算回路
【図１】
2020010093.tif 000003
【図２】
2020010093.tif 000004
【図３】
2020010093.tif 000005
【図４】
2020010093.tif 000006
【図５】
2020010093.tif 000007
【図６】
2020010093.tif 000008
【図７】
2020010093.tif 000009
【図８】
2020010093.tif 000010
【図９】
2020010093.tif 000011
【図１０】
2020010093.tif 000012
【図１１】
2020010093.tif 000013
【図１２】
2020010093.tif 000014
【図１３】
2020010093.tif 000015