JP7552002B2 - Light level adaptive filter and method - Google Patents
Light level adaptive filter and method Download PDFInfo
- Publication number
- JP7552002B2 JP7552002B2 JP2021071592A JP2021071592A JP7552002B2 JP 7552002 B2 JP7552002 B2 JP 7552002B2 JP 2021071592 A JP2021071592 A JP 2021071592A JP 2021071592 A JP2021071592 A JP 2021071592A JP 7552002 B2 JP7552002 B2 JP 7552002B2
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- noise
- frame
- signal level
- filter
- 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.)
- Active
Links
- 230000003044 adaptive effect Effects 0.000 title claims description 209
- 238000000034 method Methods 0.000 title claims description 132
- 230000002123 temporal effect Effects 0.000 claims description 73
- 238000001914 filtration Methods 0.000 claims description 40
- 230000008859 change Effects 0.000 description 102
- 230000008569 process Effects 0.000 description 100
- 238000003384 imaging method Methods 0.000 description 86
- 239000002131 composite material Substances 0.000 description 35
- 230000001419 dependent effect Effects 0.000 description 32
- 230000006870 function Effects 0.000 description 25
- 238000010606 normalization Methods 0.000 description 21
- 238000012986 modification Methods 0.000 description 15
- 230000004048 modification Effects 0.000 description 15
- 230000002146 bilateral effect Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 9
- 230000000712 assembly Effects 0.000 description 7
- 238000000429 assembly Methods 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000001356 surgical procedure Methods 0.000 description 5
- 241000023320 Luma <angiosperm> Species 0.000 description 4
- 238000012886 linear function Methods 0.000 description 4
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000012636 effector Substances 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/60—Noise processing, e.g. detecting, correcting, reducing or removing noise
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/10—Image enhancement or restoration using non-spatial domain filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/70—SSIS architectures; Circuits associated therewith
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20004—Adaptive image processing
- G06T2207/20012—Locally adaptive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
- G06T2207/20028—Bilateral filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20182—Noise reduction or smoothing in the temporal domain; Spatio-temporal filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20224—Image subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Image Processing (AREA)
- Life Sciences & Earth Sciences (AREA)
- Surgery (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Studio Devices (AREA)
- Animal Behavior & Ethology (AREA)
- Public Health (AREA)
- Heart & Thoracic Surgery (AREA)
- Medical Informatics (AREA)
- Molecular Biology (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Veterinary Medicine (AREA)
- Pathology (AREA)
- Endoscopes (AREA)
- Radiology & Medical Imaging (AREA)
- Gynecology & Obstetrics (AREA)
- Picture Signal Circuits (AREA)
- Closed-Circuit Television Systems (AREA)
Description
関連出願
本特許出願は、2016年1月29日に出願された、”LIGHT LEVEL ADAPTIVE FILTER AND METHOD”という表題の米国仮特許出願第62/288,956号について優先権及び出願日の利益を主張するものであり、この文献はその全体が参照により本明細書に組み込まれる。
RELATED APPLICATIONS This patent application claims the benefit of priority and the filing date of U.S. Provisional Patent Application No. 62/288,956, entitled "LIGHT LEVEL ADAPTIVE FILTER AND METHOD," filed on January 29, 2016, which is incorporated herein by reference in its entirety.
本発明は、概して、コンピュータ支援手術システムのための画像パイプラインに関し、より具体的には、画像パイプラインに使用される適応フィルタに関する。 The present invention relates generally to image pipelines for computer-assisted surgery systems, and more specifically to adaptive filters used in image pipelines.
手術システム100は、内視鏡撮像システム192、外科医コンソール194(マスター)、及び患者側サポートシステム110(スレーブ)を含むコンピュータ支援手術システムであり、それら全てが、有線(電気又は光)又は無線接続196によって相互接続される。1つ又は複数の電子データプロセッサは、システム機能を提供するために、これらの主要な要素内に様々に配置してもよい。その例が、米国特許出願公開第2008/0065105号に開示されており、この文献は参照により本明細書に組み込まれる。
The
患者側サポートシステム110は、エントリガイドマニピュレータ130を含む。少なくとも1つの手術装置アセンブリが、エントリガイドマニピュレータ130に結合される。各手術装置アセンブリは、手術用器具又は画像取込みユニットのいずれかを順に含む器具を含む。例えば、図1において、1つの手術装置アセンブリは、シャフト137-1を有する器具135-1と、外科的処置中にエントリガイド115を通って延びる画像取込みユニットとを含む。器具135-1は、時には、内視鏡、又は代替的に撮像システム装置又はカメラ器具と呼ばれる。典型的には、エントリガイド115は、複数のチャネルを含む。
The patient
撮像システム192は、例えば、手術部位の取り込まれた内視鏡撮像データ及び/又は患者の外部の他の撮像システムからの手術前又はリアルタイムの画像データに対して画像処理機能を実行する。撮像システム192は、処理された画像データ(例えば、手術部位の画像だけでなく、関連する制御及び患者情報)を外科医コンソール194の外科医に出力する。いくつかの態様では、処理された画像データは、手術室の他の関係者又は手術室から離れた1つ又は複数の位置で見ることができるようにオプションの外部モニタに出力される(例えば、別の場所にいる外科医がビデオを監視してもよく、生のフィード(feed)ビデオをトレーニング等のために使用してもよい)。
The
外科医コンソール194は、外科医が、器具、エントリガイド(複数可)、及び撮像システム装置(これらはまとめてスレーブ呼ばれる)を操縦するのを可能にする複数の自由度(DOF)の機械的入力装置(マスター)を含む。いくつかの態様では、これらの入力装置は、器具及び手術装置アセンブリの構成要素から外科医に触覚フィードバックを提供することができる。外科医コンソール194はまた、ディスプレイ上の画像が、一般に、ディスプレイスクリーンの後ろ/下で作業する外科医の手に対応する距離に焦点合わせするように位置付けされた立体ビデオ出力ディスプレイを含む。これらの態様は、米国特許第6,671,581号により十分に論じられており、この文献は参照により本明細書に組み込まれる。 The Surgeon Console 194 includes multiple degrees of freedom (DOF) mechanical input devices (masters) that allow the surgeon to steer the instruments, entry guide(s), and imaging system devices (collectively referred to as slaves). In some aspects, these input devices can provide tactile feedback to the surgeon from the instruments and components of the surgical device assembly. The Surgeon Console 194 also includes stereoscopic video output displays positioned such that the images on the displays are generally focused at a distance corresponding to the surgeon's hands working behind/below the display screen. These aspects are discussed more fully in U.S. Pat. No. 6,671,581, which is incorporated herein by reference.
器具の挿入中の制御は、例えば、外科医が画像内に示された器具をマスターの一方又は両方で動かすことによって達成され得る。外科医は、マスターを使用して、器具を画像の左右に動かし、外科医の方に器具を引っ張る。マスターの動きによって、撮像システム及び関連する手術装置アセンブリが命令され、撮像システム及び関連する手術装置アセンブリが、出力ディスプレイ上の固定された中心点に向けて操縦され、且つ患者の内部に前進される。 Control during insertion of the instrument may be achieved, for example, by the surgeon moving the instrument shown in the image with one or both of the masters. The surgeon uses the master to move the instrument to the left or right of the image, pulling the instrument toward the surgeon. The movement of the master commands the imaging system and associated surgical device assembly to steer toward a fixed center point on the output display and advance inside the patient.
一態様では、カメラ制御装置は、マスターのハンドルを移動させる方向と同じ方向に画像が移動するように、マスターが画像に固定されているという印象を与えるように設計されている。この設計は、外科医がカメラ制御を終了したときに、器具を制御するための正しい位置にマスターを置き、その結果、この設計は、器具制御を開始又は再開する前に、マスターを元の位置にクラッチ接続(係合解除)、移動、及びクラッチ解除(係合)する必要性を回避する。 In one aspect, the camera control device is designed to give the impression that the master is fixed in the image so that the image moves in the same direction as the master handle is moved. This design places the master in the correct position for instrument control when the surgeon ends camera control, and as a result, this design avoids the need to clutch (disengage), move, and declutch (engage) the master back to its original position before starting or resuming instrument control.
患者側サポートシステム110のベース101は、受動的な制御されないセットアップアームアセンブリ120と、能動的に制御されるマニピュレータアームアセンブリ130とを含むアームアセンブリを支持する。能動的に制御されるマニピュレータアームアセンブリ130は、時には、エントリガイドマニピュレータ130と呼ばれる。エントリガイドマニピュレータアセンブリのプラットフォーム132(時には、プラットフォーム132と呼ばれる)は、第4のマニピュレータリンク119の先端部に結合される。エントリガイドマニピュレータアセンブリ133は、プラットフォーム132に回転可能に取り付けられる。矢印190は、先端方向及び基端方向を示す。
The
エントリガイドマニピュレータアセンブリ133は、器具マニピュレータ位置付けシステムを含む。エントリーガイドマニピュレータアセンブリ133は、複数の器具マニピュレータ140-1,140-2をグループとして軸線125の周りに回転させる。
The entry
複数の器具マニピュレータ140-1,140-2のそれぞれは、異なる挿入アセンブリ136によってエントリガイドマニピュレータアセンブリ133に結合される。一態様では、各挿入アセンブリ136は、エントリガイドマニピュレータアセンブリ133から離れる方向に及びそのアセンブリ133に向けて対応する器具マニピュレータを動かす伸縮式アセンブリである。図1では、挿入アセンブリのぞれぞれは完全に後退した位置にある。
Each of the multiple instrument manipulators 140-1, 140-2 is coupled to the entry
複数の器具マニピュレータアセンブリ140-1,140-2のそれぞれは、その器具マニピュレータの出力インターフェイスにおいて複数の出力を駆動する複数のモータを含む。器具マニピュレータ及びこの器具マニピュレータに結合することができる手術用器具の一例については、米国特許出願第61/866,115号(2013年8月15日出願)を参照されたい。また、この文献は参照により組み込まれる。 Each of the multiple instrument manipulator assemblies 140-1, 140-2 includes multiple motors that drive multiple outputs at the output interface of the instrument manipulator. For an example of an instrument manipulator and a surgical instrument that can be coupled to the instrument manipulator, see U.S. Patent Application No. 61/866,115, filed Aug. 15, 2013, which is also incorporated by reference.
複数の手術装置アセンブリ180のそれぞれは、複数の異なる器具マニピュレータアセンブリと、手術用器具及び画像取込みユニットのうちの1つを含む器具とを含む。器具135-1,135-2のそれぞれは、伝達ユニットを収容する本体を含む。伝達ユニットは、複数の入力部を含む入力インターフェイスを含む。器具135-1,135-2のそれぞれはまた、本体から先端方向に延びる主チューブと呼ばれることもあるシャフト137-1,137-2を含む。エンドエフェクタが、手術用器具アセンブリのシャフトの先端部に結合され、画像取込みユニット、例えばカメラが、異なる手術用器具アセンブリの先端部に含まれる。器具マニピュレータアセンブリ及び手術用器具の例について、米国特許出願第61/866,115号(2013年8月15日出願)を参照されたい。また、この文献は参照により組み込まれる。 Each of the plurality of surgical device assemblies 180 includes a plurality of different instrument manipulator assemblies and an instrument including one of a surgical instrument and an image capture unit. Each of the instruments 135-1, 135-2 includes a body housing a transmission unit. The transmission unit includes an input interface including a plurality of inputs. Each of the instruments 135-1, 135-2 also includes a shaft 137-1, 137-2, sometimes referred to as a main tube, extending distally from the body. An end effector is coupled to the distal end of the shaft of the surgical instrument assembly, and an image capture unit, e.g., a camera, is included at the distal end of the different surgical instrument assembly. For examples of instrument manipulator assemblies and surgical instruments, see U.S. Patent Application No. 61/866,115, filed Aug. 15, 2013, which is also incorporated by reference.
器具135-1,135-2のそれぞれは、対応する器具マニピュレータアセンブリ140-1,140-2の器具取付けインターフェイスに結合され、それによって器具135-1,135-2の伝達ユニットの入力インターフェイスにおける複数の入力部は、器具マニピュレータアセンブリ140-1,140-2の器具取付けインターフェイスの複数の出力部によって駆動される。米国特許出願第61/866,115号(2013年8月15日出願)を参照されたい。 Each of the instruments 135-1, 135-2 is coupled to an instrument mounting interface of a corresponding instrument manipulator assembly 140-1, 140-2, such that the inputs at the input interface of the transfer unit of the instruments 135-1, 135-2 are driven by the outputs at the instrument mounting interface of the instrument manipulator assembly 140-1, 140-2. See U.S. Patent Application No. 61/866,115 (filed Aug. 15, 2013).
図1に示されるように、複数の手術装置アセンブリ180のシャフトは、器具の本体から先端方向に延びている。シャフトは、患者内への入口ポート(例えば、体壁を通って、又は自然オリフィスにおいて)に置かれた共通のカニューレ116を通って延びる。一態様では、エントリガイド115がカニューレ116内に位置付けされ、各器具シャフトは、器具シャフトに追加の支持を提供するように、エントリガイド115のチャネルを通って延びる。
As shown in FIG. 1, the shafts of the multiple surgical device assemblies 180 extend distally from the body of the instruments. The shafts extend through a
システムは、画像センサ、撮像パイプライン、及びディスプレイ装置を含む。画像センサは、画素データの第1のフレームを取り込むように構成される。撮像パイプラインは、画素データの第1のフレームを受け取るために画像センサに結合される。 The system includes an image sensor, an imaging pipeline, and a display device. The image sensor is configured to capture a first frame of pixel data. The imaging pipeline is coupled to the image sensor to receive the first frame of pixel data.
撮像パイプラインは、適応ノイズフィルタ(adaptive noise filter)を含む。適応ノイズフィルタは、第1の画素の推定画素ノイズパラメータを用い、且つ第1の画素の信号レベルと少なくとも第2の画素の信号レベルとの間の差を用いて画素をフィルタ処理するように構成される。適応ノイズフィルタはまた、画素データの第2のフレームを出力するように構成される。画素データの第2のフレームは、適応ノイズフィルタによってフィルタ処理された画素を含む。 The imaging pipeline includes an adaptive noise filter. The adaptive noise filter is configured to filter pixels using an estimated pixel noise parameter for a first pixel and using a difference between a signal level of the first pixel and a signal level of at least a second pixel. The adaptive noise filter is also configured to output a second frame of pixel data. The second frame of pixel data includes pixels filtered by the adaptive noise filter.
撮像パイプラインは、適応ノイズフィルタ処理された画素データの第2のフレームに基づいて画素データのフレームを出力するように構成される。ここで、適応ノイズフィルタ処理された画素データの第2フレームに基づく画素データのフレームは、撮像パイプラインによる適応ノイズフィルタ処理された画素データの第2フレームの更なる処理の結果である画素データのフレームである。ディスプレイ装置は、適応ノイズフィルタ処理された画素データの第2のフレームに基づいて、画素データのフレームを受け取るように撮像パイプラインに結合される。ディスプレイ装置は、適応ノイズフィルタ処理された画素データの第2のフレームに基づいて、画素データのフレームを表示するように構成される。 The imaging pipeline is configured to output a frame of pixel data based on the second frame of adaptive noise filtered pixel data, where the frame of pixel data based on the second frame of adaptive noise filtered pixel data is a frame of pixel data that is a result of further processing of the adaptive noise filtered second frame of pixel data by the imaging pipeline. A display device is coupled to the imaging pipeline to receive the frame of pixel data based on the second frame of adaptive noise filtered pixel data. The display device is configured to display the frame of pixel data based on the second frame of adaptive noise filtered pixel data.
一態様では、第2の画素は、第1のフレーム内の第1の画素の位置と同じ、画像センサによって取り込まれた第3のフレーム内の位置にある。第3のフレームは、第1のフレームを取り込む前の時間に取り込まれたので、適応ノイズフィルタによって使用される信号レベルの差は、2つの異なるフレーム内の同じ位置の画素同士の間の時間信号レベル変化である。別の態様では、第1の画素の信号レベルと少なくとも第2の画素の信号レベルとの差は、第1の画素の信号レベルと、第1の画素に隣接する複数の画素(時には、複数の隣接画素と呼ばれる)のうちの1つの信号レベルとの間の差である。複数の隣接画素のうちの1つは第2の画素である。 In one aspect, the second pixel is at the same location in a third frame captured by the image sensor as the location of the first pixel in the first frame. Because the third frame was captured at a time prior to the capture of the first frame, the signal level difference used by the adaptive noise filter is the time signal level change between pixels at the same location in the two different frames. In another aspect, the difference between the signal level of the first pixel and the signal level of at least the second pixel is the difference between the signal level of the first pixel and the signal level of one of a plurality of pixels (sometimes referred to as a plurality of adjacent pixels) adjacent to the first pixel. One of the plurality of adjacent pixels is the second pixel.
適応ノイズフィルタは、適応時間ノイズフィルタ(adaptive temporal noise filter)を含む。適応時間ノイズフィルタは、第1及び第2の画素の信号レベルの時間変化を、第1の画素の推定画素ノイズレベルと比較するように構成される。この態様では、推定画素ノイズレベルは、推定画素ノイズパラメータである。また、適応時間ノイズフィルタは、画素ノイズフレームを出力するように構成される。 The adaptive noise filter includes an adaptive temporal noise filter. The adaptive temporal noise filter is configured to compare the temporal change in the signal levels of the first and second pixels to an estimated pixel noise level of the first pixel. In this aspect, the estimated pixel noise level is an estimated pixel noise parameter. The adaptive temporal noise filter is also configured to output a pixel noise frame.
一態様では、撮像パイプラインは複数のステージを含み、適応的な時間ノイズフィルタは、複数のステージのうちの第1のステージに含まれる。また、複数のステージのうちの第1のステージに続く複数のステージのそれぞれは、入力画素ノイズフレームを処理するように構成され、且つステージ依存画素ノイズフレームを出力するように構成される。 In one aspect, the imaging pipeline includes a plurality of stages, and the adaptive temporal noise filter is included in a first stage of the plurality of stages. Also, each of the plurality of stages subsequent to the first stage of the plurality of stages is configured to process the input pixel noise frame and to output a stage-dependent pixel noise frame.
別の態様では、適応ノイズフィルタは、適応空間ノイズフィルタ(adaptive spatial noise filter)を含む。適応空間ノイズフィルタは、第1の画素の信号レベルと、複数の隣接画素のそれぞれの信号レベルとの間の差を決定するように構成される。また、適応空間ノイズフィルタは、ノイズ依存信号レベルパラメータを使用し、ここで、ノイズ依存信号レベルパラメータは、第1の画素のノイズの関数である。この態様では、ノイズ依存信号レベルパラメータは、この態様では画素の推定画素ノイズパラメータである。別の態様では、適応空間ノイズフィルタは、距離(distance)フィルタ及び信号レベルレンジ(range)フィルタを含む。信号レベルレンジフィルタは、画素の信号レベルと複数の隣接画素の信号レベルのそれぞれとの間の差に基づいて、及びノイズ依存信号レベルパラメータに基づいて、画素をフィルタ処理するように構成される。一態様では、ノイズ依存信号レベルパラメータは、信号レベルレンジパラメータである。 In another aspect, the adaptive noise filter includes an adaptive spatial noise filter. The adaptive spatial noise filter is configured to determine a difference between a signal level of the first pixel and a signal level of each of the multiple neighboring pixels. The adaptive spatial noise filter also uses a noise-dependent signal level parameter, where the noise-dependent signal level parameter is a function of the noise of the first pixel. In this aspect, the noise-dependent signal level parameter is an estimated pixel noise parameter of the pixel. In another aspect, the adaptive spatial noise filter includes a distance filter and a signal level range filter. The signal level range filter is configured to filter the pixel based on a difference between a signal level of the pixel and each of the multiple neighboring pixels and based on the noise-dependent signal level parameter. In one aspect, the noise-dependent signal level parameter is a signal level range parameter.
更なる態様では、撮像パイプラインステージは、信号レベル対ノイズ・ルックアップテーブルを含む適応時間ノイズフィルタを含む。適応時間ノイズフィルタは、画素のフレームを受け取るように構成され、画素の信号レベルの時間変化を、画素の信号レベルに対応する信号レベル対ノイズ・ルックアップテーブルの値と比較することによって、フレームの複数の画素の各画素をフィルタ処理するように構成され、且つその比較に基づいて、適応時間ノイズフィルタ処理された画素のフレームを出力するように構成される。 In a further aspect, the imaging pipeline stage includes an adaptive temporal noise filter including a signal level vs. noise lookup table. The adaptive temporal noise filter is configured to receive a frame of pixels, filter each pixel of a plurality of pixels of the frame by comparing a change in the signal level of the pixel over time to a value in the signal level vs. noise lookup table corresponding to the signal level of the pixel, and output an adaptive temporal noise filtered frame of pixels based on the comparison.
別の態様では、撮像パイプラインステージは、現在の画素フレーム、信号レベル対ノイズ・ルックアップテーブル、変更ルックアップテーブル、画素出力フレーム、画素ノイズフレーム、並びに現在の画素フレーム、信号レベル対ノイズ・ルックアップテーブル、変更ルックアップテーブル、画素出力フレーム、及び画素ノイズフレームに結合される適応時間ノイズフィルタを含む。信号レベル対ノイズ・ルックアップテーブルは、現在の画素フレームの画素の信号レベルを受け取り、画素の信号レベルに対応するノイズ標準偏差を出力するように構成される。変更ルックアップテーブルは、ノイズ標準偏差の数値で表される画素の信号レベルの時間変化を受け取り、且つフィルタを通過する画素の信号レベルの許容される時間変化の割合を出力するように構成される。適応時間ノイズフィルタは、適応時間ノイズフィルタ処理された画素を画素出力フレームに出力するように構成される。また、適応時間ノイズフィルタは、画素ノイズ、すなわち、適応時間ノイズフィルタ処理された画素に対応する出力画素ノイズを画素ノイズフレームに出力するように構成される。 In another aspect, the imaging pipeline stage includes a current pixel frame, a signal level vs. noise lookup table, a modified lookup table, a pixel output frame, a pixel noise frame, and an adaptive temporal noise filter coupled to the current pixel frame, the signal level vs. noise lookup table, the modified lookup table, the pixel output frame, and the pixel noise frame. The signal level vs. noise lookup table is configured to receive signal levels of pixels of the current pixel frame and output a noise standard deviation corresponding to the signal levels of the pixels. The modified lookup table is configured to receive a time change in the signal level of the pixels represented by a numerical value of the noise standard deviation, and output a percentage of the allowable time change in the signal level of the pixels that passes the filter. The adaptive temporal noise filter is configured to output the adaptive temporal noise filtered pixels to the pixel output frame. The adaptive temporal noise filter is also configured to output pixel noise, i.e., output pixel noise corresponding to the adaptive temporal noise filtered pixels, to the pixel noise frame.
さらに別の態様では、適応空間ノイズフィルタは、入力画素フレーム及び入力画素ノイズフレームを受け取るように構成され、画素の信号レベルと複数の隣接画素の信号レベルとの間の空間変化に基づいて、及びノイズ依存信号レベルパラメータに基づいて入力画素フレームの画素をフィルタ処理して、適応空間ノイズ処理された画素を生成するように構成される。ノイズ依存信号レベルパラメータは、画素に対応する入力画素ノイズフレーム内の画素ノイズを使用して決定される。画素の空間フィルタ処理は、入力画素フレーム内の複数の隣接画素に関連する。適応空間ノイズフィルタはまた、適応空間ノイズフィルタ処理された画素を、適応空間ノイズフィルタ処理された画素フレームに出力するように構成される。 In yet another aspect, the adaptive spatial noise filter is configured to receive an input pixel frame and an input pixel noise frame, and is configured to filter a pixel of the input pixel frame based on a spatial change between a signal level of the pixel and a signal level of a plurality of adjacent pixels, and based on a noise-dependent signal level parameter to generate an adaptive spatial noise processed pixel. The noise-dependent signal level parameter is determined using pixel noise in the input pixel noise frame corresponding to the pixel. The spatial filtering of the pixel is related to a plurality of adjacent pixels in the input pixel frame. The adaptive spatial noise filter is also configured to output the adaptive spatial noise filtered pixel in the adaptive spatial noise filtered pixel frame.
さらに別の態様では、撮像パイプラインステージは、入力画素フレーム及び入力画素ノイズフレームを含む。入力画素ノイズフレーム内の各画素ノイズ要素は、入力画素フレーム内の異なる画素に対応する。撮像パイプラインステージは、画素出力フレームと、入力画素フレーム、入力画素ノイズフレーム、及び画素出力フレームに結合された適応空間ノイズフィルタとをさらに含む。 In yet another aspect, the imaging pipeline stage includes an input pixel frame and an input pixel noise frame. Each pixel noise element in the input pixel noise frame corresponds to a different pixel in the input pixel frame. The imaging pipeline stage further includes a pixel output frame and an adaptive spatial noise filter coupled to the input pixel frame, the input pixel noise frame, and the pixel output frame.
一態様では、適応空間ノイズフィルタは、適応空間ノイズ・バイラテラル(bilateral)フィルタを含む。位置xの画素について、適応空間ノイズ・バイラテラルフィルタは、以下のように規定される。
ここで、
は、位置xにおける画素の適応空間ノイズフィルタ処理された信号レベルであり、
は、正規化定数であり、
は、空間的なガウス分布であり、
は、位置yの画素と位置xの画素との間の距離のノルムであり、
は、距離パラメータであり、
は、位置xにおける画素のノイズの関数である信号レベル範囲のガウス分布であり、
は、位置yにおける画素の信号レベルであり、
は、位置xにおける画素の信号レベルであり、
は、位置yにおける画素(第2の画素)の信号レベルと位置xにおける画素(第1の画素)の信号レベルとの差の絶対値であり、
は、位置xにおける画素のノイズの関数である信号レベルレンジパラメータであり、
は、位置xに中心画素を有する画素のブロックであり、
は、位置xに中心画素を有する画素ブロック内の画素に亘る総和を表す。
In one aspect, the adaptive spatial noise filter includes an adaptive spatial noise bilateral filter: For a pixel at location x, the adaptive spatial noise bilateral filter is defined as follows:
Where:
is the adaptive spatial noise filtered signal level of the pixel at location x,
is a normalization constant,
is a spatial Gaussian distribution,
is the norm of the distance between the pixel at position y and the pixel at position x,
is the distance parameter,
is a Gaussian distribution of the signal level range that is a function of the noise of the pixel at location x,
is the signal level of the pixel at position y,
is the signal level of the pixel at position x,
is the absolute value of the difference between the signal level of the pixel (second pixel) at position y and the signal level of the pixel (first pixel) at position x,
is a signal level range parameter that is a function of the noise of the pixel at location x,
is a block of pixels with its center pixel at position x,
represents the sum over the pixels in the pixel block having its center pixel at position x.
一態様では、方法は、第1のフレームの第1の画素を受信するステップと、第1の画素の推定画素ノイズパラメータを用いて、且つ第1の画素の信号レベルと少なくとも第2の画素の信号レベルとの間の差を用いて、第1の画素を適応ノイズフィルタ処理して、フィルタ処理された画素を取得するステップとを含む。フィルタ処理された画素は、出力フレームに出力される。この方法はまた、フィルタ処理された画素に対応する画素ノイズをノイズ出力フレームに出力するステップを含む。 In one aspect, the method includes receiving a first pixel of a first frame and adaptively noise filtering the first pixel using an estimated pixel noise parameter for the first pixel and using a difference between a signal level of the first pixel and a signal level of at least a second pixel to obtain a filtered pixel. The filtered pixel is output in an output frame. The method also includes outputting pixel noise corresponding to the filtered pixel in a noise output frame.
別の態様では、第2の画素は、第1のフレーム内の第1の画素の位置と同じ、画像センサによって取り込まれた第2のフレーム内の位置にある。第2のフレームは、第1のフレームを取り込む前の時間に取り込まれる。この態様では、第1の画素を適応ノイズフィルタ処理するステップは、第1の画素の信号レベルの時間変化とも呼ばれる、第1の画素と第2の画素の信号レベルの変化と、第1の画素の推定画素ノイズレベルとの比較に基づいて、第1の画素を適応時間ノイズフィルタ処理するステップを含む。推定画素ノイズレベルは、この態様では推定画素ノイズパラメータである。 In another aspect, the second pixel is at a location in a second frame captured by the image sensor that is the same as the location of the first pixel in the first frame. The second frame is captured at a time prior to capturing the first frame. In this aspect, adaptive noise filtering the first pixel includes adaptively noise filtering the first pixel based on a comparison of a change in signal level of the first pixel and the second pixel over time, also referred to as a change in signal level of the first pixel over time, to an estimated pixel noise level of the first pixel. The estimated pixel noise level is an estimated pixel noise parameter in this aspect.
第1の画素を適応時間ノイズフィルタ処理するステップは、第1の画素の信号レベルを信号レベル対ノイズ・ルックアップテーブルに入力するステップと、信号レベル対ノイズ・ルックアップテーブルを用いて、第1の画素の信号レベルに対応するノイズ標準偏差を出力するステップとを含む。ノイズ標準偏差は、この態様では第1の画素の推定画素ノイズレベルである。第1の画素を適応時間ノイズフィルタ処理するステップはまた、第1の画素の信号レベルの時間変化をノイズ標準偏差で除算して、第1の画素の信号レベルの時間変化をノイズの標準偏差として取得するステップを含み、除算は前記比較である。第1の画素を適応時間ノイズフィルタ処理するステップは、第1の画素の信号レベルの時間変化をノイズの標準偏差で変更ルックアップテーブルに入力するステップと、変更ルックアップテーブルを用いて、フィルタを通過する第1の画素の信号レベルの許容される時間変化の割合を出力するステップをさらに含む。最後に、第1の画素を適応時間ノイズフィルタ処理するステップは、第1の画素の信号レベルにおける許容される時間変化の割合に第1の画素の信号レベルの時間変化を乗算することによって、第1の画素の信号レベルにおける許容される時間変化を生成するステップと、第1の画素の信号レベルの許容される時間変化を対応する画素に加算することによって、フィルタ処理された画素を生成するステップであって、対応する画素は第2のフレームの画素であり、第2のフレームは、時間的に第1のフレームの直前にある、生成するステップを含む。 The step of adaptively noise filtering the first pixel includes inputting the signal level of the first pixel into a signal level vs. noise lookup table, and using the signal level vs. noise lookup table to output a noise standard deviation corresponding to the signal level of the first pixel. The noise standard deviation is an estimated pixel noise level of the first pixel in this aspect. The step of adaptively noise filtering the first pixel also includes dividing the time change in the signal level of the first pixel by the noise standard deviation to obtain the time change in the signal level of the first pixel as the standard deviation of the noise, the division being the comparison. The step of adaptively noise filtering the first pixel further includes inputting the time change in the signal level of the first pixel with the standard deviation of the noise into a modified lookup table, and using the modified lookup table to output the percentage of the allowed time change in the signal level of the first pixel that passes through the filter. Finally, the step of adaptively filtering the first pixel includes the steps of: generating an allowable change in the signal level of the first pixel by multiplying a percentage of the allowable change in the signal level of the first pixel by the change in the signal level of the first pixel over time; and generating a filtered pixel by adding the allowable change in the signal level of the first pixel to a corresponding pixel, the corresponding pixel being a pixel of a second frame, the second frame immediately preceding the first frame in time.
さらに別の態様では、本方法の少なくとも1つの第2の画素は、第1の画素に隣接する複数の画素に含まれ、第1の画素を適応ノイズフィルタ処理するステップは、第1の画素の信号レベルと複数の隣接画素の信号レベルのそれぞれとの間の差に基づいて、及びノイズ依存信号レベルパラメータに基づいて、第1の画素を適応空間ノイズフィルタ処理するステップを含む。ノイズ依存信号レベルパラメータは、第1の画素のノイズの関数であり、ノイズ依存信号レベルパラメータは、この態様では第1の画素の推定画素ノイズパラメータである。 In yet another aspect, the at least one second pixel of the method is included in a plurality of pixels adjacent to the first pixel, and adaptive noise filtering the first pixel includes adaptive spatial noise filtering the first pixel based on a difference between a signal level of the first pixel and each of the signal levels of the plurality of adjacent pixels and based on a noise-dependent signal level parameter. The noise-dependent signal level parameter is a function of the noise of the first pixel, and the noise-dependent signal level parameter in this aspect is an estimated pixel noise parameter of the first pixel.
画素を適応空間ノイズフィルタ処理するステップは、距離フィルタと信号レベルレンジフィルタとを組み合わせることによってフィルタ処理された画素を生成するステップを含み、信号レベルレンジフィルタは、ノイズ依存信号レベルパラメータの関数である。特に、信号レベルフィルタは、信号レベルレンジパラメータを有する信号レベル範囲のガウス分布を含む。信号レベルレンジパラメータは、ノイズ依存信号レベルパラメータである。 The step of adaptively spatial noise filtering the pixel includes generating the filtered pixel by combining a distance filter and a signal level range filter, the signal level range filter being a function of a noise-dependent signal level parameter. In particular, the signal level filter includes a Gaussian distribution of signal level ranges having the signal level range parameter. The signal level range parameter is a noise-dependent signal level parameter.
図面において、3桁の参照数字の第1桁は、その参照数字を有する要素が最初に現れる図の番号である。 In the drawings, the first digit of a three-digit reference number is the number of the figure in which the element with that reference number first appears.
内視鏡撮像システム192における撮像パイプライン等の撮像パイプラインは、多くのノイズフィルタを含む。これらのノイズフィルタには、シーン内で予想されるノイズに基づくパラメータが含まれる。これらのノイズフィルタは、所与の信号レベル、例えばノイズに基づいてパラメータが選択される信号レベルを有する取り込まれたフレームに対しては良好に機能するが、これらのノイズフィルタは、異なる信号レベルで取り込まれたフレーム及び変化する信号レベルを含む画像フレームを処理するには問題を有する。
An imaging pipeline, such as the imaging pipeline in
これらの問題は、1つ又は複数の適応ノイズフィルタを含む撮像パイプラインによって解決される。適応ノイズフィルタのそれぞれは、画像取込みユニット、例えばカメラ内の画像センサによって測定されるような、局所ベースの信号レベルに関連するノイズ依存パラメータを選択する。適応ノイズフィルタのそれぞれにおいて使用されるノイズ依存パラメータは、画像フレーム毎に変化する可能性があり、画像フレーム内で画素毎に変化する可能性がある。具体的には、適応ノイズフィルタは、フレーム内の関心領域の信号レベルに基づいてノイズフィルタ処理を調整する。いくつかの例では、関心領域は画素であるが、他の例では、関心領域は画素のグループであり、ここで、画素のグループは、1画素よりも多くの画素を含み、フレーム内の画素数よりも少ない。適応ノイズフィルタのそれぞれは、第1の画素の値と少なくとも第2の画素の値との比較、例えば、時間的又は空間的変化とその画素の推定画素ノイズパラメータとを比較することによって画素を適応フィルタ処理し、ここで画素の推定画素ノイズパラメータは、画素データのフレーム内の総画素数未満の数に基づいている。推定画素ノイズが画素毎に変化する可能性があるので、適応フィルタは、推定画素ノイズパラメータにおけるそのような変化を補償する。 These problems are solved by an imaging pipeline that includes one or more adaptive noise filters. Each of the adaptive noise filters selects a noise-dependent parameter that is related to a signal level on a local basis, as measured by an image sensor in an image capture unit, e.g., a camera. The noise-dependent parameters used in each of the adaptive noise filters may vary from image frame to image frame and may vary from pixel to pixel within an image frame. Specifically, the adaptive noise filters adjust the noise filtering based on the signal level of a region of interest in the frame. In some examples, the region of interest is a pixel, while in other examples, the region of interest is a group of pixels, where the group of pixels includes more than one pixel and less than the number of pixels in the frame. Each of the adaptive noise filters adaptively filters a pixel by comparing a value of a first pixel to a value of at least a second pixel, e.g., a temporal or spatial change, and an estimated pixel noise parameter for that pixel, where the estimated pixel noise parameter for the pixel is based on a number less than the total number of pixels in the frame of pixel data. Because the estimated pixel noise may vary from pixel to pixel, the adaptive filter compensates for such changes in the estimated pixel noise parameter.
内視鏡及び他の小型画像取込みセンサに使用される画像取込みセンサでは、画素は、露光時間内にその画素に入射する光子をカウントする。こうして、画素の信号レベルは、画素値と呼ばれることもあり、露光時間に亘る入射光子のカウントを含む。しかしながら、このカウント、すなわち信号レベルは、画素ノイズに関連する寄与も含み得る。画素ノイズは電子(ショット)ノイズによって支配され、画像取込みセンサの電気的変動による画素ノイズへの根本的な寄与もある。画素ノイズは、画像取込みセンサに当たる電子数の分散を扱う平方根関数として推定され、例えば、推定画素ノイズパラメータは推定画素ノイズレベルである。標準偏差の数値において推定画素ノイズと呼ばれることがある推定画素ノイズレベルは、以下のように推定することができる。
ここで、
std(Noise)は、画素のノイズの標準偏差であり、
Oは、センサの電気ノイズによるオフセットであり、
Gは、ゲイン値であり、
SignalLevelは、画像取込みセンサによって読み取られる画素信号レベルであり、
MaxSignalLevelは、画像取込みセンサの最大画素信号レベルである。
ここで、画素信号レベル(SignalLevel)は、画像取込みセンサの画素に入射する光の尺度である。上の式は、低画素信号レベルでは、ノイズが高画素信号レベルよりもはるかに小さいことを示している。しかしながら、低信号レベルでは、ノイズは高信号レベルよりも信号のはるかに大きな部分を占める。
In image capture sensors used in endoscopes and other miniature image capture sensors, a pixel counts the photons that are incident on it during an exposure time. Thus, the signal level of a pixel, sometimes called the pixel value, includes the count of incident photons over the exposure time. However, this count, or signal level, may also include a contribution related to pixel noise. Pixel noise is dominated by electronic (shot) noise, and there is also a fundamental contribution to pixel noise due to electrical variations in the image capture sensor. Pixel noise is estimated as a square root function that deals with the variance in the number of electrons that strike the image capture sensor, for example, an estimated pixel noise parameter is the estimated pixel noise level. The estimated pixel noise level, sometimes called the estimated pixel noise in terms of a standard deviation number, can be estimated as follows:
Where:
std(Noise) is the standard deviation of the noise of the pixels,
O is the offset due to electrical noise of the sensor,
G is the gain value,
SignalLevel is the pixel signal level read by the image capture sensor,
MaxSignalLevel is the maximum pixel signal level of the image capture sensor.
Here, pixel signal level (SignalLevel) is a measure of the light incident on a pixel of an image capture sensor. The above equation shows that at low pixel signal levels, the noise is much smaller than at high pixel signal levels. However, at low signal levels, the noise is a much larger portion of the signal than at high signal levels.
例えば、オフセットOが2でゲインGが40、画素信号レベル(Signal Level)が6の第1の画素、画素信号レベル(Signal Level)が4000である第2画素を考える。この例では、12ビット画素が使用され、そのため最大画素信号レベル(Max Signal Level)は4095である。
std(第1の画素のノイズ)=2+40*(6/4095)**.5=3.5
std(第2の画素のノイズ)=2+40*(4000/4095)**.5=41.5
For example, consider a first pixel with an offset O of 2, a gain G of 40, a pixel signal level of 6, and a second pixel with a pixel signal level of 4000. In this example, 12-bit pixels are used, so the Max Signal Level is 4095.
std(1st pixel noise)=2+40*(6/4095)**.5=3.5
std(2nd pixel noise)=2+40*(4000/4095)**.5=41.5
こうして、第2の画素の推定画素ノイズの標準偏差は、第1の画素の推定画素ノイズの標準偏差の10倍を超える。しかしながら、第1の画素の推定画素ノイズの標準偏差は、第1の画素の画素信号レベルの約58%である一方、第2画素の推定画素ノイズの標準偏差は、第2画素の画素信号レベルの約1%である。 Thus, the standard deviation of the estimated pixel noise of the second pixel is more than 10 times the standard deviation of the estimated pixel noise of the first pixel. However, the standard deviation of the estimated pixel noise of the first pixel is about 58% of the pixel signal level of the first pixel, while the standard deviation of the estimated pixel noise of the second pixel is about 1% of the pixel signal level of the second pixel.
一態様では、画像取込みユニット201が画素データのフレームを取り込み、この画素データのフレームは、撮像システム292の撮像パイプライン230によって処理される。典型的には、撮像パイプライン230は、複数のステージを含む。撮像システム292の撮像パイプライン230は、従来の撮像システム192の撮像パイプラインのステージ内の少なくとも1つのノイズフィルタが適応ノイズフィルタ210に置き換えられている点を除いて、従来の撮像システム192の撮像パイプラインと同様である。
In one aspect, the
画素データ214のステージ入力フレーム(時には、入力フレーム214と呼ばれる)は、撮像処理パイプライン230の特定のステージに入力される画素データの関数である。撮像システム292の撮像パイプライン230内の適応ノイズフィルタ210は、入力フレーム214内の画素の信号レベルの変化がノイズであるか実際の変化であるかを判定することによって動作する。実際の変化は、信号レベルの実際の変化に起因する変化であり、ノイズに起因する変化ではない。適応ノイズフィルタ210が、画素の信号レベルの変化がノイズによるものであると判定した場合に、適応ノイズフィルタ210は、その画素をフィルタ処理し、フィルタ処理された画素をフィルタ処理された画素データのフレーム212に渡す。逆に、適応ノイズフィルタ210が、その画素の信号レベルの変化が信号レベルの変化に起因する、すなわち、実際の変化であると判定した場合に、適応ノイズフィルタ210は、フィルタ処理されていない画素をフィルタ処理された画素データのフレーム212に渡す。適応ノイズフィルタ210は、画素に関連する信号レベルの変化とその画素の推定画素ノイズパラメータと比較し、次にその比較に基づいて画素をフィルタ処理することによって、画素の信号レベルの変化がノイズによるものであるという判定を行う。
A stage input frame of pixel data 214 (sometimes referred to as an input frame 214) is a function of pixel data input to a particular stage of the
こうして、適応ノイズフィルタ210は、画像取込みユニット201の画像取込みセンサによって取り込まれたフレーム202内の少なくとも関心領域の各画素を調べ、信号レベルの変化がノイズのみによって引き起こされるとみなされるかどうかに基づいて、各画素における信号レベル変化、例えば時間経過による変化又は隣接画素の間の空間的変化を処理する。この適応ノイズフィルタ処理は、従来技術のノイズフィルタを使用して得られたものよりも良好な画像をディスプレイユニット220に表示させる。
Thus, the
従来技術のノイズフィルタでは、ノイズフィルタに使用されるパラメータが低信号レベルのノイズを対象とする場合に、高信号レベルを示す画素のノイズは、単にフィルタを通過するだけであった。その結果、ディスプレイユニットに表示されたシーンの高信号レベルのノイズは、表示されるシーンの明るい領域をフレーム毎に変化させ、ひいては表示されたシーンにノイズ誘発フリッカーを生じさせる可能性がある。 In prior art noise filters, when the parameters used for the noise filter are intended for low signal level noise, noise in pixels exhibiting high signal levels simply passes through the filter. As a result, high signal level noise in a scene displayed on a display unit can cause bright areas of the displayed scene to vary from frame to frame, which in turn can cause noise-induced flicker in the displayed scene.
逆に、従来技術のノイズフィルタに使用されるパラメータが高信号レベルのノイズを対象とする場合に、信号レベルが低い画素は、全てがノイズであると判定されるため、フィルタ処理されることになる。その結果、低信号レベルの画素の情報が失われることになる。 Conversely, if the parameters used in the prior art noise filters are targeted at high signal level noise, then pixels with low signal levels will be filtered out because they are all determined to be noise. As a result, information from the low signal level pixels will be lost.
本明細書で説明する適応ノイズフィルタは、各画素の信号レベルに基づいてノイズフィルタ処理を調整することによって、これらの問題を克服する。こうして、低信号レベルのフィルタ処理は、高信号レベルのフィルタ処理とは異なり、信号レベルが変化すると、画素の推定画素ノイズが変化し、フィルタ処理は、表示される画像における画素ノイズの影響が分からないようにノイズによる寄与を平滑化しながら、各画素によって伝達される情報を保存するように調整される。例えば、適応ノイズフィルタ210は、画素の信号レベルを使用して、その画素のノイズを信号レベル対ノイズデータ211にアクセスする。信号レベル対ノイズデータ211は、画素の信号レベルの可能な範囲に亘って各信号レベルに対して適切なノイズパラメータを有する。適応ノイズフィルタ210は、画素の信号レベルの変化とその画素の信号レベル対ノイズデータ211からのノイズレベルとを比較することにより、各画素がその画素の信号レベルのノイズに基づいて適切にフィルタ処理されることを保証する。これは、画素データのフレーム内の完全なシーンに亘って同じパラメータを使用するように試みられた従来技術のノイズフィルタで遭遇する問題を大幅に低減又は排除する。
The adaptive noise filter described herein overcomes these problems by adjusting the noise filtering based on the signal level of each pixel. Thus, filtering for low signal levels differs from filtering for high signal levels, where the estimated pixel noise of a pixel changes as the signal level changes, and the filtering is adjusted to preserve the information conveyed by each pixel while smoothing the noise contribution so that the effect of the pixel noise in the displayed image is not visible. For example, the
一態様では、適応ノイズフィルタ210は、画素ノイズデータの出力フレーム213(時には、ノイズフレーム213と呼ばれる)に各画素のノイズ値を保存する、例えば画素ノイズを保存する。一態様では、画素ノイズデータ213の値はノイズ標準偏差で表される。ノイズフレーム213は、パイプライン230を通過し、パイプライン230の各ステージによって処理される。その結果、パイプライン230の各ステージは、そのステージに入力されるノイズの表現を有し、その表現が、そのステージで実施される任意の適応ノイズフィルタ処理に使用され得る。
In one aspect, the
以下でより完全に説明するように、一態様では、撮像パイプライン230は、撮像パイプライン230の初期ステージに適応時間ノイズフィルタを含む。適応ノイズフィルタ210が適応時間ノイズフィルタである場合に、画素データ214のステージ入力フレームは、画像取込みユニット201内の画像取込みセンサからの生の画素データの入力フレームである。
As described more fully below, in one aspect, the
別の態様では、撮像パイプライン230は、撮像パイプライン230の後のステージに適応空間ノイズフィルタを含む。適応ノイズフィルタ210が適応空間ノイズフィルタである場合に、画素データ214のステージ入力フレームは、例えば、デモザイク処理され、色変換された画素データの入力フレームである。
In another aspect, the
さらに別の態様では、撮像パイプライン230は、撮像パイプラインの初期ステージの適応時間ノイズフィルタと、撮像パイプラインの後のステージの適応空間ノイズフィルタとの両方を含む。図5を参照されたい。
In yet another aspect, the
適応ノイズフィルタ210が適応時間ノイズフィルタである場合に、生の画素データの現在のフレーム内の位置における現在の画素(第1の画素)の値は、時間的に現在のフレームの直前にフィルタ処理されたデータのフレーム内の同じ位置における先行してフィルタ処理された画素(第2の画素)の値と比較される。ここで、生の画素データは、未だデモザイク処理されていない画像取込みユニット201からのデータを指す。2つの画素の2つの値の差、すなわち現在の画素の時間変化を用いて、2つの画素の値の差がノイズによるものか、又は実際の変化であるのかを判定する。
When the
一態様では、現在の画素の値(信号レベル)に対するノイズの標準偏差(推定画素ノイズパラメータ)は、適応ノイズフィルタ210によって信号レベル対ノイズデータ211から取得される。次に、現在の画素の時間変化が、ノイズの標準偏差の数値に関して時間的な信号変化を得るために、ノイズの標準偏差で除算される。ノイズの標準偏差の数値に関する時間的な信号変化は、現在の画素の時間変化のどれ位の割合がフィルタ210を通過できるかを決定するために使用される。こうして、フィルタ210は、現在の画素の時間的な信号変化と現在の画素の推定画素ノイズパラメータ、例えば推定画素ノイズレベルと比較し、その比較に基づいてフィルタ処理を行う。一態様では、適応時間ノイズフィルタ処理された画素は、現在の画素の時間変化プラス第2画素の値の割合として規定される。適応時間ノイズフィルタ処理された画素の値は、フィルタ処理された画素データのステージ出力フレーム212(時には、出力フレーム212と呼ばれる)に置かれる。フィルタ210を通過できる現在の画素の許容される時間変化の割合が100%である場合に、現在の画素は、適応時間ノイズフィルタをそのまま通過する。フィルタ210を通過できる現在の画素の許容される時間変化の割合が100%未満である場合に、現在の画素は、その信号レベルに基づいてフィルタ処理される。出力フレーム212は、撮像パイプライン230を通して継続し、ディスプレイユニット220に表示される。こうして、出力フレーム212に基づくフレームが撮像パイプライン230によってディスプレイユニット220に送信される。すなわち、ディスプレイユニット220に送信されたフレームは、出力フレーム212が撮像パイプライン230内の後続のステージによって処理された後の出力フレーム212である。
In one aspect, the standard deviation of the noise (estimated pixel noise parameter) relative to the value (signal level) of the current pixel is obtained from the signal level vs.
適応ノイズフィルタ210が適応空間ノイズフィルタである場合に、デモザイク処理され、色変換された画素データの現在のフレーム内の位置における現在の画素の値は、現在のフレーム内の隣接画素の値と比較される。適応空間ノイズフィルタ処理された画素としてフィルタを通過した現在の画素の空間的変化の割合は、現在の画素と隣接画素との空間的関係に基づいて、隣接画素の信号レベルに対する現在の画素の信号レベルの関係に基づいて、及び現在の画素のノイズ成分に基づいて重み付けされる。一態様では、以下でより完全に説明するように、適応空間ノイズフィルタは、画素の信号レベルと複数の隣接画素の信号レベルとの間の空間的変化に基づいて、及びノイズ依存信号レベルパラメータに基づいて、画素をフィルタ処理するように構成される。ノイズ依存信号レベルパラメータは、現在の画素のノイズの関数である。ここで、この態様では、ノイズ依存信号レベルパラメータは、画素の推定画素ノイズパラメータである。ステージ出力フレーム212は、撮像パイプライン230を通して継続し、ディスプレイユニット220に表示される。
When the
図3Aは、撮像パイプライン230で使用され得る適応時間ノイズフィルタの一実装形態のプロセスフロー図である。図3Bは、図3Aの方法350の適応時間ノイズフィルタ300の一実装形態のブロック図である。
Figure 3A is a process flow diagram of one implementation of an adaptive temporal noise filter that may be used in the
この例では、現在の画素フレーム315(図3B参照)内の画素は、順次処理されるものとして説明される。これは例示的なものに過ぎず、限定することを意図するものではない。本開示を考慮して、複数の画素を並行して処理することができ、フレーム内の画素をグループとして、又は他の何らかの事柄として処理することができる。図3Aのプロセスフロー図は、現在の画素における時間変化がノイズによるものであるかどうかを判定するために、現在の画素フレーム315(図3B参照)の各画素が処理されることを示すよう意図している。いくつかの態様では、フレーム内の全ての画素を処理する必要はない。こうして、少なくともフレームの関心領域内の画素、例えばフレーム内の複数の画素が、典型的には、適応時間ノイズフィルタ300によって処理され、ここで関心領域は既知であり、画素フレームの特定の部分となるように指定される。
In this example, pixels in a current pixel frame 315 (see FIG. 3B) are described as being processed sequentially. This is for illustrative purposes only and is not intended to be limiting. In light of the present disclosure, multiple pixels may be processed in parallel, pixels in a frame may be processed as a group, or some other matter. The process flow diagram of FIG. 3A is intended to show that each pixel in the current pixel frame 315 (see FIG. 3B) is processed to determine whether a temporal change in the current pixel is due to noise. In some aspects, it is not necessary to process all pixels in the frame. Thus, at least pixels in a region of interest of the frame, e.g., multiple pixels in the frame, are typically processed by the adaptive
最初に、新フレーム検索プロセス301が、画像取込みユニット210内の画像取込みセンサから新しい画素フレーム302を取り出す。取り出された新しい画素フレーム302は、現在の画素フレーム315(図3B参照)として保存される。新フレーム検索プロセス301は画素取得プロセス303に移る。
First, a new frame search process 301 retrieves a
画素取得プロセス303は、現在の画素フレーム315(図3B参照)から第1の画素と、格納済みの以前フィルタ処理された画素フレーム304から第1の画素に対応する第2の画素とを取り出す。時には、現在の画素フレーム315からの第1の画素は、現在の画素と呼ばれる。格納済みの以前フィルタ処理された画素フレーム304は、現在の画素フレーム315に関連する時間の直前の時間にフィルタ処理された画素フレームである。現在の画素フレーム315が時間tについてのフレームである場合に、格納済みの以前フィルタ処理された画素フレーム304は時間t-1についてのフレームある。ここで、格納済みの以前フィルタ処理された画素フレーム304からの第2の対応する画素は、フレーム315内の第1の画素の位置と同じ、フレーム304内の位置にある画素である。ここで、画素が検索されたと言われるとき、それは画素の値が取り出されることである。画素の値は信号レベルを表す。画素取得プロセス303は、フレーム間の画素差分プロセス305に移る。
The
フレーム間の画素差分プロセス305は、まず、第1の画素と第2の画素との間の時間変化を決定する、例えば、時間t-1における第2の画素の値から時間tにおける第1の画素の値の時間変化を決定する。フレーム間の画素差分プロセス305は、第1の画素の値の時間変化を画素生成プロセス309に供給する。
The frame to frame
次に、フレーム間の画素差分プロセス305は、第1の画素の時間変化の絶対値をとる。フレーム間の画素差分プロセス305は、第1の画素の時間変化の絶対値を信号レベル変更プロセス307に供給する。
Then, the frame
信号レベル変更プロセス307は、第1の画素の時間変化の絶対値を受信するだけでなく、信号レベル対ノイズ・ルックアップテーブル306からの値も受け取る(本明細書では、大文字及び小文字は要素を区別するために使用されない)。例えば、信号レベル対ノイズ・ルックアップテーブル(SIGNAL LEVEL TO NOISE LOOK-UP TABLE)306(図3A参照)、信号レベル対ノイズ・ルックアップテーブル(Signal Level
to Noise Look-up Table)306(図3B参照)、及び信号レベル対ノイズ・ルックアップテーブル(signal level to noise look-up table)306は全て同じ要素である。)
The signal
The signal level to noise look-up table 306 (see FIG. 3B) and the signal level to noise look-up table 306 all have the same elements.
図4Aは、一態様において、信号レベル対ノイズ・ルックアップテーブル306におけるデータのグラフ表示である。この態様では、曲線401を生成するために、上記の、オフセットOが2、ゲインGが40、最大画素信号レベル(Max Signal Level)が4095のノイズ規定(1)が使用された。曲線401は単なる例示であり、この特定の例に限定することを意図していない。本開示に鑑みて、この分野の知識を有する者は、撮像パイプラインにフレームを提供するために使用される画像センサの特性及び関連するゲインを表す信号レベル対ノイズ・ルックアップテーブル306を生成することができる。
4A is a graphical representation of the data in the signal level vs. noise lookup table 306 in one embodiment. In this embodiment, the noise specification (1) above with an offset O of 2, a gain G of 40, and a Max Signal Level of 4095 was used to generate the
図4Aでは、信号レベルは水平方向のx軸に沿ってプロットされ、ノイズの標準偏差は垂直方向のy軸に沿ってプロットされる。こうして、信号レベル対ノイズ・ルックアップテーブル306が、画素取得プロセス303からx軸に沿った値である現在の画素の値を受け取ると、信号レベル対ノイズ・ルックアップテーブル306は、現在の画素の値についてy軸に沿って曲線の値401を出力する。例えば、現在の画素の信号レベル(現在の画素の値)が1750であると仮定する。信号レベル対ノイズ・ルックアップテーブル306が1750の入力値を受け取ると、信号レベル対ノイズ・ルックアップテーブル306は、現在の画素の標準偏差値28.1を出力する。このルックアップは、図4Aの点線で表される。
In FIG. 4A, the signal level is plotted along the horizontal x-axis and the standard deviation of the noise is plotted along the vertical y-axis. Thus, when the signal level vs. noise lookup table 306 receives a current pixel value from the
一態様では、信号レベル対ノイズ・ルックアップテーブル306は、現在の画素の可能な信号レベルのそれぞれのエントリを含む。ただし、より少ない数のエントリを使用して、エントリ間の補間を使用することもできる。信号レベル対ノイズ・ルックアップテーブル306は、現在の画素の信号レベルについてのノイズの標準偏差を信号レベル変更プロセス307に供給するだけでなく、画素ノイズ生成プロセス311にも供給する。
In one aspect, the signal level vs. noise lookup table 306 includes an entry for each possible signal level of the current pixel. However, a fewer number of entries may be used and interpolation between entries may be used. The signal level vs. noise lookup table 306 provides the standard deviation of the noise for the signal level of the current pixel to the signal
信号レベル変更プロセス307は、第1の画素の時間変化に含まれる標準偏差の数値を決定する、すなわち、第1の画素(現在の画素)の値の時間変化の絶対値を、信号レベル対ノイズ・ルックアップテーブル306から受け取られたノイズ標準偏差入力値で除算する。こうして、第1の画素の値の変化は、この例では推定画素ノイズパラメータである第1の画素の推定画素ノイズレベルと比較される。時間変化の絶対値に含まれる標準偏差の数値は、変更ルックアップテーブル308に入力される。
The signal
変更ルックアップテーブル308に含まれるデータのグラフ表示が図4Bに示されている。ノイズの標準偏差における現在の画素の時間的な信号変化の可能な入力値の範囲は、水平方向のx軸に沿って示され、この例では、可能な入力値はゼロから4の標準偏差の範囲である。曲線402は、可能な入力値のそれぞれについて適応時間ノイズフィルタを通過可能な割合変化の出力を表し、所与の入力に対する曲線の値は、垂直方向のy軸からフィルタを通過可能な現在の画素の時間変化の割合(%)として読み取られる。
A graphical representation of the data contained in the modification lookup table 308 is shown in FIG. 4B. The range of possible input values of the temporal signal change of the current pixel in standard deviations of the noise is shown along the horizontal x-axis, in this example the possible input values range from zero to four standard deviations.
曲線402によって示されるように、1のノイズ標準偏差又はそれ以下のノイズ標準偏差の現在の画素の時間変化について、現在の画素の時間変化の約19%、すなわち第1の固定された一定の割合がフィルタを通過可能にされる。3のノイズ標準偏差又はそれ以上のノイズ標準偏差の現在の画素の時間変化について、現在の画素の時間変化の100%、すなわち第2の固定された一定の割合がフィルタを通過可能にされる、すなわち現在の画素は、フィルタ処理されずにフィルタを通過する。2以上のノイズ標準偏差であるが3のノイズ標準偏差よりも小さい現在の画素の時間変化について、フィルタを通過可能にされる時間変化の割合が、1のノイズ標準偏差についての現在の画素の時間変化の約19パーセントから3のノイズ標準偏差についての100%まで線形的に変化する。
As shown by
例えば、現在の画素の時間変化におけるノイズの2の標準偏差の入力値について、変更ルックアップテーブル308は、フィルタを通過可能にされた現在の画素の時間変化の割合である約59%の値を出力する。このルックアップの例は、図4Bに点線で表されている。 For example, for an input value of 2 standard deviations of the noise in the time evolution of the current pixel, the modification lookup table 308 outputs a value of approximately 59%, which is the percentage of the time evolution of the current pixel that is allowed to pass through the filter. An example of this lookup is represented by the dotted line in FIG. 4B.
一態様では、変更ルックアップテーブル308は使用されず、図4Bに示されるような区分関数に置き換えられる。図4Bに示したものよりも複雑な曲線の場合に、曲線は、約512のエントリを有する変更ルックアップテーブル308で実施される。 In one aspect, the modified lookup table 308 is not used and is replaced with a piecewise function as shown in FIG. 4B. For curves more complex than those shown in FIG. 4B, the curve is implemented with a modified lookup table 308 having approximately 512 entries.
こうして、変更ルックアップテーブル308に入力される現在の画素の時間変化の絶対値に含まれる標準偏差の数値に応答して、変更ルックアップテーブル308は、現在の画素が適応時間ノイズフィルタを通過可能な対応する割合変化(change)を出力する。現在の画素が適応時間ノイズフィルタを通過可能な割合変化(change)は、画素生成プロセス309及び画素ノイズ生成プロセス311に供給される。
Thus, in response to the standard deviation value included in the absolute value of the time change of the current pixel input to the modification lookup table 308, the modification lookup table 308 outputs a corresponding percentage change that allows the current pixel to pass the adaptive temporal noise filter. The percentage change that allows the current pixel to pass the adaptive temporal noise filter is provided to the
画素生成プロセス309は、変更ルックアップテーブル308からのフィルタを通過可能にされた現在の画素の時間変化の割合、フレーム間の画素差分プロセス305からの現在の画素の時間変化、及び格納済みの以前フィルタ処理された画素フレーム304からの第2画素の値を、入力として受け取る。画素生成プロセス309は、変更ルックアップテーブル308からのフィルタを通過可能にされた現在の画素の時間変化の割合に、フレーム間の画素差分プロセス305からの現在の画素の時間変化を乗算し、次にその結果を、格納済みの以前フィルタ処理された画素フレーム304からの第2画素の値に加算して、画素出力フレーム310に渡される適応時間ノイズフィルタ処理された画素を取得する。こうして、適応フィルタ処理された出力画素は、上述した比較に基づいて出力される。
The
画素ノイズ生成プロセス311は、適応時間ノイズフィルタを通過可能になる割合変化(change)、現在の画素の信号レベルに対するノイズ標準偏差(stdCurr)、及び時間的に直前のフレーム内の対応するフィルタ処理された画素の信号レベルに対するノイズ標準偏差(stdPrev)を、入力として受け取る。時間的に直前のフレーム内の対応する画素の信号レベルに対するノイズ標準偏差(stdPrev)は、直前の適応ノイズフィルタによって生成された画素ノイズ標準偏差のフレームである格納済みの以前の画素ノイズフレーム314から受け取られる。
The pixel
画素ノイズ生成プロセス311は、現在のフィルタ処理された画素に対する画素ノイズ標準偏差(stdOut)を生成する。この態様では、現在フィルタ処理された画素に対する画素ノイズ標準偏差(stdOut)は、以下のように規定される。
The pixel
画素ノイズ生成プロセス311は、現在のフィルタ処理された画素に対する画素ノイズ標準偏差(stdOut)を、画素ノイズ出力フレーム312(時には、ノイズ出力フレーム312と呼ばれる)に書き込む。現在の画素ノイズは、適応時間ノイズフィルタ処理された画素のノイズ成分を表す。画素ノイズ生成プロセス311は、処理を最後の画素確認プロセス313に移す。
The pixel
最後の画素確認プロセス313は、現在の画素フレーム内の全ての画素がフィルタ処理されたかどうかを判定する。全ての画素がフィルタ処理された場合に、最後の画素確認プロセス313は新フレーム検索プロセス301に移り、そうでなければ画素取得プロセス303に移る。
The Last
フレーム内の関心のある全ての画素がフィルタ処理されると、(フィルタ処理された画素のフレームと呼ばれる)画素出力フレーム310は、格納済みの以前フィルタ処理された画素フレーム304に移動される。また、画素ノイズ出力フレーム312は、格納済みの以前の画素ノイズフレーム314(時には、格納済の以前のノイズフレーム314と呼ばれる)に移動される。
Once all pixels of interest in a frame have been filtered, the pixel output frame 310 (called the filtered pixel frame) is moved to the stored previously filtered
図3Aの方法350は、フレーム内の少なくとも1つの領域内の各画素を適応時間ノイズフィルタ処理し、その画素の推定画素ノイズに基づいてフィルタを調整する。さらに、この方法は、各画素へのノイズ寄与が撮像パイプラインの各フィルタステージで利用できるように、別のフィルタステージに達するまで、撮像パイプラインの各ステージによって処理される画素ノイズ出力フレームを生成する。各フィルタステージは、そのステージから画素ノイズ出力フレームを生成するオプションを含む。
The
適応時間ノイズフィルタ300は、図3Aの方法350を実行するフィルタの一例である。適応時間ノイズフィルタ300は、第1の加算器320、絶対値モジュール321、除算器322、乗算器323、第2の加算器324、第2~第7の乗算器325,326,328,329,330,331、第3及び第4の加算器327,332、及び平方根モジュール333を含む。適応時間ノイズフィルタ300は、現在の画素フレーム315、格納済みの以前フィルタ処理された画素フレーム304、信号レベル対ノイズ・ルックアップテーブル306、変更ルックアップテーブル308、画素出力フレーム310、画素ノイズ出力フレーム312、及び格納済みの以前の画素ノイズフレーム314に接続される。一態様では、現在の画素フレーム315、格納済みの以前フィルタ処理された画素フレーム304、信号レベル対ノイズ・ルックアップテーブル306、変更ルックアップテーブル308、画素出力フレーム310、画素ノイズ出力フレーム312、及び格納済みの以前の画素ノイズフレーム314のそれぞれが、メモリに格納される。この例では、画素出力フレーム310は、画素出力フレーム310を格納済みの以前フィルタ処理された画素フレーム304に移動させることができるように、格納済みの以前フィルタ処理された画素フレーム304に結合される。同様に、画素ノイズ出力フレーム312は、画素ノイズ出力フレーム312を格納済の以前の画素ノイズ出力フレーム314に移動させることができるように、格納済の以前の画素ノイズ出力フレーム314に結合される。
3A. The adaptive
現在の画素フレーム315、格納済みの以前フィルタ処理された画素フレーム304、信号レベル対ノイズ・ルックアップテーブル306、変更ルックアップテーブル308、画素出力フレーム310、画素ノイズ出力フレーム312、及び格納済みの以前の画素ノイズフレーム314を適応時間ノイズフィルタ300とは別に示すことは、例示に過ぎない。例えば、適応時間ノイズフィルタ300は、図3Bにおいて、現在の画素フレーム315、格納済みの以前フィルタ処理された画素フレーム304、信号レベル対ノイズ・ルックアップテーブル306、変更ルックアップテーブル308、画素出力フレーム310、画素ノイズ出力フレーム312、及び格納済みの以前の画素ノイズフレーム314の全て又はいつかの組合せを含むように示され得る。
The
画素取得プロセス303を実施するために、ライン上の信号(Control)が、適応時間ノイズフィルタ300の加算器320の第1の入力(In1)上で現在の画素フレーム315(時には、フレーム315と呼ばれる)からの第1の画素を駆動し、格納済みの以前フィルタ処理された画素フレーム304(時には、フレーム304と呼ばれる)から加算器320の反転される第2の入力(In2)に第2の画素を駆動する。上述したように、第1の画素は、時には現在の画素と呼ばれる。また、画素が、駆動される、又は入力に供給されると言われたとき、それは画素の値が入力上にあることを意味する。
To implement the
現在の画素は、適応時間ノイズフィルタ300の信号レベル対ノイズ・ルックアップテーブル306の入力(In)にも供給される。格納済みの以前フィルタ処理された画素フレーム304からの第2画素は、第2の加算器324の第2の入力(In2)にも供給される。
The current pixel is also provided to an input (In) of the signal level vs. noise lookup table 306 of the adaptive
加算器320は、格納済みの以前フィルタ処理された画素フレーム304からの第2画素の値を、現在の画素フレーム315からの第1の画素の値から減算する。これら2つの画素の間の差、すなわち第1の画素の時間変化は、適応時間ノイズフィルタ300の乗算器323の第1の入力(In1)及び絶対値モジュール321の入力(IN)に供給される。絶対値モジュール321は、2つの画素の間の時間差の絶対値をとる。2つの画素の時間差の絶対値は、除算器322の(分数の)分子入力(NUM)に供給される。この態様では、加算器320及び絶対値モジュール321を使用して、フレーム間の画素差分プロセス305を実施する。
The
信号レベル対ノイズ・ルックアップテーブル306の入力(In)上の現在の画素の値に応答して、信号レベル対ノイズ・ルックアップテーブル306は、入力信号レベルに対応するノイズ標準偏差を現在の画素の値によって表されるように入力(In)上に出力する。出力ノイズ標準偏差は、除算器322の第2の入力(入力(DENOM))に供給され、且つ乗算器325の両方の入力に供給される。
In response to the value of the current pixel on the input (In) of the signal level vs. noise lookup table 306, the signal level vs. noise lookup table 306 outputs on the input (In) the noise standard deviation corresponding to the input signal level as represented by the value of the current pixel. The output noise standard deviation is provided to a second input (input (DENOM)) of the
信号レベル変更プロセス307は、除算器322によって適応時間ノイズフィルタ300で実施される。上述したように、2つの画素の差の絶対値、すなわち現在の画素の時間変化の絶対値は、除算器322の第1の入力(Num)で受け取られる。今説明したように、信号レベル対ノイズ・ルックアップテーブル306(図3B参照)は、現在の画素の値を入力(In)上で受け取り、入力出力に応答して入力値に対応するノイズ標準偏差を受け取る。図4Aを参照されたい。ノイズ標準偏差は、除算器322の第2の入力(Denom)に提供される。
The signal
除算器322は、第1の入力(Num)の値を第2の入力(Denom)の値で除算し、結果が出力(Out)にある。除算器322の出力(Out)上の結果は、変更ルックアップテーブル308の入力(In)に供給される。こうして、除算器322は、現在の画素の時間変化の絶対値を現在の画素のノイズ標準偏差で除算して、変更ルックアップテーブル308に入力されるノイズの標準偏差における時間的な信号変化を取得する。
The
変更ルックアップテーブル308は、ノイズの標準偏差における入力時間信号変化に応答して、フィルタ300を通過可能な時間変化の割合を出力する。図4Bを参照されたい。フィルタ300を通過可能な時間変化の割合は、乗算器323の第2の入力(In2)、加算器327の反転される第2の入力(In2)、及び乗算器326の両方の入力に供給される。
The modified lookup table 308 outputs the percentage of the time change that can pass through the
こうして、乗算器323は、フィルタ300を通過可能な時間変化の割合を第2の入力(In2)上で、及び第1の画素の時間変化を第1の入力(IN1)上で受け取る。乗算器323は、この2つの入力を乗算して、フィルタ300を通過可能な時間変化を取得する。フィルタ300を通過可能な時間変化は、乗算器323の出力(Out)に出力され、第2の加算器324の第1の入力(In1)に供給される。
Thus, the
加算器324は、フィルタ300を通過可能な時間変化を第1の入力(In1)上で、及び格納済みの以前フィルタ処理された画素フレーム304からの第2の画素の値を第2の入力(In2)上で受け取る。(本明細書で使用される場合に、格納済みの以前フィルタ処理された画素フレーム304からの第2の画素は、そのフレーム内の第2の画素を文字通り参照するのではなく、現在の画素フレーム315内の現在の画素の位置と同じ、すなわち現在の画素の位置に対応する位置を有する、格納済みの以前フィルタ処理された画素フレーム304からの画素を指す。)加算器324は、フィルタ300を通過可能な時間的な信号変化を、格納済みの以前フィルタ処理された画素フレーム304からの第2の画素の値に加算し、その和を出力(Out)に出力する。和は、適応時間ノイズフィルタ処理された画素の値である。加算器324の出力(Out)は、画素出力フレーム310に接続される。こうして、適応時間ノイズフィルタ処理された画素が画素出力フレーム310に書き込まれる。乗算器323及び加算器324が、画素生成プロセス309を実施する。
The
画素出力フレーム310は、撮像パイプラインの残りのステージによって処理され(図5参照)、次にディスプレイユニットに送られる。ディスプレイユニットに送信される画素データのフレームが、画素出力フレーム310を処理する撮像パイプラインの結果であるので、ディスプレイユニットに送信される画素データのフレームは、画素出力フレーム310に基づいていると言える。こうして、画素出力フレーム310に基づく画素データのフレームは、ディスプレイユニットによって表示され、そして上述したように、非適応時間ノイズフィルタ処理で得られたよりもより良好な画像を提供する。
The
現在の画素のノイズ標準偏差(stdCurr)は、乗算器325の入力端子(In1)及び(In2)の両方にある。乗算器325は、この2つの値を乗算して、ノイズ標準偏差の2乗(stdCurr2)を生成する。ノイズ標準偏差の2乗(stdCurr2)は、乗算器330の第1の入力端子(In1)に接続される出力端子(Out)上で駆動される。
The noise standard deviation (stdCurr) of the current pixel is present at both input terminals (In1) and (In2) of
フィルタを通過可能にする時間変化(change)は、乗算器326の入力端子(In1)及び(In2)の両方にある。乗算器326は、この2つの値を乗算して、フィルタを通過可能にする時間変化の2乗(change2)を生成する。フィルタを通過可能にする時間変化の2乗(change2)は、乗算器330の第2の入力端子(In2)に接続される出力端子(Out)上で駆動される。
The change in time that allows the filter to pass is present at both input terminals (In1) and (In2) of
加算器327の第1の入力端子(In1)は入力として「1」を受け取り、反転される第2の入力(In2)は、ゼロと1との間の数として表される、フィルタを通過可能にする時間変化(change)の入力を受け取る。加算器は、フィルタを通過可能な時間変化の割合を1から引いて、値(1-change)を生成する。値(1-change)は、乗算器329の第1の入力端子(In1)及び第2の入力端子(In2)に接続される出力端子(Out)上で駆動される。
The first input terminal (In1) of the
格納済みの以前の画素ノイズフレームに対するライン上の信号(Control)は、現在の画素に対応する以前フィルタ処理された画素ノイズ標準偏差(stdPrev)を乗算器328の両方の入力端子(In1)及び(In2)上で駆動する。また、現在の画素に対応する以前フィルタ処理された画素ノイズ標準偏差(stdPrev)は、現在の画素フレーム315内の現在の画素の位置と格納済みの以前の画素ノイズフレーム314内の位置とが同じである、以前フィルタ処理された画素ノイズ標準偏差(stdPrev)である。乗算器328は、この2つの値を乗算して、以前フィルタ処理された画素ノイズ標準偏差の2乗(stdPrev2)を生成する。以前フィルタ処理された画素ノイズ標準偏差の2乗(stdPrev2)は、乗算器331の第2の入力端子(In2)に接続される出力端子(Out)上で駆動される。
The signal on the line for the stored previous pixel noise frame (Control) drives the previously filtered pixel noise standard deviation (stdPrev) corresponding to the current pixel on both input terminals (In1) and (In2) of the
値(1-change)は、乗算器329の第1の入力端子(In1)と第2の入力端子(In2)との両方にある。乗算器329は、この2つの値を乗算して、値(1-change)2を生成する。(1-change)2の値は、乗算器331の第1の入力端子(In1)に接続される出力端子(Out)上で駆動される。
The value (1-change) is present at both the first input terminal (In1) and the second input terminal (In2) of
フィルタを通過可能にする時間変化の2乗(change2)は、乗算器330の第2の入力端子(In2)上にあり、現在の画素のノイズ標準偏差の2乗(stdCurr2)は、乗算器330の第2の入力端子(In2)上にある。乗算器330は、この2つの値を乗算して、値(change2*stdCurr2)を生成する。値(change2*stdCurr2)は、加算器332の第1の入力端子(In1)に接続される出力端子(Out)上で駆動される。
The square of the time change (change2) that allows the filter to pass is on the second input terminal (In2) of the
現在の画素に対応する以前フィルタ処理された画素のノイズ標準偏差の2乗(stdPrev2)は、乗算器331の第2の入力端子(In2)上にあり、値(1-change)2は、乗算器331の第1の入力端子(In1)上にある。乗算器331は、この2つの値を乗算して、値((1-change)2*stdPrev2)を生成する。値((1-change)2*stdPrev2)は、加算器332の第2の入力端子(In2)に接続される出力端子(Out)上で駆動される。
The square of the noise standard deviation (stdPrev2) of the previously filtered pixel corresponding to the current pixel is present on a second input terminal (In2) of the multiplier 331 and the value (1-change)2 is present on a first input terminal (In1) of the multiplier 331. The multiplier 331 multiplies the two values to generate the value ((1-change)2*stdPrev2). The value ((1-change)2*stdPrev2) is driven on an output terminal (Out) which is connected to a second input terminal (In2) of the
こうして、加算器332は、値(1-change)2*stdPrev2を第2の入力端子(In2)上で、値change2*stdCurr2を第1の入力端子(In1)上で受け取る。加算器332は、この2つの値を加算して、値((1-change)2*stdPrev2+change2*stdCurr2)を生成する。値((1-change)2*stdPrev2+change2*stdCurr2)は、平方根モジュール333の入力端子(In)に接続される出力端子(Out)上で駆動される。
Thus, the
平方根モジュール333は、値((1-change)2*stdPrev2+change2*stdCurr2)の平方根を取って、その結果(stdOut)を現在の画素フレーム315内の現在の画素の位置に対応する画素ノイズ出力フレーム312内の位置に格納する、すなわち、画素ノイズ出力フレーム312内の現在の画素に対応する位置に格納する。第2~第7の乗算器325,326,328,329,330,331と、第3及び第4の加算器327,332と、平方根モジュール333とが、画素ノイズ生成プロセス311を実施する。
The
図5は、複数の適応ノイズフィルタを含む撮像パイプライン530の代表的なステージ501~504のブロック図である。撮像パイプライン530は、撮像パイプライン230の一例である。この撮像パイプラインの例では、適応時間ノイズフィルタ300が第1のステージ501に含まれ、適応空間ノイズフィルタ570が第4のステージ504に含まれる。撮像パイプライン530は、パイプラインの適応ノイズフィルタの出力に基づくフレームをディスプレイユニットに出力する。
Figure 5 is a block diagram of representative stages 501-504 of an
図5の例では、画像取込みユニット201は、ベイヤー(Bayer)赤-緑-青カラーフィルタを有する画像取込みセンサを含む。ベイヤー画素データ入力(data-in)フレーム515は、適応時間ノイズフィルタ300の現在の画素フレームである。ここで、ベイヤー画素データ入力フレーム515は、赤画素データのセット、緑画素データのセット、及び青データのセットを含む。しかしながら、ステージ501において、時間フィルタ処理は、特定の画素のセットの色属性に依存せず、各画素の信号レベルのみに依存する。
In the example of FIG. 5, the
図3A及び図3Bに関して説明したように、ベイヤー画素データ入力フレーム515内の各画素は、信号レベル対ノイズ・ルックアップテーブル506にアクセスし、信号レベル対ノイズ・ルックアップテーブル506は、各画素についてのノイズ標準偏差(推定画素ノイズパラメータ)をフレーム516内のベイヤー画素ノイズに出力する。信号レベル対ノイズ・ルックアップテーブル506は、信号レベル対ノイズ・ルックアップテーブル306と同様である。
3A and 3B, each pixel in the Bayer pixel
適応時間ノイズフィルタ300は、ベイヤー画素データ入力フレーム515及びフレーム516内のベイヤー画素ノイズを入力として受け取り、変更ルックアップテーブル308について前述したような変更ルックアップテーブル508を使用する。変更ルックアップテーブル508は、変更ルックアップテーブル308と同様である。適応時間ノイズフィルタ300は、ベイヤー画素データ入力フレーム515内の各画素についてベイヤー画素データ出力(data-out)フレーム510内の適応時間ノイズフィルタ処理された画素を生成し、且つ図3A及び図3Bに関して上述したように、ベイヤー画素データ入力フレーム515内の各画素についてベイヤー画素ノイズ出力(noise out)フレーム512内の画素ノイズを生成する。そのため、ここでは説明を繰り返さない。
The adaptive
ベイヤー画素データ出力フレーム510及びベイヤー画素ノイズ出力フレーム512は、撮像パイプライン530の第2ステージ502(デモザイク処理ステージ)への入力フレームである。デモザイクプロセス550は、ベイヤー画素データ出力フレーム510の適応時間ノイズフィルタ処理された画素を処理して、フル解像度の赤画素フレーム(imRed)、フル解像度の緑画素フレーム(imGreen)、及びフル解像度の青画素フレーム(imBlue)を生成する。また、デモザイクプロセス550は、ベイヤー画素ノイズデータ出力フレーム512の画素ノイズを処理して、フル解像度の赤画素ノイズフレーム(imNoiseRed)、フル解像度の緑画素ノイズフレーム(imNoiseGreen)、及びフル解像度の青画素ノイズフレーム(imNoiseBlue)を生成する。ベイヤー赤、緑、及び青画素のセットをデモザイク処理して赤、緑、及び青画素のフル解像度フレームを取得するプロセスは、よく知られており、そのためさらに詳細に検討しない。
The Bayer pixel
フル解像度の赤画素フレーム(imRed)、フル解像度の緑画素フレーム(imGreen)、フル解像度の青画素フレーム(imBlue)、フル解像度の赤画素ノイズフレーム(imNoiseRed)、フル解像度の緑画素ノイズフレーム(imNoiseGreen)、及びフル解像度の青画素ノイズフレーム(imNoiseBlue)は、撮像パイプライン530の第3のステージ(色空間変換ステージ)への入力フレームである。色変換プロセス560は、赤画素、緑画素、及び青画素、すなわち、第1の色空間内の色画素を、輝度画素Y及び2つのクロミナンス画素U,V、すなわち第2の色空間内の色画素に変換する。RGB色空間からYUV色空間への変換は、よく知られており、そのためさらに詳細に検討しない。
The full resolution red pixel frame (imRed), full resolution green pixel frame (imGreen), full resolution blue pixel frame (imBlue), full resolution red pixel noise frame (imNoiseRed), full resolution green pixel noise frame (imNoiseGreen), and full resolution blue pixel noise frame (imNoiseBlue) are input frames to the third stage (color space conversion stage) of the
色変換プロセス560は、フル解像度の赤画素フレーム(imRed)、フル解像度の緑画素フレーム(imGreen)、及びフル解像度の青画素フレーム(imBlue)を、フル解像度の輝度画素フレーム(imY)、第1のフル解像度のクロミナンス画素フレーム(imU)、及び第2のフル解像度のクロミナンス画素フレーム(imV)に変換する。色変換プロセス560はまた、フル解像度の赤画素ノイズフレーム(imNoiseRed)、フル解像度の緑画素ノイズフレーム(imNoiseGreen)、及びフル解像度の青画素ノイズフレーム(imNoiseBlue)を、フル解像度の輝度画素ノイズフレーム(imNoiseY)、第1のフル解像度のクロミナンス画素ノイズフレーム(imNoiseU)、第2のフル解像度のクロミナンス画素ノイズフレーム(imNoiseV)に変換する。
The
フル解像度の輝度画素フレーム(imY)、第1のフル解像度のクロミナンス画素フレーム(imU)、第2のフル解像度のクロミナンス画素フレーム(imV)、フル解像度の輝度画素ノイズフレーム(imNoiseY)、第1のフル解像度のクロミナンス画素ノイズフレーム(imNoiseU)、及び第2のフル解像度のクロミナンス画素ノイズフレーム(imNoiseV)は、撮像パイプライン530の第4のステージ504(適応空間ノイズフィルタステージ)への入力である。
The full resolution luminance pixel frame (imY), the first full resolution chrominance pixel frame (imU), the second full resolution chrominance pixel frame (imV), the full resolution luminance pixel noise frame (imNoiseY), the first full resolution chrominance pixel noise frame (imNoiseU), and the second full resolution chrominance pixel noise frame (imNoiseV) are inputs to the fourth stage 504 (adaptive spatial noise filter stage) of the
RGB色空間からYUV色空間に変換する理由の1つは、人間の視覚知覚にとって重要な輝度情報の大部分がYUV色空間の輝度成分Yに保持されることである。こうして、ステージ504において、適応空間ノイズフィルタ570は、輝度成分画素の空間的ノイズを適応フィルタ処理するだけである。これは、画素の2つのクロミナンス成分の空間ノイズを適応フィルタ処理する時間及び費用を掛けずに、最終的に表示される画像を向上させる。しかしながら、撮像パイプライン530で色変換が使用されない場合、又は色変換が輝度成分を含まない別の色空間に変換される場合に、適応空間ノイズフィルタ570は、各色成分の画素を適応空間ノイズフィルタ処理する。
One of the reasons for converting from RGB color space to YUV color space is that most of the luminance information important to human visual perception is preserved in the luminance component Y of the YUV color space. Thus, in
フル解像度の輝度画素フレーム(imY)及びフル解像度の輝度画素ノイズフレーム(imNoiseY)は、適応空間ノイズフィルタ570への入力である。フル解像度の輝度画素ノイズフレーム(imNoiseY)内の画素の値は、フル解像度の輝度画素フレーム(imY)内の対応する画素、すなわち、フレーム(imNoiseY)内の画素ノイズの位置とフレーム(imY)内の位置とが同じ画素のノイズ成分を表す。フレーム(imNoiseY)内の画素ノイズ値は、フレーム(imY)内の対応する画素のフィルタを特定する際に使用されるので、フィルタは適応空間ノイズフィルタであると言われる。このフィルタは、全ての画素について同じ定数パラメータを空間ノイズフィルタにおいて使用できると仮定するのではなく、各画素に関連する空間ノイズに適応される。
The full resolution luma pixel frame (imY) and the full resolution luma pixel noise frame (imNoiseY) are inputs to the adaptive
適応空間ノイズフィルタ570は、適応空間ノイズフィルタ処理された画素の出力フレーム(imYout)及び画素ノイズの出力フレーム(imNoiseYout)を生成する。クロミナンス画素フレーム(imU)及びクロミナンス画素フレーム(imV)は、それぞれクロミナンス画素フレーム(imUout)及びクロミナンス画素フレーム(imVout)としてフィルタ処理されずに出力される。クロミナンス画素ノイズフレーム(imNoiseU)及びクロミナンス画素ノイズフレーム(imNoiseV)は、クロミナンス画素ノイズフレーム(imNoiseUout)及びクロミナンス画素ノイズフレーム(imNoiseVout)としてフィルタ処理されずに出力される。一態様では、適応空間ノイズフィルタ処理された画素のフレーム(imYout)、クロミナンス画素フレーム(imUout)、及びクロミナンス画素フレーム(imVout)は、パイプラインステージ504から出力される。これらのフレームは、パイプラインでさらに処理され、ディスプレイ装置に送信することができ、又は一態様ではディスプレイ装置に送信することができる。
The adaptive
一態様では、適応空間ノイズフィルタ570は、適応空間ノイズ・バイラテラル(bilateral)フィルタとして、例えば以下のように実施され、
ここで、
は、フレーム内の位置xにおける画素のフィルタ処理された信号レベルである。
適応空間ノイズフィルタ570は、現在の画素をどの様にフィルタ処理するかを決定するために、現在の画素の周りの正方形の画素のブロック、例えば、複数の隣接画素を使用する。距離フィルタ(Distance Filter)は、現在の画素からのブロック内の隣接画素のユークリッド距離から決定された重みに基づいて、現在の画素をフィルタ処理する。信号レンジフィルタ(時には、レンジフィルタ(Range Filter)又は強度フィルタとも呼ばれる)は、フィルタ処理される画素に対応するフレーム(imNoiseY)内の画素ノイズの値に基づく適応ノイズ信号レンジフィルタである。こうして、レンジフィルタで使用される重みは、ブロック内の隣接画素と現在の画素との間の信号レベルの差だけでなく、現在の画素のノイズ成分にも基づく。入力画素フレーム内の現在の画素の位置と同じ位置にある画素ノイズ入力フレームの画素ノイズは、現在の画素に対応すると言われ、時には、現在の画素のノイズ成分と呼ばれることもある。
In one aspect, the adaptive
Where:
is the filtered signal level of the pixel at position x in the frame.
The adaptive
非ノイズ適応バイラテラルフィルタが知られている。例えば、C. Tomasi及びR. Manduchiの、”Bilateral Filtering for Gray and Color Images”、1998年コンピュータビジョンに関するIEEE国際会議の議事録、Bombay India、pp.839-846(1998)を参照されたい。この文献は、当技術分野の知識の論証として参照により本明細書に組み込まれる。 Non-noise adaptive bilateral filters are known. See, for example, C. Tomasi and R. Manduchi, "Bilateral Filtering for Gray and Color Images," Proceedings of the 1998 IEEE International Conference on Computer Vision, Bombay India, pp. 839-846 (1998), which is incorporated herein by reference as a demonstration of knowledge in the art.
従来技術のバイラテラルフィルタと同様に、適応空間ノイズフィルタ570は、非線形のエッジ保存フィルタである。しかしながら、先に述べたように、従来のバイラテラルフィルタとは異なり、画素について、適応空間ノイズフィルタは、画素からの隣接画素のユークリッド距離に基づくだけでなく、隣接画素と現在の画素との間の信号レベルの差及び現在の画素のノイズ成分にも基づいて、フィルタで使用される重みを調整する。具体的には、以下でより完全に説明するように、適応空間ノイズフィルタ570は、現在の画素の近傍の画素の加重和をとる。重みは、現在の画素自体のノイズ成分だけでなく、隣接画素の空間距離及び信号レベルにも依存する。こうして、フレーム内の各画素における信号値は、近傍の画素からの信号値のノイズに基づく重み付き平均で置き換えられる。
Like prior art bilateral filters, adaptive
適応空間ノイズフィルタ570は、ノイズを平均化及び減少させながら、エッジ保存の効果をアーカイブする(archive)ために全画素について一定の信号範囲パラメータ(σr)に依存するバイラテラルフィルタの以前の実装とは異なり、その画素のノイズ成分に基づいて各画素について信号範囲パラメータ(σr)を調整する。こうして、フレーム内の各画素は、画素に関連するノイズに基づいて左右相称に(bilaterally)フィルタ処理される。すなわち、空間バイラテラルフィルタは各画素のノイズに適応する。
Unlike previous implementations of bilateral filters that rely on a constant signal range parameter (σr) for all pixels to archive the effects of edge preservation while averaging and reducing noise, the adaptive
一態様において、以下の式は、撮像パイプライン530に実装された適応空間ノイズフィルタ570の規定である。
ここで、
は、位置xにおける画素のフィルタ処理された信号レベルであり、
は、正規化定数であり、
は、空間的なガウス分布であり、
は、位置yの画素と位置xの画素との間の距離のノルム(norm)であり、
は、通常1~10の範囲の距離パラメータであり、
は、位置xにおける現在の画素のノイズの関数である信号レベル範囲のガウス分布(signal level range Gaussian distribution)であり、
は、位置yにおける画素の信号レベルであり、
は、位置xにおける画素の信号レベルであり、
は、位置yにおける画素の信号レベルと位置xにおける画素の信号レベルとの差の絶対値であり、
は、位置xにおける画素のノイズの関数である信号レベルレンジパラメータであり、
は、位置xに中心画素を有する画素のブロックであり、
は、位置xに中心画素を有する画素ブロック内の画素に亘る総和を表す。
位置x及び位置yは、画素のブロック内の位置を指定し、各位置は2つの座標によって表されることに留意されたい。
In one aspect, the following equation is the definition of the adaptive
Where:
is the filtered signal level of the pixel at location x,
is a normalization constant,
is a spatial Gaussian distribution,
is the norm of the distance between the pixel at position y and the pixel at position x,
is a distance parameter, typically ranging from 1 to 10,
is the signal level range Gaussian distribution that is a function of the noise of the current pixel at position x,
is the signal level of the pixel at position y,
is the signal level of the pixel at position x,
is the absolute value of the difference between the signal level of the pixel at position y and the signal level of the pixel at position x,
is a signal level range parameter that is a function of the noise of the pixel at location x,
is a block of pixels with its center pixel at position x,
represents the sum over the pixels in the pixel block having its center pixel at position x.
Note that position x and position y specify a location within a block of pixels, and each location is represented by two coordinates.
図6Aは、適応空間ノイズ画素フィルタ処理のための方法650の一実装形態のプロセスフロー図である。図6Bは、適応空間ノイズフィルタ670における図6Aの方法650の一実装形態のブロック図である。一態様では、適応空間ノイズフィルタ670は、撮像パイプライン230及び撮像パイプライン530で使用することができる。適応空間ノイズフィルタ670は、適応空間ノイズフィルタ570の一例である。
FIG. 6A is a process flow diagram of one implementation of a
最初に、新フレーム検索プロセス601は、新しい画素フレーム602、例えば、フレーム(imY)を取り出す。新フレーム検索プロセス601はブロック取得プロセス603に移る。
First, the new
ブロック取得プロセス603は、現在の画素フレーム616(図6B参照)から現在の画素の周りに中心を置いた、n×n画素の入力ブロックを取り出す。フレーム内の各画素が適応空間ノイズフィルタ処理されるか、又はフレーム内の少なくとも複数の画素が適応空間ノイズフィルタ処理され、そのため、現在の画素は、適応空間ノイズフィルタ処理された画素である。一態様では、n×n画素の入力ブロックは、現在の画素をブロックの中央に有する5画素×5画素のブロックである。ブロック取得プロセス603は、距離フィルタ(Distance Filter)プロセス604に移る。
The
距離フィルタプロセス604は、入力ブロックの画素の各画素、すなわち入力画素ブロックの各画素について上記で規定された空間ガウス関数の値を生成し、その結果、n×nの距離フィルタ値ブロックにおけるそれぞれの位置について距離フィルタ値を生成する。距離フィルタプロセス604は、レンジ差(Range Difference)プロセス605に移る。
The
レンジ差プロセス605は、現在の画素と入力画素ブロック内の他の画素のそれぞれとの間の信号レベルの差を決定する。具体的には、レンジ差プロセス605は、I(y)-I(x)の値を求め、ここで、xはブロック内の中心画素の位置であり、I(x)は中心画素の値であり、I(y)は入力画素ブロック内の位置yにおける画素の値であり、yは入力画素ブロック内の位置の範囲にあり、n×nのレンジ差ブロックにおける各位置についてレンジ差を生成する。レンジ差プロセス605は、範囲フィルタ(Range Filter)プロセス606に移る。
The
範囲フィルタプロセス606は、上述したように現在の画素のノイズの関数である信号レベル範囲のガウス分布を実現する。範囲フィルタプロセス606は、信号レベル範囲のガウス分布を実現するために、現在の画素の信号レベルレンジパラメータ(σ(Noise)r)のノイズ依存値を必要とする。ここで、信号レベルレンジパラメータ(σ(Noise)r)の括弧内にノイズ(Noise)が含まれることは、信号レベルレンジパラメータ(σr)が現在の画素のノイズ成分の関数であることを意味する。この関数の結果は、バイラテラルフィルタのレンジフィルタが適応性を有し、左右相称にフィルタ処理される画素のノイズ成分に基づいて変化する結果となることである。その結果、空間ノイズフィルタはノイズに適応するため、適応空間ノイズフィルタと呼ばれる。こうして、適応空間ノイズフィルタは、位置yにおける画素の信号レベルと位置xにおける画素の信号レベルとの間の差の絶対値の2乗を、信号レベルレンジパラメータ(σ(Noise)r)の2乗で除算することによって、現在の画素の信号レベルを、複数の隣接画素の信号レベル及び推定画素ノイズパラメータと比較する。ここで、信号レベルレンジパラメータ(σ(Noise)r)は、この態様では推定画素ノイズパラメータである。この比較は、適応空間ノイズフィルタ処理された画素値を出力する際に使用される。
The
一態様(図示せず)では、信号レベルレンジパラメータ(σ(Noise)r)は、現在の画素のノイズ成分の線形関数である。この態様では、現在の画素の位置は、パイプラインのステージに入力される画素ノイズデータのフレーム内の対応する位置、例えば同じ位置から画素ノイズを取り出すために使用される。取り出される画素ノイズは、中心画素に対応する。中心画素のノイズ成分である画素ノイズが線形関数に入力され、信号レベルレンジパラメータ(σ(Noise)r)が得られる。撮像パイプライン530の場合に、画素ノイズデータの入力フレーム612は、フレーム(imNoiseY)である。一態様では、線形関数の傾きは、2~3の間である。一態様では、傾き及びオフセットは、傾き及びオフセットとして異なる値を使用し、各値について適応空間フィルタを用いてノイズ画像をフィルタ処理し、次に、オブザーバのグループによって決定されるように、最良のフィルタ処理された画像を生成する値を選択することによって、経験的に決定される。
In one aspect (not shown), the signal level range parameter (σ(Noise)r) is a linear function of the noise component of the current pixel. In this aspect, the position of the current pixel is used to retrieve pixel noise from a corresponding location, e.g., the same location, in the frame of pixel noise data input to the stage of the pipeline. The retrieved pixel noise corresponds to the center pixel. The pixel noise, which is the noise component of the center pixel, is input to the linear function to obtain the signal level range parameter (σ(Noise)r). In the case of the
別の態様では、図6Aに示されるように、現在の画素の位置は、画素ノイズデータフレーム612から画素ノイズを検索するために使用され、画素ノイズは、ノイズ対シグマRルックアップテーブル613に入力される。このテーブルは、線形関数について説明したものと同等の手順を用いて経験的に生成されるが、より複雑な曲線が使用される。こうして、ノイズ対シグマRルックアップテーブル613は、複数の画素ノイズレベルのそれぞれについて信号レベルレンジパラメータ(σ(Noise)r)を含み、ここで一態様では、複数の画素ノイズレベルは、手術画像で一般的に遭遇する画素ノイズの範囲を含む。ノイズ対シグマRルックアップテーブル613は、入力画素ノイズに対応する信号レベルレンジパラメータσ(Noise)rを範囲フィルタプロセス606に出力し、それによって現在の画素のノイズ成分に依存する信号レベルレンジパラメータσ(Noise)rを出力する。
In another aspect, as shown in FIG. 6A, the current pixel location is used to look up the pixel noise from the pixel
こうして、範囲フィルタプロセス606は、n×nブロックの範囲フィルタ処理された値を生成し、ここで、範囲フィルタ処理された値のn×nブロックの所与の位置における範囲フィルタ処理された値は、所与の位置とn×nブロックのレンジ差の同じ位置から、例えば対応する位置からの入力レンジ差及び入力信号レベル(σ(Noise)r)を使用する信号レベル範囲のガウス分布の値である。こうして、範囲フィルタプロセス606は、フィルタ結合(Combine Filters)プロセス607に移る。
Thus,
フィルタ結合プロセス607は、距離フィルタ値のn×nブロック内の位置の値に、2つのブロック内の各位置についてのレンジフィルタ(range filter)値のn×nブロックの内の同じ位置の値を乗算し、n×nの合成フィルタ値ブロックにおける各位置について合成フィルタ値を生成する。フィルタ結合プロセス607は、正規化プロセス608に移る。
The
正規化プロセス608は、まず、上で規定した正規化定数Cの値を決定する。具体的には、正規化プロセス608は、n×nブロックの合成フィルタ値の値を合計して、正規化定数Cを生成する。次に、正規化プロセス608は、n×nの合成フィルタ値ブロックの各位置の値を正規化定数Cで除算して、n×nの正規化された合成フィルタ値ブロックを生成する。正規化プロセス608は、画素生成プロセス609に移る。
画素生成プロセス609は、適応空間ノイズフィルタ処理された画素を生成し、(時には、画素データの出力フレーム又はフィルタ処理された画素出力フレームと呼ばれる)フィルタ処理された画素データの出力フレーム614に適応空間ノイズフィルタ処理された画素を書き込む。具体的には、画素生成プロセス609は、n×nの正規化された合成フィルタ値ブロックの同じ位置の値に、n×nの入力画素ブロックの同じ位置の値を乗算することによって、n×nの適用フィルタ値ブロックにおける位置について適用フィルタ値を生成する。乗算は、ブロック内の各位置について行われる。最後に、ブロック中央の画素の適応空間ノイズフィルタ処理された画素を生成するために、画素生成プロセス609は、n×nブロックの適用フィルタ値の値を合計して、適応空間ノイズフィルタ処理された画素を取得し、この適応空間ノイズフィルタ処理された画素は、フィルタ処理された画素データの出力フレーム614内の適切な位置、すなわち、現在の画素フレーム616内の中心画素の位置と同じフィルタ処理された画素データの出力フレーム614内の位置に書き込まれる。フィルタ処理された画素データの出力フレーム614は、時には、フィルタ処理された画素データ出力フレーム614と呼ばれる。
The
画素ノイズ生成プロセス610は、オプションであり、典型的には適応ノイズフィルタを使用するパイプラインにおいて別のフィルタステージが後にある場合に実施される。上記のように、正規化定数Cは、以下のように規定される。
The pixel
正規化定数Cを決定する際に、n×nブロックの合成フィルタ値が生成され、ブロック内の位置における合成フィルタ値(Cxy)は、以下のように表される。
In determining the normalization constant C, an n×n block of composite filter values is generated, and the composite filter value (C x y ) at a position within the block is expressed as follows:
また、上で説明したように、n×nの合成フィルタ値ブロックの各位置の値を正規化定数Cで除算して、以下に示されるような、n×nブロックの正規化された合成フィルタ値(CFN)を生成した。
Also, as explained above, the value at each position of the n×n composite filter value block is divided by a normalization constant C to generate a normalized composite filter value (CFN) for the n×n block, as shown below.
画素ノイズ生成プロセス610は、正規化プロセス608からこのn×nブロックの正規化された合成フィルタ値(CFN)を受け取る。また、現在の画素を中心とするn×n画素ブロックの各画素について、画素ノイズデータのフレーム612内に対応する画素ノイズ標準偏差(stdPixi,j)を含む。現在の画素の画素ノイズ出力標準偏差(stdOut)は、以下のように規定される。
A pixel
画素ノイズ出力標準偏差(stdOut)は、画素ノイズ出力フレーム615(時には、画素ノイズデータの出力フレーム615と呼ばれる)に渡される。画素ノイズ生成プロセス610は、プロセスを最後の画素確認プロセス611に移す。
The pixel noise output standard deviation (stdOut) is passed to the pixel noise output frame 615 (sometimes called the pixel noise data output frame 615). The pixel
最後の画素確認プロセス611は、現在の画素フレーム内の全ての画素がフィルタ処理されているかどうかを判定する。全ての画素がフィルタ処理されている場合に、最後の画素確認プロセス611は、新フレーム検索プロセス601移り、そうでなければブロック取得プロセス603に移る。
The Check
以下は、適応空間ノイズフィルタ670の一態様の擬似コード実装である。
sigmaD = 1 “距離フィルタのシグマ値”
I = [5, 5] “ブロックのサイズを規定する”
distFilt = fspecial('gausian',[5, 5], 10) “ブロック内の各位置について距離フィルタを評価する”
cp = I(3, 3) “中心画素を規定する”
diff = I-cp “各画素と中心画素との間の信号レベル差”
np = location of cp in noise frame “中心画素に対応する画素ノイズを規定する”
sigmaR = lookup (np) “中心画素に対応するノイズ画素の関数としてSigmaRを取得する”
rangeFilt = exp(-diff.^2/2*sigmaR^2))) “ブロック内の各位置の範囲フィルタを評価する”
combFilt = rangeFilt. * distFilt “範囲フィルタの各要素に、距離フィルタの対応する要素を乗算する”
sumFilt = sum(combFilt(:)) “結合フィルタの値を合計する”
combFiltNorm = comFilt./sumFilt “結合フィルタの各値を正規化係数で除算する”
appliedFilter = I. * comFiltNorm “ブロック内の各画素に正規化結合フィルタを乗算する”
newValue = sum(appliedFilter(:)) “フィルタ処理された中心画素は、適用されたフィルタの値の合計である”
一態様では、適応空間ノイズフィルタは、コンピュータプログラミング言語で書かれ、撮像パイプライン内のプロセッサ上で実行可能な実行可能モジュールにコンパイルされる。あるいはまた、適応空間フィルタは、ハードウェア、ファームウェア、或いはハードウェア、ファームウェアの任意の組合せ、並びにプロセッサ及び実行可能モジュールの組合せで実装することができる。例えば、図6Bを参照されたい。
Below is a pseudocode implementation of one embodiment of the adaptive spatial noise filter 670.
sigmaD = 1 "sigma value of the distance filter"
I = [5, 5] "specifies the size of the block"
distFilt = fspecial('gausian',[5, 5], 10) "Evaluate the distance filter for each location in the block"
cp = I(3, 3) "specifies the center pixel"
diff = I-cp "signal level difference between each pixel and the center pixel"
np = location of cp in noise frame "Specifies the pixel noise corresponding to the central pixel"
sigmaR = lookup(np) "Get SigmaR as a function of the noise pixel corresponding to the center pixel"
rangeFilt = exp(-diff.^2/2*sigmaR^2))) "Evaluate the range filter at each position in the block"
combFilt = rangeFilt. * distFilt "Multiply each element of the range filter by the corresponding element of the distance filter."
sumFilt = sum(combFilt(:)) "sum up the values of the combined filters"
combFiltNorm = comFilt./sumFilt "Divide each value of the combined filter by a normalization factor"
appliedFilter = I. * comFiltNorm "Multiply each pixel in the block by the normalized combined filter"
newValue = sum(appliedFilter(:)) "The filtered center pixel is the sum of the values of the applied filters"
In one aspect, the adaptive spatial noise filter is written in a computer programming language and compiled into an executable module that can run on a processor in the imaging pipeline. Alternatively, the adaptive spatial filter can be implemented in hardware, firmware, or any combination of hardware, firmware, and combination of processors and executable modules. See, e.g., FIG. 6B.
適応空間ノイズフィルタ670は、図6Aの方法650を実行するフィルタの一例である。適応空間ノイズフィルタ670は、距離フィルタモジュール620、第1の集計器(summer)621、範囲フィルタモジュール622、第1の乗算器623、第2の集計器624、除算器625、第2の乗算器626、第3の集計器627、乗算器バンク628、第4の集計器629、及び平方根モジュール630を含む。適応空間ノイズフィルタ670は、現在の画素フレーム616、現在の画素ノイズフレーム612、ノイズ対シグマRルックアップテーブル613、フィルタ処理された画素データの出力フレーム614、及び画素ノイズ出力フレーム615に接続される。一態様では、現在の画素フレーム616、現在の画素ノイズフレーム612、ノイズ対シグマRルックアップテーブル613、フィルタ処理された画素出力フレーム614、及び画素ノイズ出力614のそれぞれは、メモリに格納される。
6A. The adaptive spatial noise filter 670 includes a
現在の画素フレーム616、現在の画素ノイズフレーム612、ノイズ対シグマRルックアップテーブル613、フィルタ処理された画素出力フレーム614、及び画素ノイズ出力フレーム615を適応空間ノイズフィルタ670とは別のものとして示すことは、例示に過ぎない。例えば、適応空間ノイズフィルタ670は、現在の画素フレーム616、現在の画素ノイズフレーム612、ノイズ対シグマRルックアップテーブル613、フィルタ処理された画素出力フレーム614、及び画素ノイズ出力フレーム615の全て又はいくつかの組合せを含むように図6Bに描かれ得る。
The depiction of the
ブロック取得プロセス603を実施するために、制御信号が、現在の画素フレーム616(時には、フレーム616とも呼ばれる)に供給され、画素のブロックI(n, n)が距離フィルタモジュール620に、及び集計器621の第1の入力に供給され、ブロックI(n, n)の中心画素(cp)は、適応空間ノイズフィルタ670の集計器621の第2の反転入力(In2)に供給される。ここで、nは、正の非ゼロの奇数である。
To implement the
上述したように、中心画素は、時には現在の画素と呼ばれる。また、画素が、入力上で駆動される、又は入力に供給されると言われるとき、それは画素の値が入力上にあることを意味する。 As mentioned above, the center pixel is sometimes called the current pixel. Also, when a pixel is said to be driven on an input or fed to an input, it means that the value of the pixel is on the input.
距離フィルタモジュール620は、ブロックI(n, n)の各画素、すなわちブロックI(n, n)の各位置について上記で規定した空間ガウス関数を実施し、ブロックI(n, n)の各位置について距離フィルタ値を生成する。距離フィルタモジュール620は、距離フィルタプロセス604を実施する。
The
集計器621は、ブロックI(n, n)内の各値から中心画素の値を減算する。すなわち、集計器621は、現在の画素とブロックI(n, n)内の他の画素のそれぞれとの間の信号レベルの差を決定して、n×nブロックの信号レベルレンジ差を生成する。集計器621は、n×nブロックの信号レベルレンジ差を出力(Out)に出力する。集計器621は、レンジ差プロセス605を実施する。
The
範囲フィルタモジュール622は、上述したように現在の画素のノイズの関数である信号レベル範囲のガウス分布を実現する。信号レベルを実現するために、範囲フィルタモジュール622は、ブロックI(n, n)の中心画素に対する信号レベルレンジパラメータ(σ(Noise)r)のノイズ依存値が必要である。
The
この態様では、現在の画素(cp)の位置は、画素ノイズデータ612のフレーム内の同じ位置の画素ノイズを取り出すために使用され、画素ノイズは、ノイズ対シグマRルックアップテーブル613に入力される。取り出された画素ノイズは、ブロックI(n, n)の中心画素に対応する画素ノイズである。入力画素ノイズに応答して、ノイズ対シグマRルックアップテーブル613は、信号レベルレンジパラメータ(σ(Noise)r)を第2の入力(In2)上で範囲フィルタモジュール622に提供する。範囲フィルタモジュール622は、集計器621からn×nブロックの信号レベルレンジ差を第1の入力(In1)上で受け取る。
In this embodiment, the location of the current pixel (cp) is used to retrieve the pixel noise of the same location within the frame of
こうして、範囲フィルタモジュール622は、ブロックI(n, n)内の各位置のレンジフィルタ値を生成する。n×nのレンジフィルタ値ブロックの所与の位置におけるレンジフィルタ値は、n×nの信号レベルレンジ差ブロックのその所与の位置についての入力レンジ差及び入力信号レベル(σ(Noise)r)を使用する信号レベル範囲のガウス分布の値である。範囲フィルタモジュール622は、範囲フィルタプロセス606を実施する。
Thus, the
乗算器623は、第1の入力(In1)上でn×nブロックの距離フィルタ値を受け取り、第2の入力端子(In2)上でn×nブロックのレンジフィルタ値を受け取る。乗算器623は、n×nの距離フィルタ値ブロックの距離フィルタ値に、n×nのレンジフィルタ値ブロックの対応するレンジフィルタ値を乗算し、その結果をn×n結合フィルタブロックの対応する位置に入れる。ここで、距離フィルタ値ブロックの位置(1,1)における距離フィルタ値は、レンジフィルタ値ブロックの位置(1,1)におけるレンジフィルタ値、及び合成フィルタ値ブロックの位置(1,1)における合成フィルタ値に対応し;距離フィルタ値ブロックの位置(1,2)における距離フィルタ値は、レンジフィルタ値ブロックの位置(1,2)のレンジフィルタ値、及び合成フィルタ値ブロックの位置(1,2)における合成フィルタ値に対応し;・・・距離フィルタ値ブロックの位置(2,1)における距離フィルタ値は、レンジフィルタ値ブロックの位置(2,1)におけるレンジフィルタ値、及び合成フィルタ値ブロックの位置(2,1)における合成フィルタ値に対応する(以下同様)。こうして、一般にここでは、2つのn×nブロック内の同じ位置にあるエントリは、対応すると言われる。n×nブロックの合成フィルタ値は、乗算器623の出力(Out)に供給される。乗算器623は、結合フィルタプロセス607を実施する。
The
集計器624は、入力(In)上でn×nブロックの合成フィルタ値を受け取る。集計器624は、上で規定した正規化定数Cを生成するために、n×nの合成フィルタ値ブロックの値を合計する。正規化定数Cが集計器624の出力(Out)に供給される。
The
除算器625は、(分数の)分子入力(Num)でn×nブロックの合成フィルタ値を受け取り、分母端末(Denom)で正規化定数Cを受け取る。除算器625は、n×nの合成フィルタ値ブロックの各合成フィルタ値を正規化定数Cで除算して、n×nブロックの正規化された合成フィルタ値を生成する。n×nブロックの正規化された合成フィルタ値が、除算器625の出力(Out)に供給される。集計器624及び除算器625は、正規化プロセス608を実施する。
乗算器626は、第1の入力(In1)上で画素ブロックI(n, n)を受け取り、第2の入力(In2)上でn×nブロックの正規化された合成フィルタ値を受け取る。乗算器は、正規化された合成フィルタ値のそれぞれに画素ブロックI(n, n)内の対応する画素を乗算することによって、n×nブロックの適用フィルタ値を生成する。ここでも、画素ブロックの位置(1,1)における画素値は、正規化された合成フィルタ値ブロックの位置(1,1)における正規化された合成フィルタ値、及び適用フィルタ値ブロックの位置(1,1)における適用フィルタ値に対応し;画素ブロックの位置(1,2)における画素値は、正規化された合成フィルタ値ブロックの位置(1,2)における正規化された合成フィルタ値、及び適用フィルタ値ブロックの位置(1,2)における適用フィルタ値に対応する(以下同様)。n×nブロックの適用フィルタ値は、乗算器626の出力(OUT)に供給される。
The
集計器627は、入力(IN)上でn×nブロックの適用フィルタ値を受け取る。集計器624は、画素ブロックI(n,n)の中心画素について適応空間ノイズフィルタ処理された画素を生成するために、n×nの適用フィルタ値ブロックの値を合計する。中心画素について適応空間ノイズフィルタ処理された画素が集計器627の出力(OUT)に供給されるので、その適応空間ノイズフィルタ処理された画素は、フィルタ処理された画素出力フレーム614の適切な位置に、すなわち、現在の画素フレーム616の中心画素(cp)の位置と同じフィルタ処理された画素出力フレーム614の位置に書き込まれる。乗算器626及び集計器627は、画素生成プロセス609を実施する。
The
乗算器バンク628は、第1の入力(In1)上で画素ノイズデータフレーム612からn×nブロックの画素ノイズ標準偏差(stdPixi,j)を受け取り、第2の入力端子(In2)上で、n×nブロックの正規化された合成フィルタ値を受け取る。乗算器バンク623は、入力値のそれぞれをそれ自体で乗算し、一方のブロックの2乗値に他方のブロックの対応する2乗値を乗算する。画素ノイズ標準偏差の2乗と正規化された合成フィルタ値の2乗との積から構成されるn×nブロックが、乗算器バンク628の出力(Out)に供給され、集計器629の入力端子(In)を駆動する。
The
集計器629は、画素ノイズ標準偏差の2乗と正規化された合成フィルタ値の2乗との積から構成されるn×nブロックを入力(In)上で受け取る。集計器624は、画素ノイズ標準偏差の2乗と正規化された合成フィルタ値の2乗との積から構成されるn×nブロックの値を合計する。結果は、集計器629の出力(Out)に供給される。
The
平方根モジュール630は、入力(In)で集計器629の出力(Out)の結果を受け取る。平方根モジュール630は、入力値の平方根をとり、画素ノイズ出力標準偏差(stdOut)を画素ノイズ出力フレーム615に供給する。乗算器バンク628、集計器629、及び平方根モジュール630は、画素ノイズ生成プロセス610を実施する。
The
上述した適応ノイズフィルタは、実際には任意数のモジュールによって実施してもよく、各モジュールは、任意のコンポーネントの組合せを含んでもよい。各モジュール及び各コンポーネントは、ハードウェア、プロセッサ上で実行されるソフトウェア、及びファームウェア、又はこれらの3つの任意の組合せを含むことができる。また、本明細書で説明するように、適応ノイズフィルタの機能及び動作は、1つのモジュールによって実行してもよく、又は異なるモジュール間で、又はモジュールの異なるコンポーネント間で分割してもよい。異なるモジュール又はコンポーネントの間で分割される場合に、モジュール又はコンポーネントは、1つの場所に集中されるか、又は分散処理目的のために、コンピュータ支援手術システムに亘って分散され得る。こうして、適応ノイズフィルタへの言及は、単一の物理的エンティティを必要とするものとして解釈すべきではない。 The adaptive noise filter described above may actually be implemented by any number of modules, and each module may include any combination of components. Each module and each component may include hardware, software running on a processor, and firmware, or any combination of the three. Also, as described herein, the functions and operations of the adaptive noise filter may be performed by one module, or may be divided among different modules or among different components of a module. When divided among different modules or components, the modules or components may be centralized in one location or distributed across the computer-assisted surgery system for distributed processing purposes. Thus, reference to an adaptive noise filter should not be construed as requiring a single physical entity.
上記の例では、単一の撮像パイプラインについて示し、説明した。しかしながら、立体視シーンを利用するシステムでは、上述したパイプラインと同一の第2のパイプラインが使用され、1つのパイプラインが左画像取込みユニットからの左取込みフレームを処理し、別のパイプラインが右画像取込みユニットから右取込みフレームを処理する。第2のパイプラインについての上述した説明を繰り返すことは冗長であり、そのため、明確にするためにここには含まれていない。 In the above examples, a single imaging pipeline is shown and described. However, in a system utilizing stereoscopic scenes, a second pipeline identical to the one described above is used, with one pipeline processing left captured frames from a left image capture unit and another pipeline processing right captured frames from a right image capture unit. It would be redundant to repeat the above description of the second pipeline, and so for the sake of clarity, it is not included here.
本明細書で使用する「第1」、「第2」、「第3」等は、異なる構成要素又は要素を区別するために使用される形容詞である。こうして、「第1」、「第2」、及び「第3」は、構成要素又は要素の順序を暗示することを意図せず、又は構成要素又は要素の総数を暗示することを意図しない。 As used herein, "first," "second," "third," etc. are adjectives used to distinguish between different components or elements. Thus, "first," "second," and "third" are not intended to imply an order of the components or elements or a total number of components or elements.
本発明の態様及び実施形態を示す上記の説明及び添付の図面は、限定と解釈すべきではなく、特許請求の範囲が保護される発明を規定する。この説明及び特許請求の範囲の精神及び範囲から逸脱することなく、様々な機械的、組成的、構造的、電気的、及び動作的な変更を行うことができる。いくつかの例では、周知の回路、構造、及び技術は、本発明を不明瞭にすることを避けるために、詳細には示していないか又は説明していない。 The above description and accompanying drawings illustrating aspects and embodiments of the present invention should not be construed as limiting, but rather define the invention for which the claims are protected. Various mechanical, compositional, structural, electrical, and operational changes may be made without departing from the spirit and scope of this description and the claims. In some instances, well-known circuits, structures, and techniques have not been shown or described in detail to avoid obscuring the invention.
さらに、この説明の用語は本発明を限定するものではない。例えば、「下の(beneath)」、「より下の(below)」、「下方の(lower)」、「上の(above)」、「上方の(upper)」、「基端」、「先端」等の空間的に関連する用語は、図に示されるように、1つの要素又は特徴の別の要素又は特徴に対する関係を示す。これらの空間的に関連する用語は、図に示された位置及び向きに加えて、使用又は操作中の装置の異なる位置(すなわち、配置)及び向き(すなわち、回転配置)を包含するように意図されている。例えば、図中の装置がひっくり返された場合に、他の要素又は特徴「より下(below)」又は「の下(beneath)」と記載された要素は、次に他の要素又は特徴の「上(above)」又は「上(over)」になる。こうして、例示的な用語「より下の(below)」は、上及び下の両方の位置及び向きを含むことができる。この装置は、他の方法で向き合わせてもよく(90度又は他の向きに回転してもよい)、本明細書で使用される空間的に関連する説明はそれに応じて解釈される。同様に、様々な軸線に沿った及びその軸線の周りの動きの説明には、様々な特殊な装置の位置及び向きが含まれる。 Moreover, the terms of this description are not intended to limit the invention. For example, spatially related terms such as "beneath," "below," "lower," "above," "upper," "proximal," and "distal" refer to the relationship of one element or feature to another element or feature as depicted in the figures. These spatially related terms are intended to encompass different positions (i.e., configurations) and orientations (i.e., rotated configurations) of the device during use or operation in addition to the positions and orientations depicted in the figures. For example, if the device in the figures is turned over, an element described as "below" or "beneath" another element or feature would then be "above" or "over" the other element or feature. Thus, the exemplary term "below" can encompass both above and below positions and orientations. The device may be otherwise oriented (rotated 90 degrees or in other orientations) and the spatially related descriptions used herein interpreted accordingly. Similarly, descriptions of movement along and around various axes include various specific device positions and orientations.
単数形「1つの(a, an)」及び「その(the)」は、文脈が他の意味を示さない限り、複数形も同様に含むことが意図される。用語「備える、有する、含む(comprises, comprising)」、「含む、有する(includes)」等の用語は、記載された特徴、ステップ、動作、要素、及び/又は構成要素の存在を特定するが、1つ又は複数の他の特徴、ステップ、動作、要素、構成要素、及び/又はグループの存在又は追加を排除するものではない。結合されると記載された構成要素は、電気的又は機械的に直接的に結合されてもよく、又は1つ又は複数の中間構成要素を介して間接的に結合されてもよい。 The singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context indicates otherwise. Terms such as "comprises," "comprises," "includes," and the like specify the presence of stated features, steps, operations, elements, and/or components, but do not exclude the presence or addition of one or more other features, steps, operations, elements, components, and/or groups. Components that are described as being coupled may be directly coupled electrically or mechanically, or may be indirectly coupled through one or more intermediate components.
全ての例及び説明の参考文献は非限定的なものであって、特許請求の範囲を本明細書に記載の具体的な実装形態及び実施形態及びそれらの均等物に限定するために使用すべきではない。1つの見出しの下にあるテキストは、相互参照されるか、又は1つ又は複数の見出しの下にあるテキストに適用され得るため、見出しは単に書式的なものであり、主題を制限するために使用すべきではない。最後に、本開示を考慮して、一態様又は実施形態に関連して説明した特定の特徴は、図面に具体的に示されていないか又は本文に記載されていなくても、本発明の他に開示された態様又は実施形態に適用し得る。 All example and illustrative references are non-limiting and should not be used to limit the scope of the claims to the specific implementations and embodiments described herein and their equivalents. Because text under a heading may be cross-referenced or applied to text under one or more headings, the headings are merely formative and should not be used to limit the subject matter. Finally, in light of this disclosure, a particular feature described in connection with one aspect or embodiment may be applied to other disclosed aspects or embodiments of the invention even if not specifically shown in the drawings or described in the text.
上記の実施形態は、本開示を例示するが、本開示を限定するものではない。また、本開示の原理に従って多くの修正及び変形が可能であることも理解すべきである。例えば、多くの態様において、本明細書に記載の装置は、単一ポート装置として使用される。すなわち、外科的処置を完了するために必要な全ての構成要素は、単一の入口ポートを介して身体に入る。しかしながら、いくつかの態様では、複数の装置及びポートを使用してもよい。 The above embodiments are illustrative of the present disclosure, but are not intended to be limiting. It should also be understood that many modifications and variations are possible in accordance with the principles of the present disclosure. For example, in many aspects, the devices described herein are used as single port devices, i.e., all components necessary to complete a surgical procedure enter the body through a single entry port. However, in some aspects, multiple devices and ports may be used.
以下に、出願当初の特許請求の範囲の内容を実施例として記載しておく。
[実施例1]
システムであって、当該システムは、
画素データの第1のフレームを取り込むように構成された画像センサと、
前記画素データの第1のフレームを受信するように前記画像センサに結合された撮像パイプラインであって、該撮像パイプラインは適応ノイズフィルタを含み、該適応ノイズフィルタは、
第1の画素の推定画素ノイズパラメータを用い、且つ前記第1の画素の信号レベルと少なくとも第2の画素の信号レベルとの間の差を用いて前記第1の画素をフィルタ処理し、
前記フィルタ処理された第1の画素を含む画素データの第2のフレームを出力するように構成され、
前記撮像パイプラインは、前記画素データの第2のフレームに基づいて画素データの出力フレームを出力するように構成される、撮像パイプラインと、
該撮像パイプラインに結合され、前記画素データの出力フレームを受信するディスプレイ装置であって、前記画素データの出力フレームを表示するように構成されたディスプレイ装置と、を有する、
システム。
[実施例2]
前記適応ノイズフィルタは、適応時間ノイズフィルタを含み、前記第2の画素は、前記第1のフレーム内の前記第1の画素の位置と同じ、前記画像センサによって取り込まれた第3のフレームの内の位置にあり、前記第3のフレームは、前記第1のフレームを取込む前の時間に取り込まれ、前記適応時間ノイズフィルタは、前記第1及び第2の画素の信号レベルの変化と前記第1の画素の推定画素ノイズレベルとの比較に基づいて、前記第1の画素をフィルタ処理するように構成され、前記推定画素ノイズレベルは、推定画素ノイズパラメータである、実施例1に記載のシステム。
[実施例3]
前記撮像パイプラインは複数のステージを含み、前記適応時間ノイズフィルタは前記複数のステージのうちの第1のステージに含まれる、実施例2に記載のシステム。
[実施例4]
前記適応時間ノイズフィルタは、画素ノイズフレームを出力するように構成される、実施例2に記載のシステム。
[実施例5]
前記撮像パイプラインは複数のステージを含み、前記複数のステージのうちの第1のステージに続く前記複数のステージのそれぞれは、入力画素ノイズフレームを処理するように構成され、且つステージ依存画素ノイズフレームを出力するように構成される、実施例4に記載のシステム。
[実施例6]
前記適応ノイズフィルタは、適応空間ノイズフィルタを含み、前記少なくとも1つの第2の画素は、前記第1の画素に隣接する複数の画素に含まれ、前記適応空間ノイズフィルタは、前記第1の画素の信号レベルと前記複数の隣接する画素の信号レベルのそれぞれとの間の差に基づいて、及びノイズ依存信号レベルパラメータに基づいて、第1の画素をフィルタ処理するように構成され、前記ノイズ依存信号レベルパラメータは、前記第1の画素のノイズの関数であり、前記ノイズ依存信号レベルパラメータは、前記第1の画素の前記推定画素ノイズパラメータである、実施例1に記載のシステム。
[実施例7]
前記適応空間ノイズフィルタは、距離フィルタ及び信号レベルレンジフィルタを含み、前記信号レベルレンジフィルタは、前記第1の画素の信号レベルと前記複数の隣接する画素の前記信号レベルのそれぞれとの間の差に基づいて、前記第1の画素をフィルタ処理するように構成される、実施例6に記載のシステム。
[実施例8]
前記ノイズ依存信号レベルパラメータは、信号レベルレンジパラメータである、実施例6に記載のシステム。
[実施例9]
撮像パイプラインステージであって、当該撮像パイプラインステージは、
信号レベル対ノイズ・ルックアップテーブルを含む適応時間ノイズフィルタを有しており、
該適応時間ノイズフィルタは、
画素のフレームを受信し、
前記画素の信号レベルの時間変化を、前記画素の信号レベルに対応する前記信号レベル対ノイズ・ルックアップテーブルの値と比較することによって、前記フレームの複数の画素の各画素をフィルタ処理し、
前記比較に基づいて、適応時間ノイズフィルタ処理された複数の画素を含むフレームを出力するように構成される、
撮像パイプラインステージ。
[実施例10]
前記信号レベル対ノイズ・ルックアップテーブルは、現在の画素フレームの画素の値を受け取り、前記画素の前記信号レベルに対応するノイズ標準偏差を出力するように構成される、実施例9に記載の撮像パイプラインステージ。
[実施例11]
前記適応時間ノイズフィルタは、変更ルックアップテーブルをさらに有し、前記変更ルックアップテーブルは、ノイズ標準偏差の数値で表される画素の時間的な信号変化を受け取り、且つ前記画素の前記信号レベルの許容される時間変化の割合を出力するように構成される、実施例9に記載の撮像パイプラインステージ。
[実施例12]
前記適応時間ノイズフィルタは、画素ノイズフレームを出力するように構成される、実施例9に記載の撮像パイプラインステージ。
[実施例13]
撮像パイプラインステージであって、当該撮像パイプラインステージは、
適応空間ノイズフィルタを有しており、
該適応空間ノイズフィルタは、
入力画素フレームと入力画素ノイズフレームとを受信し、
画素の信号レベルと複数の隣接する画素の信号レベルのそれぞれとの間の差に基づいて、及びノイズ依存信号レベルパラメータに基づいて前記入力画素フレームの画素をフィルタ処理して、適応空間ノイズフィルタ処理された画素を生成することであって、前記ノイズ依存信号レベルパラメータは、前記画素に対応する前記入力画素ノイズフレーム内の画素ノイズを用いて決定される、生成し、
前記適応空間ノイズフィルタ処理された画素を適応空間ノイズフィルタ処理された画素フレームに出力するように構成される、
撮像パイプラインステージ。
[実施例14]
前記適応空間ノイズフィルタは、適応空間ノイズ・バイラテラルフィルタを含む、実施例13に記載の撮像パイプラインステージ。
[実施例15]
前記画素は、位置xにおける画素であり、適応空間ノイズ・バイラテラルフィルタは、以下のように規定され、
ここで、
は、位置xにおける前記画素の適応空間ノイズフィルタ処理された信号レベルであり、
は、正規化定数であり、
は、空間的なガウス分布であり、
は、前記位置yの画素と前記位置xの画素との間の距離のノルムであり、
は、距離パラメータであり、
は、前記画素のノイズの関数である信号レベル範囲のガウス分布であり、
は、前記位置yにおける前記画素の信号レベルであり、
は、前記位置xにおける前記画素の信号レベルであり、
は、前記位置yにおける前記画素の信号レベルと前記位置xにおける画素の信号レベルとの差の絶対値であり、
は、前記位置xにおける前記画素のノイズの関数である信号レベルレンジパラメータであり、
は、前記位置xに中心画素を有する画素のブロックであり、
は、前記位置xに中心画素を有する画素ブロック内の画素に亘る総和を表す、実施例13に記載の撮像パイプラインステージ。
[実施例16]
方法であって、当該方法は、
第1のフレームの第1の画素を受信するステップと、
前記第1の画素の推定画素ノイズパラメータを用いて、且つ前記第1の画素の信号レベルと少なくとも第2画素の信号レベルとの間の差を用いて、前記第1の画素を適応ノイズフィルタ処理して、フィルタ処理された画素を取得するステップと、
前記フィルタ処理された画素を出力フレームに出力するステップと、を含む、
方法。
[実施例17]
前記フィルタ処理された画素に対応する画素ノイズをノイズ出力フレームに出力するステップをさらに含む、実施例16に記載の方法。
[実施例18]
前記第2の画素は、前記第1のフレーム内の前記第1の画素の位置と同じ、画像センサによって取り込まれた第2のフレーム内の位置にあり、前記第2のフレームは、前記第1のフレームを取り込む前の時間に取り込まれ、前記第1の画素を適応ノイズフィルタ処理するステップは、前記第1及び第2の画素の信号レベルの変化と前記第1の画素の推定画素ノイズレベルとの比較に基づいて前記第1の画素を適応時間ノイズフィルタ処理するステップを含み、前記推定画素ノイズレベルは前記推定画素ノイズパラメータであり、前記第1及び第2の画素の信号レベルの変化は、前記第1の画素の前記信号レベルの時間変化である、実施例16に記載の方法。
[実施例19]
前記第1の画素を適応時間ノイズフィルタ処理するステップは、
前記第1の画素の信号レベルを信号レベル対ノイズ・ルックアップテーブルに入力するステップと、
前記信号レベル対ノイズ・ルックアップテーブルを用いて、前記第1の画素の信号レベルに対応するノイズ標準偏差を出力するステップであって、前記ノイズ標準偏差は、前記第1の画素の前記推定画素ノイズレベルである、出力するステップと、を含む、実施例18に記載の方法。
[実施例20]
前記第1の画素を適応時間ノイズフィルタ処理するステップは、
前記第1の画素の前記信号レベルの前記時間変化を前記ノイズ標準偏差で除算して、前記第1の画素の前記信号レベルの時間変化をノイズの標準偏差として取得するステップであって、前記除算は前記比較である、取得するステップをさらに含む、実施例19に記載の方法。
[実施例21]
前記第1の画素を適応時間ノイズフィルタ処理するステップは、
前記第1の画素の前記信号レベルの時間変化をノイズの標準偏差で変更ルックアップテーブルに入力するステップと、
前記変更ルックアップテーブルを用いて、前記フィルタを通過する前記第1の画素の信号レベルの許容される時間変化の割合を出力するステップと、をさらに含む、実施例20に記載の方法。
[実施例22]
前記第1の画素を適応時間ノイズフィルタ処理するステップは、
前記第1の画素の前記信号レベルの許容される時間変化の割合に、前記第1の画素の前記信号レベルの前記時間変化を乗算することによって、前記第1の画素の前記信号レベルの許容される時間変化を生成するステップと、
前記第1の画素の前記信号レベルにおける前記許容される時間変化を対応する画素に加算することによって、前記フィルタ処理された画素を生成するステップであって、前記対応する画素は、第2のフレーム内の画素であり、前記第2のフレームは、時間的に前記第1のフレームの直前にある、生成するステップと、をさらに含む、実施例21に記載の方法。
[実施例23]
前記少なくとも1つの第2の画素は、前記第1の画素に隣接する複数の画素に含まれ、前記第1の画素を適応ノイズフィルタ処理するステップは、前記第1の画素の信号レベルと前記複数の隣接する画素の信号レベルのそれぞれとの間の差に基づいて、及びノイズ依存信号レベルパラメータに基づいて、前記第1の画素を適応空間ノイズフィルタ処理するステップを含み、前記ノイズ依存信号レベルパラメータは、前記第1の画素のノイズの関数であり、前記ノイズ依存信号レベルパラメータは、前記第1の画素の推定画素ノイズパラメータである、実施例16に記載の方法。
[実施例24]
前記第1の画素を適応空間ノイズフィルタ処理するステップは、
距離フィルタと信号レベルフィルタとを組み合わせることによって前記フィルタ処理された画素を生成するステップであって、前記信号レベルフィルタは、前記ノイズ依存信号レベルパラメータの関数である、生成するステップを含む、実施例23に記載の方法。
[実施例25]
前記信号レベルフィルタは、信号レベルレンジパラメータを有する信号レベル範囲のガウス分布を含み、前記信号レベルレンジパラメータは、前記ノイズ依存信号レベルパラメータである、実施例24に記載の方法。
The contents of the claims as originally filed are described below as examples.
[Example 1]
1. A system comprising:
an image sensor configured to capture a first frame of pixel data;
an imaging pipeline coupled to the image sensor to receive the first frame of pixel data, the imaging pipeline including an adaptive noise filter, the adaptive noise filter comprising:
filtering the first pixel using an estimated pixel noise parameter for the first pixel and using a difference between a signal level of the first pixel and a signal level of at least a second pixel;
configured to output a second frame of pixel data including the filtered first pixels;
an imaging pipeline configured to output an output frame of pixel data based on the second frame of pixel data;
a display device coupled to the imaging pipeline to receive the output frames of pixel data, the display device configured to display the output frames of pixel data.
system.
[Example 2]
The system of example 1, wherein the adaptive noise filter includes an adaptive temporal noise filter, the second pixel is at a position in a third frame captured by the image sensor that is the same as the position of the first pixel in the first frame, the third frame being captured at a time prior to capturing the first frame, and the adaptive temporal noise filter is configured to filter the first pixel based on a comparison of changes in signal levels of the first and second pixels to an estimated pixel noise level of the first pixel, the estimated pixel noise level being an estimated pixel noise parameter.
[Example 3]
3. The system of
[Example 4]
3. The system of
[Example 5]
The system of example 4, wherein the imaging pipeline includes a plurality of stages, each of the plurality of stages subsequent to a first stage of the plurality of stages configured to process an input pixel noise frame and configured to output a stage-dependent pixel noise frame.
[Example 6]
2. The system of
[Example 7]
The system of Example 6, wherein the adaptive spatial noise filter includes a distance filter and a signal level range filter, the signal level range filter configured to filter the first pixel based on a difference between a signal level of the first pixel and each of the signal levels of the multiple adjacent pixels.
[Example 8]
7. The system of claim 6, wherein the noise-dependent signal level parameter is a signal level range parameter.
[Example 9]
An imaging pipeline stage, the imaging pipeline stage comprising:
an adaptive temporal noise filter including a signal level vs. noise lookup table;
The adaptive temporal noise filter comprises:
receiving a frame of pixels;
filtering each pixel of the plurality of pixels of the frame by comparing a change in signal level of the pixel over time with a value in the signal level vs. noise lookup table corresponding to the signal level of the pixel;
and configured to output a frame including a plurality of adaptive temporal noise filtered pixels based on the comparison.
Imaging pipeline stages.
[Example 10]
10. The imaging pipeline stage of example 9, wherein the signal level vs. noise lookup table is configured to receive a value of a pixel of a current pixel frame and output a noise standard deviation corresponding to the signal level of the pixel.
[Example 11]
The imaging pipeline stage of Example 9, wherein the adaptive temporal noise filter further comprises a modified lookup table configured to receive a temporal signal change of a pixel represented by a noise standard deviation numerical value and to output a percentage of an acceptable temporal change of the signal level of the pixel.
[Example 12]
10. The imaging pipeline stage of example 9, wherein the adaptive temporal noise filter is configured to output a pixel noise frame.
[Example 13]
An imaging pipeline stage, the imaging pipeline stage comprising:
It has an adaptive spatial noise filter,
The adaptive spatial noise filter comprises:
receiving an input pixel frame and an input pixel noise frame;
filtering a pixel of the input pixel frame based on a difference between a signal level of a pixel and each of a plurality of adjacent pixel signal levels and based on a noise-dependent signal level parameter to generate an adaptive spatial noise filtered pixel, the noise-dependent signal level parameter being determined using pixel noise in the input pixel noise frame corresponding to the pixel;
configured to output the adaptive spatial noise filtered pixels into an adaptive spatial noise filtered pixel frame.
Imaging pipeline stages.
[Example 14]
14. The imaging pipeline stage of example embodiment 13, wherein the adaptive spatial noise filter comprises an adaptive spatial noise bilateral filter.
[Example 15]
The pixel is the pixel at location x, and the adaptive spatial noise bilateral filter is defined as:
Where:
is the adaptive spatial noise filtered signal level of the pixel at location x,
is a normalization constant,
is a spatial Gaussian distribution,
is the norm of the distance between the pixel at the position y and the pixel at the position x,
is the distance parameter,
is a Gaussian distribution of the signal level range that is a function of the noise of the pixel,
is the signal level of the pixel at the location y,
is the signal level of the pixel at the location x,
is the absolute value of the difference between the signal level of the pixel at the position y and the signal level of the pixel at the position x,
is a signal level range parameter that is a function of the noise of the pixel at the location x,
is a block of pixels having a center pixel at said location x,
represents a sum over pixels in a pixel block having a center pixel at the position x.
[Example 16]
1. A method, comprising:
receiving a first pixel of a first frame;
adaptive noise filtering the first pixel using estimated pixel noise parameters of the first pixel and using a difference between a signal level of the first pixel and a signal level of at least a second pixel to obtain a filtered pixel;
and outputting the filtered pixels into an output frame.
method.
[Example 17]
17. The method of example 16, further comprising outputting pixel noise corresponding to the filtered pixels in a noise output frame.
[Example 18]
17. The method of
[Example 19]
The step of adaptively temporal noise filtering the first pixel comprises:
inputting the signal level of the first pixel into a signal level vs. noise lookup table;
and outputting a noise standard deviation corresponding to a signal level of the first pixel using the signal level vs. noise lookup table, the noise standard deviation being the estimated pixel noise level of the first pixel.
[Example 20]
The step of adaptively temporal noise filtering the first pixel comprises:
20. The method of claim 19, further comprising: dividing the time change in the signal level of the first pixel by the noise standard deviation to obtain the time change in the signal level of the first pixel as a noise standard deviation, wherein the division is the comparison.
[Example 21]
The step of adaptively temporal noise filtering the first pixel comprises:
inputting the time change of the signal level of the first pixel into a lookup table modified by the standard deviation of noise;
21. The method of example 20, further comprising: using the modified lookup table to output an allowable percentage of time change in signal level of the first pixel passing through the filter.
[Example 22]
The step of adaptively temporal noise filtering the first pixel comprises:
generating an allowed change in signal level of the first pixel over time by multiplying a percentage of an allowed change in signal level of the first pixel over time by the change in signal level of the first pixel;
22. The method of example 21, further comprising: generating the filtered pixel by adding the allowed change in signal level of the first pixel to a corresponding pixel, the corresponding pixel being a pixel in a second frame, the second frame immediately preceding the first frame in time.
[Example 23]
17. The method of
[Example 24]
The step of adaptively spatial noise filtering the first pixel comprises:
24. The method of claim 23, comprising generating the filtered pixel by combining a distance filter and a signal level filter, the signal level filter being a function of the noise-dependent signal level parameter.
[Example 25]
25. The method of claim 24, wherein the signal level filter comprises a Gaussian distribution of signal level ranges having a signal level range parameter, the signal level range parameter being the noise dependent signal level parameter.
Claims (14)
第1のフレームの画素データを取り込むように構成された画像センサと、
該画像センサに結合された適応ノイズフィルタと、を含み、
該適応ノイズフィルタは、
前記第1のフレームの画素データの第1の画素の信号レベルに基づいて推定画素ノイズパラメータを決定すること、
前記第1の画素の前記信号レベルと少なくとも第2の画素の信号レベルとの間の差を決定することであって、前記第2の画素は、前記第1のフレームの取込みの前に前記画像センサによって取り込まれた以前のフレームの位置と前記第1のフレームの前記第1の画素の位置とが同じ位置にある画素である、こと、
該差と前記推定画素ノイズパラメータとの比較結果に基づいて、前記適応ノイズフィルタを通過するのが許可される前記差の数量を決定すること、
前記適応ノイズフィルタを通過するのが許可される前記差の前記数量に基づいてフィルタ処理された画素を取得すること、及び
該フィルタ処理された画素を含む第2のフレームの画素データを出力すること、を行うように構成される、
システム。 1. A system comprising:
an image sensor configured to capture a first frame of pixel data;
an adaptive noise filter coupled to the image sensor;
The adaptive noise filter comprises:
determining an estimated pixel noise parameter based on a signal level of a first pixel of the first frame of pixel data;
determining a difference between the signal level of the first pixel and a signal level of at least a second pixel, the second pixel being a pixel at the same position as the first pixel in the first frame in a previous frame captured by the image sensor prior to the capture of the first frame;
determining a quantity of the difference that is allowed to pass through the adaptive noise filter based on a comparison of the difference to the estimated pixel noise parameters;
obtaining a filtered pixel based on the amount of the difference that is allowed to pass through the adaptive noise filter; and
outputting a second frame of pixel data including the filtered pixels;
system.
前記適応ノイズフィルタは適応時間ノイズフィルタであり、前記第2の適応ノイズフィルタは適応空間ノイズフィルタであり、
前記第2の適応ノイズフィルタは、前記さらにフィルタ処理された画素を含む第3のフレームの画素データを出力する、請求項1に記載のシステム。 a second adaptive noise filter coupled to the adaptive noise filter, configured to use estimated pixel noise parameters of the filtered pixels and to filter the filtered pixels using a difference between a signal level of the filtered pixels and a signal level of at least a third pixel to obtain further filtered pixels;
the adaptive noise filter is an adaptive temporal noise filter and the second adaptive noise filter is an adaptive spatial noise filter;
The system of claim 1 , wherein the second adaptive noise filter outputs a third frame of pixel data comprising the further filtered pixels.
前記第1の画素の信号レベルに基づいて推定画素ノイズパラメータを決定するステップと、
前記第1の画素の前記信号レベルと少なくとも第2の画素の信号レベルとの間の差を決定するステップであって、前記第2の画素は、第1のフレームの取込みの前に画像センサによって取り込まれた以前のフレームの位置と前記第1のフレームの前記第1の画素の位置とが同じ位置にある画素である、ステップと、
該差と前記推定画素ノイズパラメータとの比較結果に基づいて、適応ノイズフィルタを通過するのが許可される前記差の数量を決定するステップと、
前記適応ノイズフィルタを通過するのが許可される前記差の前記数量に基づいてフィルタ処理された画素を取得するステップと、
該フィルタ処理された画素をフィルタ処理された画素データの出力フレームに出力するステップと、を含む、
方法。 1. A method of adaptively noise filtering a first pixel of pixel data for a frame, the method comprising:
determining an estimated pixel noise parameter based on a signal level of the first pixel;
determining a difference between the signal level of the first pixel and a signal level of at least a second pixel, the second pixel being a pixel at the same position as the first pixel in the first frame in a previous frame captured by an image sensor prior to the capture of the first frame;
determining a quantity of the difference that is allowed to pass through an adaptive noise filter based on a comparison of the difference with the estimated pixel noise parameters;
obtaining a filtered pixel based on the amount of the difference that is allowed to pass through the adaptive noise filter;
and outputting the filtered pixels into an output frame of filtered pixel data.
method.
該さらにフィルタ処理された画素をフィルタ処理された画素データの第2の出力フレームに出力するステップと、をさらに含む、請求項9に記載の方法。 adaptively noise filtering the filtered pixel using an estimated pixel noise parameter of the filtered pixel and using a difference between a signal level of the filtered pixel and a signal level of at least a third pixel to obtain a further filtered pixel;
10. The method of claim 9 , further comprising the step of: outputting the further filtered pixels in a second output frame of filtered pixel data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023101711A JP7571207B2 (en) | 2016-01-29 | 2023-06-21 | Light level adaptive filter and method |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662288956P | 2016-01-29 | 2016-01-29 | |
US62/288,956 | 2016-01-29 | ||
JP2018538098A JP6874009B2 (en) | 2016-01-29 | 2017-01-27 | Light level adaptive filters and methods |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018538098A Division JP6874009B2 (en) | 2016-01-29 | 2017-01-27 | Light level adaptive filters and methods |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023101711A Division JP7571207B2 (en) | 2016-01-29 | 2023-06-21 | Light level adaptive filter and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021119491A JP2021119491A (en) | 2021-08-12 |
JP7552002B2 true JP7552002B2 (en) | 2024-09-18 |
Family
ID=59398803
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018538098A Active JP6874009B2 (en) | 2016-01-29 | 2017-01-27 | Light level adaptive filters and methods |
JP2021071592A Active JP7552002B2 (en) | 2016-01-29 | 2021-04-21 | Light level adaptive filter and method |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018538098A Active JP6874009B2 (en) | 2016-01-29 | 2017-01-27 | Light level adaptive filters and methods |
Country Status (4)
Country | Link |
---|---|
US (3) | US11017504B2 (en) |
JP (2) | JP6874009B2 (en) |
KR (2) | KR102632193B1 (en) |
WO (1) | WO2017132600A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11017504B2 (en) * | 2016-01-29 | 2021-05-25 | Intuitive Surgical Operations, Inc. | Light level adaptive filter and method |
JP7169751B2 (en) * | 2018-03-15 | 2022-11-11 | キヤノン株式会社 | Imaging element and electronic equipment having the same |
DE102019217220A1 (en) * | 2019-11-07 | 2021-05-12 | Siemens Healthcare Gmbh | Computer-implemented method for providing an output data set |
US12033305B2 (en) | 2019-12-17 | 2024-07-09 | Stmicroelectronics (Grenoble 2) Sas | Filtering device, associated system and method |
US20230305590A1 (en) * | 2020-03-13 | 2023-09-28 | University Of South Australia | A data processing method |
US11995156B2 (en) * | 2021-02-03 | 2024-05-28 | Samsung Electronics Co., Ltd. | Confidence aided upsampling of categorical maps |
CN113009550A (en) * | 2021-02-26 | 2021-06-22 | 山东省科学院海洋仪器仪表研究所 | Filtering method for seawater radionuclide energy spectrum |
EP4302260A1 (en) * | 2021-03-03 | 2024-01-10 | Boston Scientific Scimed, Inc. | Method of image enhancement for distraction deduction in endoscopic procedures |
US11308349B1 (en) * | 2021-10-15 | 2022-04-19 | King Abdulaziz University | Method to modify adaptive filter weights in a decentralized wireless sensor network |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013175182A (en) | 2012-02-22 | 2013-09-05 | Zakrytoe Akcionernoe Obshchestvo (Impul's) | Method of noise reduction in digital x-ray frame |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6061100A (en) * | 1997-09-30 | 2000-05-09 | The University Of British Columbia | Noise reduction for video signals |
US6804393B2 (en) * | 2001-01-02 | 2004-10-12 | Eastman Kodak Company | Method of calculating noise from a digital image utilizing color cross correlation statistics |
US7110455B2 (en) * | 2001-08-14 | 2006-09-19 | General Instrument Corporation | Noise reduction pre-processor for digital video using previously generated motion vectors and adaptive spatial filtering |
JP3934506B2 (en) * | 2002-08-06 | 2007-06-20 | オリンパス株式会社 | Imaging system and image processing program |
KR100564592B1 (en) * | 2003-12-11 | 2006-03-28 | 삼성전자주식회사 | Methods for noise removal of moving picture digital data |
WO2006010276A1 (en) | 2004-07-30 | 2006-02-02 | Algolith Inc | Apparatus and method for adaptive 3d artifact reducing for encoded image signal |
US20060139494A1 (en) * | 2004-12-29 | 2006-06-29 | Samsung Electronics Co., Ltd. | Method of temporal noise reduction in video sequences |
US7643699B2 (en) * | 2005-07-05 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Image processing based on local noise statistics |
US7821578B2 (en) * | 2006-04-07 | 2010-10-26 | Marvell World Trade Ltd. | Reconfigurable self-calibrating adaptive noise reducer |
JP2008205737A (en) * | 2007-02-19 | 2008-09-04 | Olympus Corp | Imaging system, image processing program, and image processing method |
US8059207B2 (en) | 2007-02-23 | 2011-11-15 | Samsung Electronics Co., Ltd. | System and method for video noise reduction using an adaptive temporal method with motion detection and motion compensation |
US8711249B2 (en) * | 2007-03-29 | 2014-04-29 | Sony Corporation | Method of and apparatus for image denoising |
JP5052189B2 (en) * | 2007-04-13 | 2012-10-17 | オリンパス株式会社 | Video processing apparatus and video processing program |
JP4465002B2 (en) * | 2007-11-16 | 2010-05-19 | オリンパス株式会社 | Noise reduction system, noise reduction program, and imaging system. |
US8149336B2 (en) * | 2008-05-07 | 2012-04-03 | Honeywell International Inc. | Method for digital noise reduction in low light video |
KR101508386B1 (en) * | 2008-09-29 | 2015-04-03 | 엘지전자 주식회사 | Method and Apparatus for Motion Adaptive Noise Elimination |
JP5197414B2 (en) * | 2009-02-02 | 2013-05-15 | オリンパス株式会社 | Image processing apparatus and image processing method |
JP5251637B2 (en) * | 2009-03-16 | 2013-07-31 | 株式会社リコー | Noise reduction device, noise reduction method, noise reduction program, recording medium |
US9225916B2 (en) * | 2010-03-18 | 2015-12-29 | Cisco Technology, Inc. | System and method for enhancing video images in a conferencing environment |
US8471932B2 (en) | 2010-09-30 | 2013-06-25 | Apple Inc. | Spatial filtering for image signal processing |
US9036695B2 (en) * | 2010-11-02 | 2015-05-19 | Sharp Laboratories Of America, Inc. | Motion-compensated temporal filtering based on variable filter parameters |
JP5657375B2 (en) * | 2010-12-24 | 2015-01-21 | オリンパス株式会社 | Endoscope apparatus and program |
CN102646265B (en) * | 2011-02-22 | 2015-09-23 | 株式会社东芝 | Image processing equipment and method |
GB2489272B (en) * | 2011-03-23 | 2013-03-13 | Toshiba Res Europ Ltd | An image processing system and method |
KR101248808B1 (en) * | 2011-06-03 | 2013-04-01 | 주식회사 동부하이텍 | Apparatus and method for removing noise on edge area |
US9215355B2 (en) | 2011-09-30 | 2015-12-15 | Apple Inc. | Scene adaptive temporal filtering |
EA017302B1 (en) * | 2011-10-07 | 2012-11-30 | Закрытое Акционерное Общество "Импульс" | Method of noise reduction of digital x-ray image series |
TW201318418A (en) * | 2011-10-26 | 2013-05-01 | Novatek Microelectronics Corp | Method of noise reduction in image and device thereof |
US20130202079A1 (en) * | 2012-02-07 | 2013-08-08 | Lifeng Yu | System and Method for Controlling Radiation Dose for Radiological Applications |
US9412155B2 (en) | 2012-12-31 | 2016-08-09 | Karl Storz Imaging, Inc. | Video system with dynamic contrast and detail enhancement |
CN103632352B (en) * | 2013-11-01 | 2017-04-26 | 华为技术有限公司 | Method for time domain noise reduction of noise image and related device |
WO2015172235A1 (en) * | 2014-05-15 | 2015-11-19 | Tandemlaunch Technologies Inc. | Time-space methods and systems for the reduction of video noise |
WO2016165112A1 (en) * | 2015-04-16 | 2016-10-20 | 中国科学院自动化研究所 | Video denoising system having contrast adaptation |
DE102015213911B4 (en) * | 2015-07-23 | 2019-03-07 | Siemens Healthcare Gmbh | Method for generating an X-ray image and data processing device for carrying out the method |
US10269095B2 (en) * | 2015-08-31 | 2019-04-23 | Apple Inc. | Dynamically determining filtering strength for noise filtering in image processing |
US11017504B2 (en) * | 2016-01-29 | 2021-05-25 | Intuitive Surgical Operations, Inc. | Light level adaptive filter and method |
US10038862B2 (en) * | 2016-05-02 | 2018-07-31 | Qualcomm Incorporated | Methods and apparatus for automated noise and texture optimization of digital image sensors |
US9979942B2 (en) * | 2016-06-30 | 2018-05-22 | Apple Inc. | Per pixel color correction filtering |
GB2570528B (en) * | 2018-06-25 | 2020-06-10 | Imagination Tech Ltd | Bilateral filter with data model |
US11915391B2 (en) * | 2020-03-26 | 2024-02-27 | Intel Corporation | Reduction of visual artifacts in images |
-
2017
- 2017-01-27 US US16/070,582 patent/US11017504B2/en active Active
- 2017-01-27 JP JP2018538098A patent/JP6874009B2/en active Active
- 2017-01-27 KR KR1020187021487A patent/KR102632193B1/en active IP Right Grant
- 2017-01-27 WO PCT/US2017/015485 patent/WO2017132600A1/en active Application Filing
- 2017-01-27 KR KR1020247003174A patent/KR20240017978A/en not_active Application Discontinuation
-
2021
- 2021-04-21 US US17/236,765 patent/US11704774B2/en active Active
- 2021-04-21 JP JP2021071592A patent/JP7552002B2/en active Active
-
2023
- 2023-05-31 US US18/203,789 patent/US20230325984A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013175182A (en) | 2012-02-22 | 2013-09-05 | Zakrytoe Akcionernoe Obshchestvo (Impul's) | Method of noise reduction in digital x-ray frame |
Also Published As
Publication number | Publication date |
---|---|
JP6874009B2 (en) | 2021-05-19 |
WO2017132600A1 (en) | 2017-08-03 |
JP2019512178A (en) | 2019-05-09 |
KR102632193B1 (en) | 2024-02-01 |
KR20180100150A (en) | 2018-09-07 |
KR20240017978A (en) | 2024-02-08 |
JP2023120364A (en) | 2023-08-29 |
US20230325984A1 (en) | 2023-10-12 |
JP2021119491A (en) | 2021-08-12 |
US11704774B2 (en) | 2023-07-18 |
US11017504B2 (en) | 2021-05-25 |
US20210264570A1 (en) | 2021-08-26 |
US20200211161A1 (en) | 2020-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7552002B2 (en) | Light level adaptive filter and method | |
US20230362340A1 (en) | Endoscopic image enhancement using contrast limited adaptive histogram equalization (clahe) implemented in a processor | |
JP6764574B2 (en) | Image processing equipment, image processing methods, programs, and surgical systems | |
US9635343B2 (en) | Stereoscopic endoscopic image processing apparatus | |
US9986169B2 (en) | Exposure control method and system for an image capture device | |
JP6020950B1 (en) | Endoscope system, operation method of endoscope system, and program | |
US20170046836A1 (en) | Real-time endoscopic image enhancement | |
US20240196099A1 (en) | Apparatuses, systems, and methods for gaze-based auto-exposure management of images | |
US9672596B2 (en) | Image processing apparatus to generate a reduced image of an endoscopic image | |
KR20190030414A (en) | Medical apparatus | |
CN102289826B (en) | Image processing method and radiographic apparatus using the same | |
JP7571207B2 (en) | Light level adaptive filter and method | |
JPWO2018225346A1 (en) | Medical systems and control units | |
US11363245B2 (en) | Image processing device, image processing method, and image processing program | |
EP3150107A1 (en) | Image processing device | |
WO2023054089A1 (en) | Video processing system, medical information processing system, and operation method | |
JP2024508314A (en) | Image processing method to prevent dilatation during endoscopic procedures | |
JP2015223221A (en) | Image enhancement processing system and electronic endoscope system | |
JP2005020619A (en) | X-ray image display device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210514 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220726 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221024 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230621 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20230629 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20230901 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240515 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240816 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7552002 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |