JP2016171900A - Endoscope apparatus and program execution method thereof - Google Patents
Endoscope apparatus and program execution method thereof Download PDFInfo
- Publication number
- JP2016171900A JP2016171900A JP2015053187A JP2015053187A JP2016171900A JP 2016171900 A JP2016171900 A JP 2016171900A JP 2015053187 A JP2015053187 A JP 2015053187A JP 2015053187 A JP2015053187 A JP 2015053187A JP 2016171900 A JP2016171900 A JP 2016171900A
- Authority
- JP
- Japan
- Prior art keywords
- kernel
- program
- unit
- usage rate
- endoscope apparatus
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 26
- 238000012545 processing Methods 0.000 claims abstract description 159
- 230000006870 function Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 12
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 8
- 238000012937 correction Methods 0.000 description 7
- 238000005286 illumination Methods 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Endoscopes (AREA)
- Instruments For Viewing The Inside Of Hollow Bodies (AREA)
Abstract
Description
本発明は、内視鏡により取得された映像信号を処理する内視鏡装置及びそのプログラム実行方法に関する。 The present invention relates to an endoscope apparatus that processes a video signal acquired by an endoscope and a program execution method thereof.
従来、映像信号を処理する分野においては、GPU(Graphics Processing Unit)が知られている。GPUは、例えば複数のVALU(Vector Arithmetic Logic Unit)を含むCU(Compute Unit)を複数備えた構成を有し、映像処理等を非常に高速に行うことができる。近年では、CKE(Concurrent Kernel Execution)と称する、複数のカーネル(GPU上で動作するプログラム)を並列処理する仕組みを持ったGPUが一般的であり、全てのCUをフル活用した高度な並列処理が実現可能になっている。 Conventionally, a GPU (Graphics Processing Unit) is known in the field of processing video signals. The GPU has a configuration including a plurality of CUs (Compute Units) including, for example, a plurality of VALUs (Vector Arithmetic Logic Units), and can perform video processing and the like at a very high speed. In recent years, GPUs with a mechanism for parallel processing of multiple kernels (programs running on GPUs) called CKE (Concurrent Kernel Execution) are common, and advanced parallel processing that fully utilizes all CUs It has become feasible.
一方で、GPU上でカーネルの処理をどのように分割し、また、分割した処理をどのようにCUに配分して実行させるかについては、カーネルコンパイラやGPU上のスケジューラに委ねられる部分が多く、カーネルを実行する際のGPUの状態(ハードウェアリソースの使用状況等)に依存する。これは、GPUが実行するカーネルが同一であっても、GPUに対してカーネルの実行を指示してからGPUがそのカーネルの実行を完了するまでに要する時間が、その都度、異なってしまい、その時間を予測することができないことを示唆する。 On the other hand, as to how to divide kernel processing on the GPU and how to divide and execute the divided processing on the CU, there are many parts left to the kernel compiler or scheduler on the GPU. It depends on the state of the GPU (hardware resource usage, etc.) when executing the kernel. This is because even if the kernel executed by the GPU is the same, the time required for the GPU to complete the execution of the kernel after it is instructed to the GPU is different each time. Suggests that time cannot be predicted.
このことから、特に処理時間に制約のある医療分野の内視鏡装置では、GPUを安易に採用することはできない。仮に、GPUを採用するのであれば、カーネルの処理を適切に分割し、分割した処理を適切にCUに配分して実行させる仕組みが必要になる。 For this reason, it is not possible to easily adopt a GPU in an endoscope apparatus in the medical field that has a limitation in processing time. If a GPU is used, a mechanism for appropriately dividing kernel processing and appropriately distributing the divided processing to CUs is required.
なお、映像信号を処理する分野においては、次のような装置も知られている。
例えば、描画コマンドに基づいて画像データの複数の描画領域を夫々描画する複数の描画手段を有する画像形成装置において、現在の画像データが描画される際の、複数の描画領域夫々に対する描画処理の負荷量を算出し、描画コマンドに基づいて、次の画像データが描画される際の、複数の描画領域夫々に対する描画処理の負荷量の変化を予測し、上記の算出結果と予測結果とに基づいて、次の画像データが描画される際の、複数の描画領域夫々に対する描画処理の負荷量を算出し、その算出結果に基づいて、複数の描画手段に対して処理を割り当てるようにしたものが知られている(例えば特許文献1参照)。
The following devices are also known in the field of processing video signals.
For example, in an image forming apparatus having a plurality of drawing units that respectively draw a plurality of drawing areas of image data based on a drawing command, the load of drawing processing on each of the plurality of drawing areas when the current image data is drawn The amount is calculated, and based on the drawing command, a change in the drawing processing load amount for each of the plurality of drawing regions when the next image data is drawn is predicted. Based on the calculation result and the prediction result, It is known that when the next image data is drawn, the amount of drawing processing applied to each of a plurality of drawing areas is calculated, and processing is assigned to a plurality of drawing means based on the calculation result. (See, for example, Patent Document 1).
以上のような実情を踏まえ、本発明は、並列処理が可能な複数の演算ユニットを含む内視鏡装置において、その複数の演算ユニットにプログラムの処理を適切に配分して実行させることができる内視鏡装置及びそのプログラム実行方法を提供することを目的とする。 In light of the above situation, the present invention provides an endoscope apparatus that includes a plurality of arithmetic units capable of parallel processing, and can appropriately distribute and execute program processing among the plurality of arithmetic units. An object of the present invention is to provide an endoscope apparatus and a program execution method thereof.
本発明の第1の態様は、複数の演算ユニットと、前記複数の演算ユニットの使用率を取得する第1の取得部と、過去に実行されたプログラム毎の、当該プログラムの実行に使用された前記複数の演算ユニットの使用率を記憶する記憶部と、前記第1の取得部により取得された用率と、前記記憶部に記憶されているプログラム毎の使用率とに基づいて、実行待ちのプログラムの中から、次に実行させるプログラムを決定する決定部と、を備える内視鏡装置を提供する。 The first aspect of the present invention was used to execute a plurality of arithmetic units, a first acquisition unit that acquires the usage rate of the plurality of arithmetic units, and each program executed in the past. Based on the storage unit that stores the usage rates of the plurality of arithmetic units, the usage rate acquired by the first acquisition unit, and the usage rate for each program stored in the storage unit, An endoscope apparatus comprising: a determining unit that determines a program to be executed next from among programs.
本発明の第2の態様は、第1の態様において、プログラムが実行されたときに、当該プログラムの実行に使用された前記複数の演算ユニットの使用率を取得する第2の取得部を更に備え、前記第2の取得部により取得された使用率が前記記憶部に記憶される、内視鏡装置を提供する。 According to a second aspect of the present invention, in the first aspect, when the program is executed, the second aspect further includes a second acquisition unit that acquires usage rates of the plurality of arithmetic units used to execute the program. An endoscope apparatus in which the usage rate acquired by the second acquisition unit is stored in the storage unit is provided.
本発明の第3の態様は、第1又は2の態様において、前記決定部は、即時に実行を開始させることが可能なプログラムであって、且つ、実行待ちの順番が最先のプログラムを、次に実行させるプログラムとして決定する、内視鏡装置を提供する。 According to a third aspect of the present invention, in the first or second aspect, the determining unit is a program that can immediately start execution, and that has the earliest waiting order for execution, An endoscope apparatus that is determined as a program to be executed next is provided.
本発明の第4の態様は、第1乃至3の何れか一つの態様において、前記決定部は、前記実行待ちのプログラムの中に、所定時間内に実行しなければならないプログラムがある場合には、当該プログラムを優先して、次に実行させるプログラムとして決定する、内視鏡装置を提供する。 According to a fourth aspect of the present invention, in any one of the first to third aspects, the determination unit includes a program that must be executed within a predetermined time in the execution waiting program. There is provided an endoscope apparatus in which the program is prioritized and determined as a program to be executed next.
本発明の第5の態様は、第1乃至4の何れか一つの態様において、前記複数の演算ユニットは、GPU(Graphics Processing Unit)に含まれる複数の演算ユニットである、内視鏡装置を提供する。 A fifth aspect of the present invention provides an endoscope apparatus according to any one of the first to fourth aspects, wherein the plurality of arithmetic units are a plurality of arithmetic units included in a GPU (Graphics Processing Unit). To do.
本発明の第6の態様は、複数の演算ユニットを含む内視鏡装置のプログラム実行方法であって、前記複数の演算ユニットの使用率を取得し、前記取得した前記複数の演算ユニットの使用率と、過去に実行されたプログラム毎の、当該プログラムの実行に使用された前記複数の演算ユニットの使用率とに基づいて、実行待ちのプログラムの中から、次に実行させるプログラムを決定する、プログラム実行方法を提供する。 According to a sixth aspect of the present invention, there is provided a program execution method for an endoscope apparatus including a plurality of arithmetic units, wherein the usage rates of the plurality of arithmetic units are acquired, and the usage rates of the acquired arithmetic units are acquired. Determining a program to be executed next from among the programs waiting to be executed based on each of the programs executed in the past and the usage rate of the plurality of arithmetic units used for executing the program Provide execution method.
本発明によれば、並列処理が可能な複数の演算ユニットを含む内視鏡装置において、その複数の演算ユニットにプログラムの処理を適切に配分して実行させることができる、という効果を奏する。 According to the present invention, in an endoscope apparatus including a plurality of arithmetic units capable of parallel processing, there is an effect that program processing can be appropriately distributed and executed to the plurality of arithmetic units.
以下、図面を参照しながら、本発明の実施の形態について説明する。
<第1の実施形態>
図1は、本発明の第1の実施形態に係る内視鏡装置を含む内視鏡システムの構成例を示す図である。なお、この内視鏡システムは、例えば医療機関(病院等)で使用される。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
<First Embodiment>
FIG. 1 is a diagram illustrating a configuration example of an endoscope system including an endoscope apparatus according to the first embodiment of the present invention. This endoscope system is used in, for example, medical institutions (hospitals and the like).
図1に示したように、内視鏡システム1は、内視鏡2、ケーブル3、及び内視鏡装置4を含み、内視鏡2がケーブル3を介して内視鏡装置4に接続される構成を有する。
内視鏡2は、スコープ制御部21、照明光学系22、対物光学系23、及び撮像素子24を含む。スコープ制御部21は、内視鏡装置4の後述のビデオプロセッサ機能部41のシステム制御部412からケーブル3を介して入力される撮像制御信号に応じて撮像素子24を制御する。照明光学系22は、内視鏡装置4の後述の光源機能部42の光源422から出射されて図示しないライトガイドを介して導かれた照明光を被写体に照明する。対物光学系23は、被写体からの反射光(被写体に照明された照明光の反射光)を撮像素子24の撮像面に結像する。撮像素子24は、スコープ制御部21の制御の下に、撮像面に結像されている被写体像(被写体からの反射光)を電気信号である映像信号に変換し、その映像信号を、ケーブル3を介して内視鏡装置4の後述のビデオプロセッサ機能部41の画像処理部411へ出力する。
As shown in FIG. 1, the endoscope system 1 includes an
The
ケーブル3は、内視鏡2と内視鏡装置4との間で送受される信号(映像信号、撮像制御信号)を伝送する信号線を含む。
内視鏡装置4は、ビデオプロセッサ機能部41、光源機能部42、モニタ43、記録媒体44、及び操作部45を含む。
The cable 3 includes a signal line for transmitting a signal (video signal, imaging control signal) transmitted / received between the
The
ビデオプロセッサ機能部41は、画像処理部411及びシステム制御部412を含む。画像処理部411は、CKE機能を有するGPUであって、システム制御部412の制御の下に、撮像素子24からケーブル3を介して入力される映像信号を処理する。システム制御部412は、画像処理部411、光源機能部42の光源制御部421、及び内視鏡2のスコープ制御部21など、内視鏡システム1の各部を制御する。また、システム制御部412は、操作部45が受け付けたユーザ操作に応じた制御等も行う。
The video
光源機能部42は、光源制御部421及び光源422を含む。光源制御部421は、システム制御部412の制御の下に、光源制御信号を光源422へ出力し、光源422を制御する。光源422は、光源制御部421から入力される光源制御信号に応じて照明光を出射する。
The light
モニタ43は、画像処理部411により処理された映像信号に応じた映像を表示する。記録媒体44は、画像処理部411により処理された映像信号に応じた映像を記録する。操作部45は、ユーザからの各種操作を受け付け、システム制御部412に通知する。
The
なお、内視鏡システム1において、ビデオプロセッサ機能部41及び光源機能部42は、図1に示したように一体として構成してもよいし、又は別体として構成してもよい。後者の場合には、光源機能部42が内視鏡装置4に対して別の装置として設けられるように構成してもよい。あるいは内視鏡2、ケーブル3、及び内視鏡装置4を一体として構成してもよい。
In the endoscope system 1, the video
また、内視鏡2は、軟性内視鏡、硬性内視鏡、又は光学式内視鏡(ファイバースコープや外科手術用の光学視管)に接続されたカメラヘッド等としてもよい。
また、撮像素子24は、CCD(Charge-Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)等のイメージセンサとしてもよい。
The
The
また、被写体への照明光の照明方式は、同時式又は面順次式等としてもよい。ここで、同時式とは、白色光を被写体に照明する方式であり、面順次式とは、波長帯域の異なる光を時系列に順次照明する方式である。 Further, the illumination method for illuminating the subject may be a simultaneous method, a frame sequential method, or the like. Here, the simultaneous method is a method of illuminating a subject with white light, and the frame sequential method is a method of sequentially illuminating light having different wavelength bands in time series.
また、光源422は、半導体光源又はランプ光源等としてもよい。ここで、半導体光源は、例えば白色光を出射する白色LED、RGB(赤緑青)の各色の色成分毎に異なる半導体光源を用いるもの(R、G、及びBの各LEDを有する光源)、又はレーザ光源等である。あるいは、上述のように内視鏡2、ケーブル3、及び内視鏡装置4を一体として構成した場合等に、光源422としての半導体光源が内視鏡2の先端部に設けられるように構成してもよい。
The
また、内視鏡2と内視鏡装置4との間の信号の送受は、図1に示したように有線により行われるように構成してもよいし、又は無線により行われるように構成してもよい。
また、モニタ43は、液晶モニタ等としてもよい。また、モニタ43は、図1に示したように内視鏡装置4に内蔵される構成としてもよいし、又は内視鏡装置4に対して外付けされる構成としてもよい。
Further, transmission / reception of signals between the
The
また、記録媒体44は、図1に示したように内視鏡装置4に内蔵される構成としてもよいし、又は記録媒体44を内視鏡装置4に対して着脱自在のSDカードやUSB( Universal Serial Bus )メモリ等の記録媒体として構成してもよい。あるいは、記録媒体44を、内視鏡装置4にローカル接続された外部記録装置の記録媒体、又は内視鏡装置4にネットワークを介して接続された外部記録装置(サーバ等)の記録媒体等として構成してもよい。
Further, the
また、操作部45は、図1に示したように内視鏡装置4に内蔵される構成としてもよいし、又は内視鏡装置4に対して外付けされる構成としてもよい。前者の場合には、操作部45を、内視鏡装置4の前面に設けられたフロントパネルスイッチ等として構成してもよい。この場合、そのフロントパネルスイッチは、物理的なスイッチ、又はタッチパネル等によって実現される仮想的なスイッチ等であってもよい。また、操作部45が内視鏡装置4に対して外付けされる構成とした場合には、操作部45を、内視鏡装置4に接続されるキーボード、内視鏡2に設けられたスコープスイッチ、又は内視鏡装置4に有線又は無線による接続される可搬型情報端末装置(タブレット型PC(Personal Computer)、スマートフォン等)等として構成してもよい。
Further, the
図2は、画像処理部411及びシステム制御部412の内部構成例を示す図である。但し、ここでは、システム制御部412の内部構成例として、画像処理部411に主に関係する要素(映像信号の処理に主に関係する要素)のみを示す。
FIG. 2 is a diagram illustrating an internal configuration example of the
図2に示したように、画像処理部411は、映像信号を処理するための複数の処理ユニット4111を含む。各処理ユニット4111は、複数のVALUを含み、カーネルの処理を実行する。なお、以下では、複数の処理ユニット4111を、「処理ユニット群」という。
As shown in FIG. 2, the
また、画像処理部411は、システム制御部412により実行指示されたカーネルを、その時点で使用されていない処理ユニット4111を使用して実行する機能を有する。また、画像処理部411は、処理ユニット群の使用率(使用量)を算出し、その使用率をシステム制御部412に通知する機能を有する。さらに、画像処理部411は、カーネルを実行したときに、当該カーネルの実行に使用した処理ユニット群の使用率(使用量)を算出し、その使用率をシステム制御部412に通知する機能を有する。なお、カーネルの実行に使用される処理ユニット群の使用率は、カーネルが同一であれば同一(又は略同一)の使用率となる。
Further, the
システム制御部412は、第1の使用率取得部4121、第2の使用率取得部4122、使用率記憶部4123、メモリ4124、カーネル選択部4125、及びカーネル実行指示部4126を含む。
The
第1の使用率取得部4121は、画像処理部411の処理ユニット群の使用率を画像処理部411から取得する。第2の使用率取得部4122は、画像処理部411によりカーネルが実行されたときに、当該カーネルの実行に使用された処理ユニット群の使用率を画像処理部411から取得する。
The first usage
使用率記憶部4123は、過去に画像処理部411により実行されたカーネル毎の、当該カーネルの実行に使用された処理ユニット群の使用率を記憶する。例えば、図示はしないが、使用率記憶部4123には、過去の色補正処理カーネルの実行に使用された処理ユニット群の使用率が30%、過去の明るさ補正処理カーネルの実行に使用された処理ユニット群の使用率が20%、過去の画像合成処理カーネルの実行に使用された処理ユニット群の使用率が10%、及び過去のJPEG(Joint Photographic Experts Group)圧縮処理カーネルの実行に使用された処理ユニット群の使用率が10%等というように、過去に実行されたカーネル毎の処理ユニット群の使用率が記憶される。なお、このカーネル毎の処理ユニット群の使用率は、第2の使用率取得部4122により取得されたものである。
The usage
メモリ4124は、実行待ちのカーネルを格納(記憶)する。図2に示した例では、メモリ4124への格納順に、「カーネル#1」(色補正処理カーネル)、「カーネル#2」(明るさ補正処理カーネル)、「カーネル#3」(画像合成処理カーネル)、及び「カーネル#4」(JPEG圧縮処理カーネル)が格納されている状態を示している。なお、メモリ4124へのカーネルの格納順は、実行待ちのカーネルの順番でもある。
The
カーネル選択部4125は、第1の使用率取得部4121により取得された処理ユニット群の使用率と、使用率記憶部4123に記憶されているカーネル毎の処理ユニット群の使用率とに基づいて、メモリ4124に格納されている実行待ちのカーネルの中から、次に実行させるカーネルを選択(決定)する。例えば、カーネル選択部4125は、画像処理部411が即時に実行開始可能なカーネルであって、且つ、その中でメモリ4124への格納順が最先のカーネルを、次に実行させるカーネルとして選択する。なお、この選択において、カーネルの実行に使用される処理ユニット群の使用率は、カーネルが同一であれば同一(又は略同一)の使用率になることから、メモリ4124に格納されている実行待ちの各カーネルの実行に使用される処理ユニット群の使用率は、使用率記憶部4123に記憶されている同一のカーネルについての処理ユニット群の使用率から予測することができる。また、第1の使用率取得部4121により取得された処理ユニット群の使用率から、その時点の処理ユニット群の未使用率を求めることができる。従って、実行待ちのカーネルの中で画像処理部411が即時に実行開始可能なカーネルは、予測された処理ユニット群の使用率が、処理ユニット群の未使用率以下に収まるカーネルとすることができる。
The
例えば、第1の使用率取得部4121により取得された処理ユニット群の使用率が80%(すなわち未使用率が20%)であり、使用率記憶部4123に記憶されているカーネル毎の処理ユニット群の使用率が上記に例示したものであり、メモリ4124に格納されている実行待ちのカーネルが図2に例示したものであるとする。この場合、実行待ちのカーネルの中で画像処理部411が即時に実行開始可能なカーネルは、「カーネル#2」(明るさ補正処理)、「カーネル#3」(画像合成処理カーネル)、及び「カーネル#4」(JPEG圧縮処理カーネル)となる。そして、この場合には、その中でメモリ4124への格納順が最先のカーネルである「カーネル#2」(明るさ補正処理)が、次に実行させるカーネルとして、カーネル選択部4125により選択されることになる。
For example, the usage rate of the processing unit group acquired by the first usage
あるいは、例えば、第1の使用率取得部4121により取得された処理ユニット群の使用率が80%(すなわち未使用率が20%)であり、使用率記憶部4123に記憶されているカーネル毎の処理ユニット群の使用率が上記に例示したものであり、メモリ4124に格納されている実行待ちのカーネルが、メモリ4124への格納順に「カーネル#1」(色補正処理カーネル)、「カーネル#2」(画像合成処理カーネル)、及び「カーネル#3」(JPEG圧縮処理カーネル)であるとする。この場合、実行待ちのカーネルの中で画像処理部411が即時に実行開始可能なカーネルは、「カーネル#2」(画像合成処理カーネル)、及び「カーネル#3」(JPEG圧縮処理カーネル)となる。そして、この場合には、その中でメモリ4124への格納順が最先のカーネルである「カーネル#2」(画像合成処理カーネル)が、次に実行させるカーネルとして、カーネル選択部4125により選択されることになる。なお、この場合において、処理ユニット群の未使用率が20%であり、画像合成処理カーネル及びJPEG圧縮処理カーネルの各々の処理ユニット群の使用率が10%になると予測されることから、カーネル選択部4125が、次に実行させるカーネルとして、「カーネル#2」(画像合成処理カーネル)及び「カーネル#3」(JPEG圧縮処理カーネル)の両方を選択するようにしてもよい。
Alternatively, for example, the usage rate of the processing unit group acquired by the first usage
そして、カーネル選択部4125は、このようにして選択したカーネルを、カーネル実行指示部4126へ転送する。
カーネル実行指示部4126は、カーネル選択部4125により転送されたカーネルを画像処理部411に実行させるように指示する。
Then, the
The kernel
以上のように構成された内視鏡システム1に含まれる内視鏡装置4において、処理ユニット群(複数の処理ユニット4111)は、複数の演算ユニットの一例である。第1の使用率取得部4121は、複数の演算ユニットの使用率を取得する第1の取得部の一例である。第2の使用率取得部4122は、プログラムが実行されたときに、当該プログラムの実行に使用された複数の演算ユニットの使用率を取得する第2の取得部の一例である。使用率記憶部4123は、過去に実行されたプログラム毎の、当該プログラムの実行に使用された複数の演算ユニットの使用率を記憶する記憶部の一例である。カーネル選択部4125は、第1の取得部により取得された使用率と、記憶部に記憶されているプログラム毎の使用率とに基づいて、実行待ちのプログラムの中から、次に実行させるプログラムを決定する決定部の一例である。
In the
次に、内視鏡システム1の動作の一例として、図2に示した画像処理部411及びシステム制御部412の動作について説明する。なお、本動作の説明では、画像処理部411をGPU411と称して説明する。
Next, operations of the
図3は、その動作の一例を示すフローチャートである。
図3に示したように、本動作では、まず、GPU411が、処理ユニット群の使用率を算出する(S100)。
FIG. 3 is a flowchart showing an example of the operation.
As shown in FIG. 3, in this operation, first, the
続いて、第1の使用率取得部4121は、S100で算出された使用率をGPU411から取得し(S105)、カーネル選択部4125に通知する(S110)。
なお、S100及びS105では、例えば、第1の使用率取得部4121がGPU411に対して使用率の問い合わせを行い、その問い合わせに応じてGPU411がS100の処理を行い、そして、第1の使用率取得部4121がS105の処理を行うようにしてもよい。
Subsequently, the first usage
In S100 and S105, for example, the first usage
続いて、カーネル選択部4125は、使用率記憶部4123に記憶されているカーネル毎の処理ユニット群の使用率に基づいて、メモリ4124に格納されている実行待ちの各カーネルの実行に使用される処理ユニット群の使用率を予測する(S115)。
Subsequently, the
続いて、カーネル選択部4125は、その予測を完了することができたか否かを判定する(S120)。
S120の判定結果がNoの場合、カーネル選択部4125は、処理ユニット群の使用率を予測することができなかった実行待ちのカーネルを1つ選択してカーネル実行指示部4126へ転送し、そのカーネルの実行をカーネル実行指示部4126がGPU411に指示する(S125)。続いて、GPU411は、カーネル実行指示部4126により指示されたカーネルを実行し、そのカーネルの実行に使用された処理ユニット群の使用率を算出する(S130)。続いて、第2の使用率取得部4122は、S130で算出された使用率をGPU411から取得し、その使用率が、S125で実行が指示されたカーネルの処理ユニット群の使用率として使用率記憶部4123に記憶され(S135)、処理がS115に戻る。
Subsequently, the
When the determination result in S120 is No, the
一方、S120の判定結果がYesの場合、カーネル選択部4125は、S110で通知された処理ユニット群の使用率とS115で行われた予測とに基づいて、メモリ4124に格納されている実行待ちのカーネルの中から、GPU411が即時に実行開始可能なカーネルであって、且つ、その中でメモリ4124への格納順が最先のカーネルを、次に実行させるカーネルとして選択する(S140)。但し、メモリ4124に格納されている実行待ちのカーネルの中に、GPU411が即時に実行開始可能なカーネルが無い場合には、メモリ4124への格納順が最先のカーネルを選択する。
On the other hand, when the determination result in S120 is Yes, the
続いて、カーネル選択部4125は、選択したカーネルをカーネル実行指示部4126へ転送する(S145)。
続いて、カーネル実行指示部4126は、S145でカーネル選択部4125により転送されたカーネルの実行をGPU411に指示する(S150)。
Subsequently, the
Subsequently, the kernel
続いて、GPU411は、S150でカーネル実行指示部4126により指示されたカーネルを、使用されていない処理ユニット4111を用いて実行し(S155)、本フローが終了する。
Subsequently, the
以上のように、本実施形態に係る内視鏡装置4では、メモリ4124に格納されている実行待ちのカーネルの中から、画像処理部(GPU)411が即時に実行開始可能なカーネルであって、且つ、その中でメモリ4124への格納順が最先のカーネルを、次に実行させるカーネルとして選択するようにしたことから、画像処理部(GPU)411では、カーネルの処理が、使用されていない処理ユニット4111に滞りなく配分されて即時に実行されるようになる。従って、本実施形態に係る内視鏡装置4によれば、カーネルの処理を、処理ユニット群(複数の処理ユニット4111)に適切に配分して実行させることができる。また、その結果として、映像信号の処理を、より高速に行うことができる。
As described above, in the
<第2の実施形態>
本発明の第2の実施形態に係る内視鏡装置は、第1の実施形態に係る内視鏡装置4において、更に、実行待ちのカーネルの中に、処理制限時間内に実行しなければならないカーネルがある場合には、それを優先して実行させるようにしたものである。
<Second Embodiment>
The endoscope apparatus according to the second embodiment of the present invention must be executed within the processing time limit in the kernel waiting for execution in the
なお、第2の実施形態の説明では、第1の実施形態で説明した要素と同一の要素については同一の符号を付し、その詳細な説明は省略する。
図4は、第2の実施形態に係る内視鏡システム1における、画像処理部(GPU)411及びシステム制御部412の内部構成例を示す図である。なお、図4は、図2に示した内部構成例に対応する図でもある。
In the description of the second embodiment, the same elements as those described in the first embodiment are denoted by the same reference numerals, and detailed description thereof is omitted.
FIG. 4 is a diagram illustrating an internal configuration example of the image processing unit (GPU) 411 and the
図4において、第1の実施形態(図2に示した内部構成例)と異なる点は、システム制御部412が、処理制限時間を設定する処理制限時間設定部4127を更に備える点である。なお、この処理制限時間は、例えば、1フレーム分の処理に許容される最大時間である。例えば60フレーム/秒の映像を取得する場合には、処理制限時間が1/60秒とされる。また、処理制限時間設定部4127により設定される処理制限時間は、例えば、ユーザによる操作部45の操作により変更可能である。
4 is different from the first embodiment (internal configuration example shown in FIG. 2) in that the
この処理制限時間設定部4127を備えることに伴い、第2の実施形態では、カーネル選択部4125が、更に、メモリ4124に格納されている実行待ちのカーネルの中に、処理制限時間設定部4127により設定されている処理制限時間内に実行しなければならないカーネルがある場合には、そのカーネルの中でメモリ4124への格納順が最先のカーネルを、次に実行させるカーネルとして優先して選択(決定)し、カーネル実行指示部4126に転送する。ここで、処理制限時間設定部4127により設定されている処理制限時間内に実行しなければならないカーネルとは、例えば、1フレーム分の処理の中で実行しなければならないカーネルであり、JPEG圧縮処理カーネル等は除かれる。
Along with the provision of this processing time
その他の構成については、第1の実施形態と同様である。
次に、内視鏡システム1の動作の一例として、図4に示した画像処理部(GPU)411及びシステム制御部412の動作について説明する。
About another structure, it is the same as that of 1st Embodiment.
Next, operations of the image processing unit (GPU) 411 and the
図5は、その動作の一例を示すフローチャートである。なお、図5は、図3に示したフローチャートに対応する図でもある。
図5において、第1の実施形態(図3に示したフローチャート)と異なる点は、S120の判定結果がYesの場合にS200の判定が行われ、S200の判定結果がNoの場合にはS140へ進み、Yesの場合にはS205の処理を行ってからS145へ進むようにした点である。
FIG. 5 is a flowchart showing an example of the operation. FIG. 5 is also a diagram corresponding to the flowchart shown in FIG.
In FIG. 5, the difference from the first embodiment (the flowchart shown in FIG. 3) is that when the determination result of S120 is Yes, the determination of S200 is performed, and when the determination result of S200 is No, the process proceeds to S140. In the case of Yes and Yes, the process of S205 is performed and then the process proceeds to S145.
より詳しくは、S120の判定結果がYesの場合、カーネル選択部4125は、メモリ4124に格納されている実行待ちのカーネルの中に、処理制限時間設定部4127により設定されている処理制限時間内に実行しなければならないカーネルがあるか否かを判定する(S200)。ここで、その判定結果がNoの場合には、処理がS140へ進む。
More specifically, when the determination result in S120 is Yes, the
一方、S200の判定結果がYesの場合、カーネル選択部4125は、メモリ4124に格納されている実行待ちのカーネルの中から、処理制限時間設定部4127により設定されている処理制限時間内に実行しなければならないカーネルであって、且つ、その中でメモリ4124への格納順が最先のカーネルを、次に実行させるカーネルとして選択し(S205)、処理がS145へ進む。
On the other hand, when the determination result in S200 is Yes, the
その他については、第1の実施形態と同様である。
以上のように、第2の実施形態に係る内視鏡装置4によれば、第1の実施形態で述べた効果に加え、更に、実行待ちのカーネルの中に、処理制限時間内に実行しなければならないカーネルがある場合には、それを優先して画像処理部(GPU)411に実行させるようにすることができる。
About others, it is the same as that of 1st Embodiment.
As described above, according to the
なお、上述の各実施形態では、次のような変形も可能である。
例えば、第1の使用率取得部4121が、処理ユニット群の使用率を画像処理部(GPU)411から取得する際に、使用中(又は未使用中)の処理ユニット4111が何れであるかを示す情報(以下、「処理ユニット群使用状態情報」という)も画像処理部(GPU)411から取得するようにしてもよい。そして、カーネル実行指示部4126が、カーネルの実行を画像処理部(GPU)411に指示する際に、その処理ユニット群使用状態情報に基づいて、実行指示するカーネルの処理を何れの処理ユニット4111(未使用中の処理ユニット4111)を用いて実行させるかも画像処理部(GPU)411に指示するようにしてもよい。
In the above-described embodiments, the following modifications are possible.
For example, when the first usage
また、例えば、ビデオプロセッサ機能部41が複数の画像処理部(GPU)411を含むように構成してもよい。この場合、システム制御部412は、上述の各実施形態で説明した画像処理部(GPU)411に対する制御を、複数の画像処理部(GPU)411の各々に対して行うことになる。
For example, the video
以上、上述した実施形態は、発明の理解を容易にするために本発明の具体例を示したものであり、本発明は上述の実施形態に限定されるものではない。本発明は、特許請求の範囲に規定された本発明の思想を逸脱しない範囲において、さまざまな変形、変更が可能である。 As mentioned above, the embodiment described above shows a specific example of the present invention in order to facilitate understanding of the invention, and the present invention is not limited to the above-described embodiment. The present invention can be variously modified and changed without departing from the concept of the present invention defined in the claims.
1 内視鏡システム
2 内視鏡
3 ケーブル
4 内視鏡装置
21 スコープ制御部
22 照明光学系
23 対物光学系
24 撮像素子
41 ビデオプロセッサ機能部
42 光源機能部
43 モニタ
44 記録媒体
45 操作部
411 画像処理部
412 システム制御部
421 光源制御部
422 光源
4111 処理ユニット
4121 第1の使用率取得部
4122 第2の使用率取得部
4123 使用率記憶部
4124 メモリ
4125 カーネル選択部
4126 カーネル実行指示部
4127 処理制限時間設定部
DESCRIPTION OF SYMBOLS 1
Claims (6)
前記複数の演算ユニットの使用率を取得する第1の取得部と、
過去に実行されたプログラム毎の、当該プログラムの実行に使用された前記複数の演算ユニットの使用率を記憶する記憶部と、
前記第1の取得部により取得された使用率と、前記記憶部に記憶されているプログラム毎の使用率とに基づいて、実行待ちのプログラムの中から、次に実行させるプログラムを決定する決定部と、
を備えることを特徴とする内視鏡装置。 Multiple arithmetic units;
A first acquisition unit for acquiring a usage rate of the plurality of arithmetic units;
A storage unit that stores a usage rate of each of the plurality of arithmetic units used for executing the program for each program executed in the past;
A determination unit that determines a program to be executed next from among the programs waiting to be executed based on the usage rate acquired by the first acquisition unit and the usage rate for each program stored in the storage unit When,
An endoscope apparatus comprising:
前記第2の取得部により取得された使用率が前記記憶部に記憶される、
ことを特徴とする請求項1記載の内視鏡装置。 When the program is executed, the system further comprises a second acquisition unit that acquires usage rates of the plurality of arithmetic units used for executing the program,
The usage rate acquired by the second acquisition unit is stored in the storage unit.
The endoscope apparatus according to claim 1.
ことを特徴とする請求項1又は2記載の内視鏡装置。 The determining unit determines a program that can immediately start execution and that has the earliest waiting order for execution as a program to be executed next.
The endoscope apparatus according to claim 1 or 2, characterized by the above-mentioned.
ことを特徴とする請求項1乃至3の何れか一項に記載の内視鏡装置。 The determination unit, when there is a program that must be executed within a predetermined time among the programs waiting for execution, determines the program as a program to be executed next with priority.
The endoscope apparatus according to any one of claims 1 to 3, wherein the endoscope apparatus is characterized in that
ことを特徴とする請求項1乃至4の何れか一項に記載の内視鏡装置。 The plurality of arithmetic units are a plurality of arithmetic units included in a GPU (Graphics Processing Unit).
The endoscope apparatus according to any one of claims 1 to 4, wherein the endoscope apparatus is characterized in that:
前記複数の演算ユニットの使用率を取得し、
前記取得した前記複数の演算ユニットの使用率と、過去に実行されたプログラム毎の、当該プログラムの実行に使用された前記複数の演算ユニットの使用率とに基づいて、実行待ちのプログラムの中から、次に実行させるプログラムを決定する、
ことを特徴とするプログラム実行方法。
An endoscope apparatus program execution method including a plurality of arithmetic units,
Obtaining a usage rate of the plurality of arithmetic units;
Based on the acquired usage rate of the plurality of arithmetic units and the usage rate of the plurality of arithmetic units used to execute the program for each program executed in the past, from among the programs waiting to be executed Determine the next program to run,
A program execution method characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015053187A JP6340333B2 (en) | 2015-03-17 | 2015-03-17 | Endoscope device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015053187A JP6340333B2 (en) | 2015-03-17 | 2015-03-17 | Endoscope device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016171900A true JP2016171900A (en) | 2016-09-29 |
JP6340333B2 JP6340333B2 (en) | 2018-06-06 |
Family
ID=57008549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015053187A Active JP6340333B2 (en) | 2015-03-17 | 2015-03-17 | Endoscope device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6340333B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010245862A (en) * | 2009-04-07 | 2010-10-28 | Toshiba Corp | Medical image processing apparatus |
WO2012039171A1 (en) * | 2010-09-24 | 2012-03-29 | オリンパスメディカルシステムズ株式会社 | Image-display device and capsule-type endoscope system |
WO2013133368A1 (en) * | 2012-03-07 | 2013-09-12 | オリンパス株式会社 | Image processing device, program, and image processing method |
WO2014065378A1 (en) * | 2012-10-24 | 2014-05-01 | オリンパスメディカルシステムズ株式会社 | Examination management device and examination management system |
-
2015
- 2015-03-17 JP JP2015053187A patent/JP6340333B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010245862A (en) * | 2009-04-07 | 2010-10-28 | Toshiba Corp | Medical image processing apparatus |
WO2012039171A1 (en) * | 2010-09-24 | 2012-03-29 | オリンパスメディカルシステムズ株式会社 | Image-display device and capsule-type endoscope system |
WO2013133368A1 (en) * | 2012-03-07 | 2013-09-12 | オリンパス株式会社 | Image processing device, program, and image processing method |
WO2014065378A1 (en) * | 2012-10-24 | 2014-05-01 | オリンパスメディカルシステムズ株式会社 | Examination management device and examination management system |
Also Published As
Publication number | Publication date |
---|---|
JP6340333B2 (en) | 2018-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104488258A (en) | Method and apparatus for dual camera shutter | |
EP3355572B1 (en) | Electronic device and method for capturing image in electronic device | |
JP6577887B2 (en) | Image processing apparatus, endoscope system, image processing method, image processing program, and recording medium | |
CN109976450A (en) | Screen calibration method, device, electronic equipment and storage medium | |
WO2012039171A1 (en) | Image-display device and capsule-type endoscope system | |
US9826209B2 (en) | Medical system, method for performing image processing setting of medical system, and image processing device | |
CN106455945A (en) | Wireless endoscope system, endoscope, display device, image transmission method, image display method, and program | |
CN110573054A (en) | Medical image processing apparatus, medical image processing method, and endoscope system | |
US20190146883A1 (en) | Information processing apparatus, information processing system, image pickup device, head mounted display, and information processing method | |
CN108697310B (en) | Image processing apparatus, image processing method, and program-recorded medium | |
CN112656352B (en) | Endoscope camera host, control method thereof, endoscope imaging system and storage medium | |
CN103750805A (en) | High-definition medical endoscope video processing device and method | |
JP6340333B2 (en) | Endoscope device | |
US10413156B2 (en) | Endoscope device, endoscopic system, method, and computer-readable storage device | |
JP6615550B2 (en) | Image recording system for electronic endoscope | |
US20210266443A1 (en) | Apparatus for stabilizing digital image, operating method thereof, and electronic device having the same | |
US10231602B2 (en) | Video processor for processing a video signal input | |
US11361406B2 (en) | Image processing apparatus, image processing method, and non-transitory computer readable recording medium | |
US20170273541A1 (en) | Endoscope system | |
US20220151467A1 (en) | Medical image processing apparatus, endoscope system, medical image processing method, and program | |
CN110401800A (en) | Image processing method, image processor, filming apparatus and electronic equipment | |
US11966679B2 (en) | Information processing apparatus and non-transitory computer readable medium | |
JP6559531B2 (en) | Signal processing apparatus and signal processing method | |
JP6404076B2 (en) | Processor and endoscope system | |
US20240212113A1 (en) | Systems, methods, and machine instructions for re-coloring color images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170623 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180316 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180327 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180403 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180501 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180514 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6340333 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |