JP5791976B2 - Image processing apparatus, image processing method, and program - Google Patents

Image processing apparatus, image processing method, and program Download PDF

Info

Publication number
JP5791976B2
JP5791976B2 JP2011134341A JP2011134341A JP5791976B2 JP 5791976 B2 JP5791976 B2 JP 5791976B2 JP 2011134341 A JP2011134341 A JP 2011134341A JP 2011134341 A JP2011134341 A JP 2011134341A JP 5791976 B2 JP5791976 B2 JP 5791976B2
Authority
JP
Japan
Prior art keywords
image
measurement
point
cpu
graphic
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.)
Expired - Fee Related
Application number
JP2011134341A
Other languages
Japanese (ja)
Other versions
JP2013002956A (en
Inventor
史生 堀
史生 堀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Olympus Corp
Original Assignee
Olympus Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Olympus Corp filed Critical Olympus Corp
Priority to JP2011134341A priority Critical patent/JP5791976B2/en
Priority to EP12800391.0A priority patent/EP2722638B1/en
Priority to PCT/JP2012/065124 priority patent/WO2012173141A1/en
Publication of JP2013002956A publication Critical patent/JP2013002956A/en
Priority to US14/102,455 priority patent/US9275473B2/en
Application granted granted Critical
Publication of JP5791976B2 publication Critical patent/JP5791976B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10068Endoscopic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user
    • G06T2207/20101Interactive definition of point of interest, landmark or seed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Description

本発明は、計測対象物の画像を処理して計測対象物のサイズを計測する画像処理装置、画像処理方法、およびプログラムに関する。   The present invention relates to an image processing apparatus, an image processing method, and a program that process an image of a measurement object to measure the size of the measurement object.

従来、内視鏡等の観察用治具を使用して、ジェットエンジン内のブレード等の計測が行われている。特許文献1には、ブレード等の計測に適した技術が記載されている。この特許文献1に記載された技術では、被写体を撮像した被写体画像と、コンピュータグラフィックス(CG)により生成したCG画像とをモニタに表示し、CG画像における物体の状態と被写体画像における被写体の状態とが一致するように、ユーザの指示に基づいてCG画像を変更し、計測を行いたい部分に対してCG画像上で計測を行うことが可能である。   Conventionally, blades in a jet engine are measured using an observation jig such as an endoscope. Patent Document 1 describes a technique suitable for measuring a blade or the like. In the technique described in Patent Document 1, a subject image obtained by imaging a subject and a CG image generated by computer graphics (CG) are displayed on a monitor, and the state of the object in the CG image and the state of the subject in the subject image are displayed. It is possible to change the CG image based on the user's instruction so as to match, and to perform measurement on the CG image for the portion to be measured.

しかし、特許文献1に記載された技術では、被写体の見え方が異なる複数の被写体画像を切り替えながら各被写体画像に対して計測を行う場合、被写体画像を切り替えるたびに、CG画像における物体の状態を被写体画像における被写体の状態に一致させる操作が必要となる。このため、ジェットエンジン内に周期的に配置された複数のブレードの計測を行う場合、上記の操作が頻繁に発生し、手間がかかるという問題がある。   However, in the technique described in Patent Document 1, when measurement is performed on each subject image while switching a plurality of subject images with different appearances of the subject, the state of the object in the CG image is changed every time the subject image is switched. An operation to match the state of the subject in the subject image is required. For this reason, when measuring a plurality of blades periodically arranged in the jet engine, there is a problem that the above operation frequently occurs and takes time and effort.

これに対して、特許文献2には、被写体を撮像して得られた2次元画像と、CAD(Computer Aided Design)を利用して得られたデータに基づく3Dオブジェクトとを自動的にマッチング(パターンマッチング)させることで、上記の手間の問題を解決した技術が記載されている。特許文献2に記載された技術では、まず、3Dオブジェクトを仮想的な複数の視点から観察した場合に、それぞれの視点において観察される3Dオブジェクトの投影図を生成し、複数の投影図をまとめて2Dモデルとして保存しておく。そして、2次元画像と、生成した2Dモデルとの間でマッチングを行い、2Dモデルとの類似度が 最も高い投影図を検索し、その投影図が生成されたときの視点の位置をもとに、2次元画像に写っている被写体と、2次元画像を撮像したカメラとの相対位置を算出する。   In contrast, Patent Document 2 automatically matches (patterns) a two-dimensional image obtained by imaging a subject and a 3D object based on data obtained using CAD (Computer Aided Design). A technique that solves the above-mentioned trouble by matching) is described. In the technique described in Patent Literature 2, first, when a 3D object is observed from a plurality of virtual viewpoints, a projection view of the 3D object observed at each viewpoint is generated, and the plurality of projection views are collected together. Save as a 2D model. Then, matching is performed between the two-dimensional image and the generated 2D model, and the projection map having the highest similarity with the 2D model is searched, and based on the position of the viewpoint when the projection map is generated The relative position between the subject in the two-dimensional image and the camera that captured the two-dimensional image is calculated.

特開平3−102202号公報Japanese Patent Laid-Open No. 3-102202 米国特許出願公開第2009/0096790号明細書US Patent Application Publication No. 2009/0096790

特許文献2に記載された技術では、2次元画像と3Dオブジェクトの投影図(2Dモデル)とを用いて、画像から検出されるエッジをベースとした画像処理によるマッチングを行うことで、類似度を算出していた。この方法によると、エッジをベースとした画像処理を行うため、マッチングに必要な処理時間が長かった。また、大量の投影図のそれぞれに対して画像処理を行うことになるので、マッチングに必要な処理時間が膨大となっていた。   In the technique described in Patent Document 2, similarity is obtained by performing matching by image processing based on edges detected from an image using a two-dimensional image and a projection view (2D model) of a 3D object. It was calculated. According to this method, since image processing based on edges is performed, the processing time required for matching is long. In addition, since image processing is performed on each of a large number of projection views, the processing time required for matching is enormous.

本発明は、上述した課題に鑑みてなされたものであって、処理時間を低減することができる画像処理装置、画像処理方法、およびプログラムを提供することを目的とする。   SUMMARY An advantage of some aspects of the invention is that it provides an image processing apparatus, an image processing method, and a program capable of reducing processing time.

本発明は、上記の課題を解決するためになされたもので、計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示する表示部と、入力装置を介して入力される指示に基づいて、前記計測対象物の画像上の第1の点と前記物体の画像上の第2の点とを指定する指定部と、前記第1の点を基準とする第1の図形と、前記第2の点を基準とする第2の図形との幾何学計算を行う計算部と、前記幾何学計算の結果に基づいて、前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整する調整部と、前記姿勢または前記位置が調整された後、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出する計測部と、を備えたことを特徴とする画像処理装置である。   The present invention has been made to solve the above-described problem, and includes an image of a measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance. A display unit for displaying, and a designation unit for designating a first point on the image of the measurement object and a second point on the image of the object based on an instruction input via the input device; Based on the result of the geometric calculation, a calculation unit that performs a geometric calculation of the first graphic with the first point as a reference and the second graphic with the second point as a reference, An adjustment unit that adjusts the posture or position of at least one of the image of the measurement object and the image of the object, and is specified based on an instruction that is input via the input device after the posture or the position is adjusted. Calculate the spatial coordinates on the object corresponding to the measured position. Based on the spatial coordinates, an image processing apparatus characterized by comprising: a measurement unit for calculating the size of the object.

また、本発明は、計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示する表示部と、入力装置を介して入力される指示に基づいて、前記計測対象物の画像上の第1の点を指定する指定部と、前記第1の点を基準とする第1の図形と、前記物体の画像と関連付けて記録されている第2の点を基準とする第2の図形との幾何学計算を行う計算部と、前記幾何学計算の結果に基づいて、前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整する調整部と、前記姿勢または前記位置が調整された後、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出する計測部と、を備えたことを特徴とする画像処理装置である。   In addition, the present invention provides a display unit that displays an image of a measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance, and an input device. Based on an input instruction, a designation unit that designates a first point on the image of the measurement object, a first graphic that is based on the first point, and an image of the object are recorded in association with each other. A calculation unit that performs geometric calculation with the second graphic that is based on the second point that is used as a reference, and based on a result of the geometric calculation, at least an image of the measurement object and an image of the object An adjustment unit that adjusts one posture or position, and after the posture or the position is adjusted, spatial coordinates on the object corresponding to a measurement position designated based on an instruction input via an input device Calculate, based on the calculated spatial coordinates, the object A measuring unit for calculating a size, an image processing apparatus characterized by comprising a.

また、本発明の画像処理装置において、前記第1の点および前記第2の点は、入力装置を介して入力される指示に基づいて指定された3点以上の点を含むことを特徴とする。   In the image processing apparatus of the present invention, the first point and the second point include three or more points designated based on an instruction input via the input device. .

また、本発明の画像処理装置において、前記計算部は、前記第1の点の指定された順番と、前記第2の点の指定された順番とに基づいて、前記第1の点と前記第2の点とを対応付けて前記幾何学計算を行うことを特徴とする。   In the image processing apparatus according to the aspect of the invention, the calculation unit may calculate the first point and the first point based on a specified order of the first point and a specified order of the second point. The geometric calculation is performed in association with two points.

また、本発明の画像処理装置において、前記計算部は、前記第1の点を基準とする平面上の第1の図形と、前記第2の点に対応する前記物体の空間上の点を基準とする空間上の第2の図形との幾何学計算を行うことを特徴とする。   In the image processing apparatus according to the aspect of the invention, the calculation unit may use a first figure on a plane with the first point as a reference, and a point on the space of the object corresponding to the second point as a reference. The geometrical calculation with the second figure in the space is performed.

また、本発明の画像処理装置において、前記計算部は、前記平面上の第1の図形と、前記空間上の第2の図形を前記平面に投影した第3の図形との幾何学計算を行うことを特徴とする。   In the image processing apparatus according to the aspect of the invention, the calculation unit may perform a geometric calculation between the first graphic on the plane and the third graphic obtained by projecting the second graphic on the space onto the plane. It is characterized by that.

また、本発明の画像処理装置において、前記指定部はさらに、前記第1の点を指定する場合に、前記物体の画像の透過率を、前記第2の点を指定する場合の前記物体の画像の透過率よりも大きな透過率に設定することを特徴とする。   In the image processing device according to the aspect of the invention, when the first point is specified, the specifying unit further indicates the transmittance of the image of the object, and the image of the object when the second point is specified. It is characterized in that the transmittance is set to be larger than the transmittance.

また、本発明の画像処理装置において、前記表示部は、前記計測対象物の画像と前記物体の画像とを表示した後、前記幾何学計算が終了するまで、前記計測対象物の画像と前記物体の画像の姿勢および位置を維持し、前記幾何学計算が終了した後、前記姿勢または前記位置が調整された前記計測対象物の画像と前記物体の画像を再表示することを特徴とする。   In the image processing apparatus of the present invention, the display unit displays the image of the measurement object and the image of the object, and then displays the image of the measurement object and the object until the geometric calculation is completed. The posture and position of the image are maintained, and after the geometric calculation is completed, the image of the measurement object and the image of the object whose posture or position is adjusted are displayed again.

また、本発明は、計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示部が表示するステップと、入力装置を介して入力される指示に基づいて、指定部が前記計測対象物の画像上の第1の点と前記物体の画像上の第2の点とを指定するステップと、前記第1の点を基準とする第1の図形と、前記第2の点を基準とする第2の図形との幾何学計算を計算部が行うステップと、前記幾何学計算の結果に基づいて、調整部が前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整するステップと、前記姿勢または前記位置が調整された後、計測部が、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出するステップと、を備えたことを特徴とする画像処理方法である。   Further, the present invention provides a step in which a display unit displays an image of a measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance, and an input device. The designation unit designates a first point on the image of the measurement object and a second point on the image of the object based on an instruction input via The calculation unit performs a geometric calculation between the first graphic and the second graphic based on the second point, and the adjustment unit is configured to measure the measurement object based on the result of the geometric calculation. A step of adjusting the posture or position of at least one of the image of the object and the image of the object, and after the posture or the position is adjusted, the measurement unit specifies based on an instruction input via the input device The spatial coordinates on the object corresponding to the measured position Out, based on the calculated spatial coordinates, an image processing method characterized by comprising the steps of: calculating a size of the object.

また、本発明の画像処理方法において、前記第1の点および前記第2の点は、入力装置を介して入力される指示に基づいて指定された3点以上の点を含み、前記計算部は、前記第1の点の指定された順番と、前記第2の点の指定された順番とに基づいて、前記第1の点と前記第2の点とを対応付けて前記幾何学計算を行うことを特徴とする。   In the image processing method of the present invention, the first point and the second point include three or more points specified based on an instruction input via an input device, and the calculation unit includes: The geometric calculation is performed by associating the first point with the second point based on the designated order of the first point and the designated order of the second point. It is characterized by that.

また、本発明は、計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示する表示部と、入力装置を介して入力される指示に基づいて、前記計測対象物の画像上の第1の点と前記物体の画像上の第2の点とを指定する指定部と、前記第1の点を基準とする第1の図形と、前記第2の点を基準とする第2の図形との幾何学計算を行う計算部と、前記幾何学計算の結果に基づいて、前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整する調整部と、前記姿勢または前記位置が調整された後、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出する計測部と、としてコンピュータを機能させるためのプログラムである。   In addition, the present invention provides a display unit that displays an image of a measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance, and an input device. Based on an input instruction, a designation unit that designates a first point on the image of the measurement object and a second point on the image of the object, and a first that is based on the first point And a calculation unit that performs geometric calculation of the second figure based on the second point, and based on the result of the geometric calculation, an image of the measurement object and an image of the object A space on the object corresponding to a measurement position designated based on an instruction input via an input device after the posture or the position is adjusted Coordinates are calculated, and based on the calculated spatial coordinates, the size of the object is calculated. A measuring unit for calculating a is a program for causing a computer to function as a.

本発明によれば、第1の図形と第2の図形との幾何学計算を行い、幾何学計算の結果に基づいて、計測対象物の画像と物体の画像との少なくとも一方の姿勢または位置を調整することによって、処理時間を低減することができる。   According to the present invention, geometric calculation of the first graphic and the second graphic is performed, and based on the result of the geometric calculation, at least one posture or position of the measurement object image and the object image is determined. By adjusting, the processing time can be reduced.

本発明の一実施形態によるブレード検査システムの構成を示すブロック図である。It is a block diagram which shows the structure of the blade test | inspection system by one Embodiment of this invention. 本発明の一実施形態によるブレード検査システムが備える内視鏡装置の構成を示すブロック図である。It is a block diagram which shows the structure of the endoscope apparatus with which the blade test | inspection system by one Embodiment of this invention is provided. 本発明の一実施形態によるブレード検査システム(変形例)の構成を示すブロック図である。It is a block diagram which shows the structure of the blade test | inspection system (modification) by one Embodiment of this invention. 本発明の一実施形態によるブレード検査システム(変形例)の構成を示すブロック図である。It is a block diagram which shows the structure of the blade test | inspection system (modification) by one Embodiment of this invention. 本発明の一実施形態によるブレード検査システム(変形例)が備えるPCの構成を示すブロック図である。It is a block diagram which shows the structure of PC with which the blade test | inspection system (modification) by one Embodiment of this invention is provided. 本発明の一実施形態における3D計測ソフトの画面を示す参考図である。It is a reference figure showing the screen of 3D measurement software in one embodiment of the present invention. 本発明の一実施形態における3Dオブジェクトとカメラポーズの関係を示す参考図である。It is a reference figure showing the relation between 3D object and camera pose in one embodiment of the present invention. 本発明の一実施形態における3Dオブジェクトとカメラポーズの関係を示す参考図である。It is a reference figure showing the relation between 3D object and camera pose in one embodiment of the present invention. 本発明の一実施形態における3Dオブジェクトとカメラポーズの関係を示す参考図である。It is a reference figure showing the relation between 3D object and camera pose in one embodiment of the present invention. 本発明の一実施形態における3Dオブジェクトとカメラポーズの関係を示す参考図である。It is a reference figure showing the relation between 3D object and camera pose in one embodiment of the present invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態におけるカメラポーズの初期値を説明するための参考図である。It is a reference figure for demonstrating the initial value of the camera pose in one Embodiment of this invention. 本発明の一実施形態におけるカメラポーズの初期値を説明するための参考図である。It is a reference figure for demonstrating the initial value of the camera pose in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態におけるカメラポーズ設定処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the camera pose setting process in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態における参照点(計測)指定処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the reference point (measurement) designation | designated process in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態における参照点(3D)指定処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the reference point (3D) designation | designated process in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態におけるマッチング処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the matching process in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態における計測処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the measurement process in one Embodiment of this invention. 本発明の一実施形態における計測処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the measurement process in one Embodiment of this invention. 本発明の一実施形態における空間座標の算出方法を説明するための参考図である。It is a reference figure for demonstrating the calculation method of the space coordinate in one Embodiment of this invention. 本発明の一実施形態における空間座標の算出方法を説明するための参考図である。It is a reference figure for demonstrating the calculation method of the space coordinate in one Embodiment of this invention. 本発明の一実施形態における空間座標の算出方法を説明するための参考図である。It is a reference figure for demonstrating the calculation method of the space coordinate in one Embodiment of this invention. 本発明の一実施形態における空間座標の算出方法を説明するための参考図である。It is a reference figure for demonstrating the calculation method of the space coordinate in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態における参照点と参照図形を示す参考図である。It is a reference figure showing a reference point and a reference figure in one embodiment of the present invention. 本発明の一実施形態におけるパン・チルト方向のマッチング処理の内容を説明するための参考図である。It is a reference diagram for explaining the contents of the matching process in the pan / tilt direction in one embodiment of the present invention. 本発明の一実施形態におけるデータリストを示す参考図である。It is a reference diagram showing a data list in an embodiment of the present invention. 本発明の一実施形態におけるデータリストを示す参考図である。It is a reference diagram showing a data list in an embodiment of the present invention. 本発明の一実施形態におけるデータリストを示す参考図である。It is a reference diagram showing a data list in an embodiment of the present invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態におけるロール方向のマッチング処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the matching process of the roll direction in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態におけるズーム方向のマッチング処理の内容を説明するための参考図である。It is a reference diagram for explaining the contents of the matching process of the zoom direction in one embodiment of the present invention. 本発明の一実施形態における辺長(3D)とカメラポーズのズーム方向位置との関係を示すグラフである。It is a graph which shows the relationship between the side length (3D) and the zoom direction position of a camera pose in one Embodiment of this invention. 本発明の一実施形態における3D計測ソフトによる動作の手順を示すフローチャートである。It is a flowchart which shows the procedure of the operation | movement by 3D measurement software in one Embodiment of this invention. 本発明の一実施形態におけるシフト方向のマッチング処理の内容を説明するための参考図である。It is a reference figure for demonstrating the content of the matching process of the shift direction in one Embodiment of this invention. 本発明の一実施形態の変形例を説明するための参考図である。It is a reference figure for explaining the modification of one embodiment of the present invention. 本発明の一実施形態の変形例を説明するための参考図である。It is a reference figure for explaining the modification of one embodiment of the present invention. 本発明の一実施形態の変形例を説明するための参考図である。It is a reference figure for explaining the modification of one embodiment of the present invention. 本発明の一実施形態によるブレード検査システムが備える制御用コンピュータのCPUの機能構成を示すブロック図である。It is a block diagram which shows the function structure of CPU of the control computer with which the blade test | inspection system by one Embodiment of this invention is provided.

以下、図面を参照し、本発明の実施形態を説明する。図1は、本実施形態によるブレード検査システムの構成を示している。ジェットエンジン1内には、検査対象物である複数のタービンブレード10(もしくはコンプレッサーブレード)が所定の間隔で周期的に配置されている。また、ジェットエンジン1には、タービンブレード10を回転方向Aに所定の速度で回転させるターニングツール2が接続されている。本実施形態では、タービンブレード10の画像を取り込んでいる間は常にタービンブレード10を回転させた状態にしている。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 shows a configuration of a blade inspection system according to the present embodiment. In the jet engine 1, a plurality of turbine blades 10 (or compressor blades), which are inspection objects, are periodically arranged at predetermined intervals. Further, a turning tool 2 that rotates the turbine blade 10 in the rotation direction A at a predetermined speed is connected to the jet engine 1. In the present embodiment, the turbine blade 10 is always rotated while an image of the turbine blade 10 is captured.

本実施形態では、タービンブレード10の画像を取得するため、内視鏡装置3(本発明の画像処理装置に対応)が用いられる。ジェットエンジン1の内部には、内視鏡装置3の内視鏡挿入部20が挿入されており、この内視鏡挿入部20により、回転しているタービンブレード10の映像が取り込まれる。また、内視鏡装置3には、タービンブレード10の3次元計測を行うための3D計測ソフトが記憶されている。   In the present embodiment, an endoscope apparatus 3 (corresponding to the image processing apparatus of the present invention) is used to acquire an image of the turbine blade 10. An endoscope insertion portion 20 of the endoscope device 3 is inserted inside the jet engine 1, and an image of the rotating turbine blade 10 is captured by the endoscope insertion portion 20. The endoscope apparatus 3 stores 3D measurement software for performing three-dimensional measurement of the turbine blade 10.

図2は内視鏡装置3の構成を示している。内視鏡装置3は、内視鏡挿入部20、内視鏡装置本体21、モニタ22、およびリモコン(リモートコントローラ)23から構成されている。内視鏡挿入部20の先端には、撮像光学系30aおよび撮像素子30bが内蔵されている。また、内視鏡装置本体21には、画像信号処理装置(CCU)31、光源32、湾曲制御ユニット33、および制御用コンピュータ34が内蔵されている。   FIG. 2 shows the configuration of the endoscope apparatus 3. The endoscope apparatus 3 includes an endoscope insertion unit 20, an endoscope apparatus main body 21, a monitor 22, and a remote controller (remote controller) 23. An imaging optical system 30a and an imaging element 30b are built in the distal end of the endoscope insertion unit 20. The endoscope apparatus body 21 includes an image signal processing unit (CCU) 31, a light source 32, a bending control unit 33, and a control computer 34.

内視鏡挿入部20において、撮像光学系30aは被写体(被検体)からの光を集光し、撮像素子30bの撮像面上に被写体像を結像する。撮像素子30bは、被写体像を光電変換して撮像信号を生成する。撮像素子30bから出力された撮像信号は画像信号処理装置31に入力される。   In the endoscope insertion unit 20, the imaging optical system 30a collects light from the subject (subject) and forms a subject image on the imaging surface of the imaging element 30b. The image sensor 30b photoelectrically converts the subject image to generate an image signal. The imaging signal output from the imaging element 30 b is input to the image signal processing device 31.

内視鏡装置本体21において、画像信号処理装置31は、撮像素子30bからの撮像信号をNTSC信号等の映像信号に変換して制御用コンピュータ34に供給し、さらに必要に応じてアナログビデオ出力として、外部に出力する。   In the endoscope apparatus body 21, the image signal processing device 31 converts the image signal from the image sensor 30 b into a video signal such as an NTSC signal and supplies it to the control computer 34, and further, as an analog video output if necessary. Output to the outside.

光源32は、光ファイバ等を通じて内視鏡挿入部20の先端に接続されており、光を外部に照射することができる。湾曲制御ユニット33は内視鏡挿入部20の先端と接続されており、先端を上下左右に湾曲させることができる。光源32および湾曲制御ユニット33の制御は、制御用コンピュータ34によって行われる。   The light source 32 is connected to the distal end of the endoscope insertion portion 20 through an optical fiber or the like, and can irradiate light to the outside. The bending control unit 33 is connected to the distal end of the endoscope insertion unit 20 and can bend the distal end up and down and left and right. The light source 32 and the bending control unit 33 are controlled by the control computer 34.

制御用コンピュータ34は、RAM34a、ROM34b、CPU34c、外部インターフェースとしてネットワークI/F34d、RS232C I/F34e、カード I/F34fから構成されている。RAM34aは、ソフトウェア動作に必要な画像情報等のデータを一時記憶するために使用される。ROM34bには、内視鏡装置3を制御するための一連のソフトウェア(プログラム)が記憶されており、後述する3D計測ソフトもROM34b内に記憶される。CPU34cは、ROM34bに記憶されているソフトウェアの命令コードに従って、RAM34aに記憶されたデータを用いて各種制御のための演算等を実行する。   The control computer 34 includes a RAM 34a, a ROM 34b, a CPU 34c, a network I / F 34d, an RS232C I / F 34e, and a card I / F 34f as external interfaces. The RAM 34a is used for temporarily storing data such as image information necessary for software operation. The ROM 34b stores a series of software (programs) for controlling the endoscope apparatus 3, and 3D measurement software described later is also stored in the ROM 34b. The CPU 34c executes various control operations and the like using the data stored in the RAM 34a according to the software instruction code stored in the ROM 34b.

ネットワークI/F34dは、外部PCとLANケーブルによって接続するためのインターフェースであり、外部PCに対して、画像信号処理装置31から出力された映像情報を展開することができる。RS232C I/F34eは、リモコン23と接続するためのインターフェースであり、このリモコン23をユーザが操作することによって、内視鏡装置3の各種動作を制御することができる。カード I/F34fは、記録媒体である各種メモリカード50を自由に着脱できるようになっている。メモリカード50を装着することにより、CPU34cの制御によって、メモリカード50に記憶されている画像情報等のデータを取り込み、あるいは画像情報等のデータをメモリカード50に記録することができる。   The network I / F 34d is an interface for connecting to an external PC through a LAN cable, and can develop video information output from the image signal processing device 31 to the external PC. The RS232C I / F 34e is an interface for connecting to the remote controller 23, and various operations of the endoscope apparatus 3 can be controlled by the user operating the remote controller 23. The card I / F 34f can freely attach and detach various memory cards 50 that are recording media. When the memory card 50 is attached, data such as image information stored in the memory card 50 can be taken in or recorded in the memory card 50 under the control of the CPU 34c.

本実施形態によるブレード検査システムの構成の変形例として、図3に示す構成を用いてもよい。本変形例では、内視鏡装置3にビデオ端子ケーブル4およびビデオキャプチャカード5が接続されており、これによって、内視鏡装置3が取り込んだ映像をPC6(本発明の画像処理装置に対応)にも取り込ませることが可能となっている。PC6は、図3ではノート型PCとして描かれているが、デスクトップ型のPC等でもよい。PC6には、タービンブレード10の3次元計測を行うための3D計測ソフトが記憶されている。   As a modification of the configuration of the blade inspection system according to the present embodiment, the configuration shown in FIG. 3 may be used. In this modification, the video terminal cable 4 and the video capture card 5 are connected to the endoscope apparatus 3, whereby the video captured by the endoscope apparatus 3 is displayed on the PC 6 (corresponding to the image processing apparatus of the present invention). Can also be incorporated into The PC 6 is illustrated as a notebook PC in FIG. 3, but may be a desktop PC or the like. The PC 6 stores 3D measurement software for performing three-dimensional measurement of the turbine blade 10.

さらに、図3では、PC6への映像の取り込みにビデオ端子ケーブル4およびビデオキャプチャカード5を用いているが、図4に示すようにLANケーブル7を用いてもよい。内視鏡装置3は、取り込まれた映像をLANネットワーク上に展開することのできるネットワークI/F34dを備えている。そして、LANケーブル7を通じて、PC6に映像を取りませることができる。   Further, in FIG. 3, the video terminal cable 4 and the video capture card 5 are used for capturing video to the PC 6, but a LAN cable 7 may be used as shown in FIG. The endoscope apparatus 3 includes a network I / F 34d that can develop the captured video on the LAN network. Then, the video can be captured by the PC 6 through the LAN cable 7.

図5はPC6の構成を示している。PC6はPC本体24およびモニタ25から構成されている。PC本体24には、制御用コンピュータ35が内蔵されている。制御用コンピュータ35は、RAM35a、HDD(ハードディスクドライブ)35b、CPU35c、外部インターフェースとして、ネットワークI/F35d、USB I/F35eから構成されている。制御用コンピュータ35はモニタ25に接続されており、映像情報およびソフトウェアの画面等がモニタ25に表示される。   FIG. 5 shows the configuration of the PC 6. The PC 6 includes a PC main body 24 and a monitor 25. A control computer 35 is built in the PC main body 24. The control computer 35 includes a RAM 35a, an HDD (hard disk drive) 35b, a CPU 35c, and a network I / F 35d and a USB I / F 35e as external interfaces. The control computer 35 is connected to the monitor 25, and video information, a software screen, and the like are displayed on the monitor 25.

RAM35aは、ソフトウェア動作に必要な画像情報等のデータを一時記憶するために使用される。HDD35bには、内視鏡装置を制御するために一連のソフトウェアが記憶されており、3D計測ソフトもHDD35b内に記憶される。また、本実施形態では、タービンブレード10の画像を保存する保存用フォルダはHDD35b内に設定される。CPU35cは、HDD35bに記憶されているソフトウェアの命令コードに従って、RAM35aに記憶されたデータを用いて各種制御のための演算等を実行する。   The RAM 35a is used for temporarily storing data such as image information necessary for software operation. A series of software is stored in the HDD 35b to control the endoscope apparatus, and 3D measurement software is also stored in the HDD 35b. In the present embodiment, the storage folder for storing the image of the turbine blade 10 is set in the HDD 35b. The CPU 35c executes various control operations and the like using the data stored in the RAM 35a in accordance with the software instruction code stored in the HDD 35b.

ネットワークI/F35dは、内視鏡装置3とPC6をLANケーブル7によって接続するためのインターフェースであり、内視鏡装置3からLAN出力された映像情報をPC6に入力することができる。USB I/F35eは、内視鏡装置3とPC6をビデオキャプチャカード5によって接続するためのインターフェースであり、内視鏡装置3からアナログビデオ出力された映像情報をPC6に入力することができる。   The network I / F 35d is an interface for connecting the endoscope apparatus 3 and the PC 6 by the LAN cable 7, and can input the video information output from the endoscope apparatus 3 to the PC 6 into the PC 6. The USB I / F 35 e is an interface for connecting the endoscope apparatus 3 and the PC 6 by the video capture card 5, and can input video information output from the endoscope apparatus 3 as analog video to the PC 6.

図3および図4に示すブレード検査システムでは、図1に示すブレード検査システムと同様の効果を得ることができる。特に、内視鏡装置の性能がPCよりも劣っており、内視鏡装置の動作速度等が十分でない場合等に、図3および図4に示すブレード検査システムは有効である。   The blade inspection system shown in FIGS. 3 and 4 can obtain the same effects as the blade inspection system shown in FIG. In particular, the blade inspection system shown in FIGS. 3 and 4 is effective when the performance of the endoscope apparatus is inferior to that of the PC and the operation speed of the endoscope apparatus is not sufficient.

次に、3D計測ソフトの画面を説明する。図6は、3D計測ソフトのメインウィンドウを示している。図6に示すメインウィンドウ600は、ユーザが3D計測ソフトを起動した際にモニタ22に表示される。CPU34cは、3D計測ソフトに従って、メインウィンドウ600内の各種CUIの操作に基づく処理を行う。   Next, the screen of the 3D measurement software will be described. FIG. 6 shows a main window of the 3D measurement software. A main window 600 shown in FIG. 6 is displayed on the monitor 22 when the user starts 3D measurement software. The CPU 34c performs processing based on various CUI operations in the main window 600 according to 3D measurement software.

メインウィンドウ600の表示は、CPU34cによる制御に従って行われる。CPU34cは、メインウィンドウ600を表示するためのグラフィック画像信号(表示信号)を生成し、モニタ22へ出力する。また、内視鏡装置3に取り込まれた映像(以下、計測画像と記載)をメインウィンドウ600上に重畳表示する場合には、CPU34cは、画像信号処理装置31から取り込んだ画像データをグラフィック画像信号に重畳する処理を行い、処理後の信号(表示信号)をモニタ22へ出力する。   The display of the main window 600 is performed according to control by the CPU 34c. The CPU 34 c generates a graphic image signal (display signal) for displaying the main window 600 and outputs it to the monitor 22. When the video captured by the endoscope apparatus 3 (hereinafter referred to as a measurement image) is displayed in a superimposed manner on the main window 600, the CPU 34c converts the image data captured from the image signal processing apparatus 31 into a graphic image signal. And the processed signal (display signal) is output to the monitor 22.

また、メインウィンドウ600上のGUIの表示状態を更新する場合、CPU34cは、更新後のメインウィンドウ600に対応したグラフィック画像信号を生成し、上記と同様の処理を行う。メインウィンドウ600以外のウィンドウの表示に係る処理も上記と同様である。以下、メインウィンドウ600等を表示(更新も含む)するためにCPU34cがグラフィック画像信号を生成する処理のことを、メインウィンドウ600等を表示するための処理と記載する。   When updating the GUI display state on the main window 600, the CPU 34c generates a graphic image signal corresponding to the updated main window 600 and performs the same processing as described above. Processing related to display of windows other than the main window 600 is the same as described above. Hereinafter, the process in which the CPU 34c generates a graphic image signal for displaying (including updating) the main window 600 and the like is referred to as the process for displaying the main window 600 and the like.

ユーザは、GUI(グラフィカルユーザインタフェース)機能を利用して、リモコン23を介してメインウィンドウ600を操作し、メインウィンドウ600に重畳表示されるカーソルCを移動させ、クリック等の指示を入力することにより、メインウィンドウ600の各種GUIの操作を行うことができる。以下、各種GUIの機能を説明する。   By using the GUI (graphical user interface) function, the user operates the main window 600 via the remote controller 23, moves the cursor C superimposed on the main window 600, and inputs an instruction such as a click. Various GUI operations on the main window 600 can be performed. Hereinafter, functions of various GUIs will be described.

メインウィンドウ600の右上部には、[ファイル選択]ボックス610が配置されている。また、メインウィンドウ600の左上部には[計測画像]ボックス611が配置されている。[ファイル選択]ボックス610は、[計測画像]ボックス611に表示される計測画像の選択、および[計測画像]ボックス611に表示される3Dオブジェクトに対応したCADデータの選択を行うためのボックスである。   In the upper right part of the main window 600, a [File selection] box 610 is arranged. In addition, a [Measurement Image] box 611 is arranged in the upper left portion of the main window 600. [File selection] box 610 is a box for selecting a measurement image displayed in [Measurement image] box 611 and selecting CAD data corresponding to a 3D object displayed in [Measurement image] box 611. .

CADデータは、CADを利用して予め算出されたタービンブレード10の3次元形状を表すデータである。CADデータの形式には、STL(Standard Triangulated Language)形式等を用いる。3Dオブジェクトは、CADデータの内容をもとに構築されたCG物体である。[ファイル選択]ボックス610内のGUIおよび操作の詳細については、記載しない。   The CAD data is data representing the three-dimensional shape of the turbine blade 10 calculated in advance using CAD. As the format of the CAD data, an STL (Standard Triangulated Language) format or the like is used. A 3D object is a CG object constructed based on the contents of CAD data. Details of the GUI and operation in the [Select File] box 610 are not described.

[計測画像]ボックス611は、計測対象物であるタービンブレード10を撮像して得られた計測画像IMGを表示し、計測画像IMG上に3DオブジェクトOBを重畳表示するためのボックスである。後述するように、ユーザは[計測画像]ボックス611の操作を行うことにより、カメラポーズの変更、参照点の指定、計測点の指定等を行う。   The [Measurement Image] box 611 is a box for displaying a measurement image IMG obtained by imaging the turbine blade 10 that is a measurement object, and displaying a 3D object OB superimposed on the measurement image IMG. As will be described later, the user operates the [Measurement Image] box 611 to change the camera pose, specify the reference point, specify the measurement point, and the like.

メインウィンドウ600の左下部には、[表示設定]ボックス620が配置されている。[表示設定]ボックス620内には、[計測画像]ボックス611に表示された3DオブジェクトOBの表示設定に関するGUIが配置されている。[表示設定]ボックス620内の各GUIの機能は以下の通りである。   In the lower left part of the main window 600, a [Display setting] box 620 is arranged. In the [Display setting] box 620, a GUI related to the display setting of the 3D object OB displayed in the [Measurement image] box 611 is arranged. The function of each GUI in the [Display Settings] box 620 is as follows.

[透過率]バー621は、3Dオブジェクトの表示透過率を設定するためのバーである。[透過率]バー621は水平方向(横方向)に移動(スライド)可能になっており、ユーザが[透過率]バー621を移動させることで、3Dオブジェクトの表示透過率が変化する。   [Transmittance] bar 621 is a bar for setting the display transmittance of the 3D object. The [Transmittance] bar 621 can be moved (slid) in the horizontal direction (lateral direction), and when the user moves the [Transmittance] bar 621, the display transmittance of the 3D object changes.

例えば、透過率が大きく設定された場合、3DオブジェクトOBは透明に近い透過率で表示され、透過率が小さく設定された場合、3DオブジェクトOBは透過されずに表示される。後述するように、[計測画像]ボックス611において、ユーザが計測画像IMGに参照点を指定する際には、3DオブジェクトOBの透過率を大きく設定することで、計測画像IMGを見やすくすると良い。また、ユーザが3DオブジェクトOBに参照点を指定する際には、3DオブジェクトOBの透過率を小さく設定することで、3DオブジェクトOBを見やすくすると良い。   For example, when the transmittance is set large, the 3D object OB is displayed with a transmittance close to transparency, and when the transmittance is set small, the 3D object OB is displayed without being transmitted. As will be described later, when the user designates a reference point in the measurement image IMG in the [Measurement Image] box 611, it is preferable to make the measurement image IMG easier to see by setting the transmittance of the 3D object OB large. Further, when the user designates a reference point for the 3D object OB, it is preferable to make the 3D object OB easier to see by setting the transmittance of the 3D object OB small.

[表示方法]ラジオボタン622は、3DオブジェクトOBの表示方法を設定するためのラジオボタンである。[表示方法]ラジオボタン622には、「シェーディング」と「ワイヤーフレーム」の2つの設定項目がある。「シェーディング」が選択された場合、3DオブジェクトOBは、ワイヤーフレームおよび表面が塗りつぶされた状態で表示され、「ワイヤーフレーム」が選択された場合、図6のように、3DオブジェクトOBはワイヤーフレームのみの状態で表示される。   [Display method] radio button 622 is a radio button for setting the display method of 3D object OB. The “display method” radio button 622 has two setting items “shading” and “wire frame”. When “shading” is selected, the 3D object OB is displayed with the wire frame and the surface being filled. When “wire frame” is selected, the 3D object OB is only a wire frame as shown in FIG. Is displayed in the state.

[表示方法]ラジオボタン623は、3DオブジェクトOBの表示色を設定するためのラジオボタンである。[表示方法]ラジオボタン623には、「水色」と「黄色」の2つの設定項目がある。[表示方法]ラジオボタン623の設定によって、3DオブジェクトOBの表示色を切り替えることができる。   [Display method] radio button 623 is a radio button for setting the display color of 3D object OB. The “display method” radio button 623 has two setting items “light blue” and “yellow”. [Display method] The display color of the 3D object OB can be switched by setting the radio button 623.

[移動方向]ラジオボタン624は、カメラポーズの移動方向を設定するためのラジオボタンである。カメラポーズは、3DオブジェクトOBの姿勢(ポーズ)、すなわち3DオブジェクトOBをどの方向、どの位置から見ているかを示すパラメータである。[移動方向]ラジオボタン624には、「パン/チルト」と「ロール/ズーム」の2つの設定項目がある。「パン/チルト」が選択された場合、[計測画像]ボックス611において、ユーザがカーソルCを上下左右に移動させることで、カメラポーズをパン・チルト方向に回転させることができる。また、「ロール/ズーム」が選択された場合、同様の操作で、カメラポーズをロール・ズーム方向に回転させることができる。   [Moving direction] radio button 624 is a radio button for setting the moving direction of the camera pose. The camera pose is a parameter indicating the orientation (pose) of the 3D object OB, that is, the direction and position from which the 3D object OB is viewed. [Movement direction] radio button 624 has two setting items of “pan / tilt” and “roll / zoom”. When “pan / tilt” is selected, the camera pose can be rotated in the pan / tilt direction by moving the cursor C up / down / left / right in the [Measurement Image] box 611 by the user. When “Roll / Zoom” is selected, the camera pose can be rotated in the roll / zoom direction by the same operation.

[計測画像]ボックス611の下側には、[現在位置]ボックス630が配置されている。[現在位置]ボックス630は、カーソル位置における3DオブジェクトOBの表面座標をリアルタイムで表示するためのボックスである。3DオブジェクトOBの表面座標は空間座標系の座標としてmm単位で示される。[計測画像]ボックス611において、ユーザがカーソルCを移動させることで、[現在位置]ボックス630の値もリアルタイムに変更される。例えば、カーソルCが3DオブジェクトOB上に位置する場合、3DオブジェクトOBの表面座標が算出され、[現在位置]ボックス630に表示される。カーソルCが3DオブジェクトOB上に位置しない場合は、[現在位置]ボックス630に「null」と表示される。3DオブジェクトOBの表面座標の算出方法については、図26〜図29を用いて後述する。   Below the [Measurement Image] box 611, a [Current Position] box 630 is arranged. [Current position] box 630 is a box for displaying the surface coordinates of 3D object OB at the cursor position in real time. The surface coordinates of the 3D object OB are indicated in mm as coordinates in the spatial coordinate system. When the user moves the cursor C in the [Measurement Image] box 611, the value in the [Current Position] box 630 is also changed in real time. For example, when the cursor C is positioned on the 3D object OB, the surface coordinates of the 3D object OB are calculated and displayed in the [current position] box 630. When the cursor C is not positioned on the 3D object OB, “null” is displayed in the “current position” box 630. A method for calculating the surface coordinates of the 3D object OB will be described later with reference to FIGS.

[現在位置]ボックス630の下側には、[カメラポーズ]ボックス640が配置されている。[カメラポーズ]ボックス640は、カメラポーズをリアルタイムで表示するためのボックスである。ユーザがカメラポーズを変更することで、[カメラポーズ]ボックス640の値がアルタイムに変更される。カメラポーズは、空間座標系の座標としてmm単位で示される。   Below the [Current Position] box 630, a [Camera Pose] box 640 is arranged. [Camera Pose] box 640 is a box for displaying a camera pose in real time. When the user changes the camera pose, the value in the [Camera Pose] box 640 is changed to real time. The camera pose is indicated in mm as coordinates in the spatial coordinate system.

[カメラポーズ]ボックス640の右側には、[シフト位置]ボックス650が配置されている。[シフト位置]ボックス650は、[計測画像]ボックス611における3DオブジェクトOBのシフト位置を表示するためのボックスである。3DオブジェクトOBのシフト位置は、平面座標系の座標としてpixel単位で示される。   On the right side of the [Camera Pose] box 640, a [Shift Position] box 650 is arranged. [Shift position] box 650 is a box for displaying the shift position of 3D object OB in [Measurement image] box 611. The shift position of the 3D object OB is indicated in pixels as coordinates in the plane coordinate system.

3DオブジェクトOBは[計測画像]ボックス611の中央部に表示されており、カメラポーズが変更されても表示位置は変化しない。しかし、計測画像IMGに写った被検体は、必ずしも画像の中央部に位置しているわけではない。そのため、計測画像IMGと3Dオブジェクト3Dとをマッチングさせる処理である3Dマッチング処理の実行後、3DオブジェクトOBは[計測画像]ボックス611の中央部ではなく、計測画像に写った被検体の上に位置しているべきである。   The 3D object OB is displayed in the center of the [Measurement Image] box 611, and the display position does not change even when the camera pose is changed. However, the subject shown in the measurement image IMG is not necessarily located at the center of the image. Therefore, after the execution of the 3D matching process, which is a process for matching the measurement image IMG and the 3D object 3D, the 3D object OB is not positioned at the center of the [Measurement Image] box 611 but on the subject reflected in the measurement image. Should be.

上記のシフト位置は、[計測画像]ボックス611の中央部からの3DオブジェクトOBの相対位置を示している。以下、平面座標系におけるシフト位置の移動方向をシフト方向と記載する。ユーザが手動で任意にシフト位置を変更することはできない。シフト位置は、3Dマッチング処理の実行後に、CPU34cが算出するものである。   The shift position indicates the relative position of the 3D object OB from the center of the [Measurement Image] box 611. Hereinafter, the moving direction of the shift position in the plane coordinate system is referred to as a shift direction. The user cannot manually change the shift position arbitrarily. The shift position is calculated by the CPU 34c after executing the 3D matching process.

[ファイル選択]ボックス610の下側には、[マッチング/計測]ボックス660が配置されている。[マッチング/計測]ボックス660内には、3Dマッチング処理および計測に関するGUIが配置されている。[マッチング/計測]ボックス660内の各GUIの機能は以下の通りである。   A “matching / measurement” box 660 is arranged below the “file selection” box 610. In the [matching / measurement] box 660, GUIs related to 3D matching processing and measurement are arranged. The function of each GUI in the [matching / measurement] box 660 is as follows.

[カメラポーズ]ボタン661aは、カメラポーズを変更するためのボタンである。[カメラポーズ]ボタン661aが押下された後、[計測画像]ボックス611aにおいて、ユーザがカーソルCを上下左右に移動させることで、カメラポーズが変更可能となる。また、[カメラポーズ]ボタン661aの右側には、[リセット]ボタン661bが配置されており、[リセット]ボタン661bが押下されると、カメラポーズが初期値に設定される。   [Camera pause] button 661a is a button for changing the camera pause. After the [Camera Pause] button 661a is pressed, the user can move the cursor C up, down, left, and right in the [Measurement Image] box 611a to change the camera pose. A [Reset] button 661b is arranged on the right side of the [Camera Pause] button 661a. When the [Reset] button 661b is pressed, the camera pose is set to an initial value.

[参照点(計測)]ボタン662aは、計測画像IMGの参照点(計測)を指定するためのボタンである。参照点(計測)とは、CPU34cが3Dマッチング処理を実行する際の基準となる計測画像IMG上の点のことである。[参照点(計測)]ボタン662aが押下された後、[計測画像]ボックス611において、ユーザがカーソルCを移動させて、指定したい位置でクリック等を行うことで、計測画像IMGに写った被検体に対して参照点(計測)を指定することができる。参照点(計測)は、平面座標系の座標としてpixel単位で示される。また、[参照点(計測)]ボタン662aが押下されると、3DオブジェクトOBの表示透過率が自動的に大きく設定され、計測画像IMGが見やすい状態となる。また、[参照点(計測)]ボタン662aの右側には、[クリア]ボタン662bが配置されており、[クリア]ボタン662bが押下されると、既に指定された参照点(計測)が全てクリアされ、指定前の状態となる。   The “reference point (measurement)” button 662a is a button for designating a reference point (measurement) of the measurement image IMG. The reference point (measurement) is a point on the measurement image IMG serving as a reference when the CPU 34c executes the 3D matching process. After the “reference point (measurement)” button 662a is pressed, in the “measurement image” box 611, the user moves the cursor C and clicks or the like at the position to be designated, so that the object shown in the measurement image IMG is displayed. A reference point (measurement) can be designated for the specimen. The reference point (measurement) is indicated in pixels as coordinates in the plane coordinate system. In addition, when the [reference point (measurement)] button 662a is pressed, the display transmittance of the 3D object OB is automatically set to be large, and the measurement image IMG is easy to see. Further, a [Clear] button 662b is arranged on the right side of the [Reference point (measurement)] button 662a. When the [Clear] button 662b is pressed, all the reference points (measurement) that have already been specified are cleared. It will be in the state before specification.

[参照点(3D)]ボタン663aは、3DオブジェクトOBの参照点(3D)を指定するためのボタンである。参照点(3D)とは、参照点(計測)と同様に、CPU34cが3Dマッチング処理を実行する際の基準となる3Dオブジェクト上の点である。[参照点(3D)]ボタン663aが押下された後、[計測画像]ボックス611において、ユーザがカーソルCを移動させて、参照点(3D)を指定したい位置でクリック等の操作を行うことで、3DオブジェクトOBに対して参照点(3D)を指定することができる。参照点(3D)は、空間座標系の座標としてmm単位で示される。また、[参照点(3D)]ボタン663aが押下された後、3DオブジェクトOBの表示透過率が自動的に小さく設定され、3DオブジェクトOBが見やすい状態となる。また、[参照点(3D)]ボタン663aの右側には、[クリア]ボタン663bが配置されており、[クリア]ボタン663bが押下されると、既に指定された参照点(3D)が全てクリアされ、指定前の状態となる。   [Reference point (3D)] button 663a is a button for designating a reference point (3D) of the 3D object OB. The reference point (3D) is a point on the 3D object that serves as a reference when the CPU 34c executes the 3D matching process, similarly to the reference point (measurement). After the [Reference Point (3D)] button 663a is pressed, the user moves the cursor C in the [Measurement Image] box 611 and performs an operation such as clicking at a position where the reference point (3D) is desired to be specified. A reference point (3D) can be designated for the 3D object OB. The reference point (3D) is indicated in mm as coordinates in the spatial coordinate system. Further, after the “reference point (3D)” button 663a is pressed, the display transmittance of the 3D object OB is automatically set to be small, and the 3D object OB becomes easy to see. In addition, a [Clear] button 663b is arranged on the right side of the [Reference Point (3D)] button 663a. When the [Clear] button 663b is pressed, all the reference points (3D) that have already been specified are cleared. It will be in the state before specification.

[3Dマッチング]ボタン664は、3Dマッチング処理を実行するためのボタンである。[3Dマッチング]ボタン664が押下された後、ユーザが指定した2組の参照点(参照点(計測)と参照点(3D))に基づいて、CPU34cは3Dマッチング処理を実行する。このとき、CPU34cは、2組の参照点の位置がそれぞれ一致するように、3Dマッチング処理を行うことになる。3Dマッチング処理の結果、計測画像IMG内の被検体と3DオブジェクトOBとがほぼ一致するように表示され、計測画像IMG内の被検体と3DオブジェクトOBが計測に適した状態となる。   [3D matching] button 664 is a button for executing 3D matching processing. After the [3D matching] button 664 is pressed, the CPU 34c executes 3D matching processing based on two sets of reference points (reference point (measurement) and reference point (3D)) designated by the user. At this time, the CPU 34c performs the 3D matching process so that the positions of the two sets of reference points match each other. As a result of the 3D matching process, the subject in the measurement image IMG and the 3D object OB are displayed so as to substantially match, and the subject in the measurement image IMG and the 3D object OB are in a state suitable for measurement.

[計測]ボタン665aは、計測点を指定するためのボタンである。計測点とは、計測を行う際の基準となる点である。[計測]ボタン665aが押下された後、[計測画像]ボックス611において、ユーザがカーソルCを移動させて、計測点を指定したい位置でクリック等の操作を行うことで、3DオブジェクトOBに対して計測点を指定することができる。CPU34cは、指定された計測点に基づいて、計測処理を実行する。また、[計測]ボタン665aの右側には、[クリア]ボタン665bが配置されており、[クリア]ボタン665bが押下されると、既に指定された計測点が全てクリアされ、指定前の状態となる。   [Measurement] button 665a is a button for designating a measurement point. A measurement point is a point used as a reference when performing measurement. After the [Measurement] button 665a is pressed, the user moves the cursor C in the [Measurement Image] box 611 and performs an operation such as clicking at a position where a measurement point is desired to be specified. Measurement points can be specified. The CPU 34c executes measurement processing based on the designated measurement point. Further, a [Clear] button 665b is arranged on the right side of the [Measurement] button 665a. When the [Clear] button 665b is pressed, all the measurement points that have already been designated are cleared, Become.

[マッチング/計測]ボックス660の下側には、[計測結果]ボックス670が配置されている。[計測結果]ボックス670は、計測結果を表示するためのボックスである。[計測画像]ボックス611においてユーザが計測点を指定すると、指定された計測点に基づいて計測処理が実行され、[計測結果]ボックス670に計測結果が表示される。   Below the “matching / measurement” box 660, a “measurement result” box 670 is arranged. [Measurement result] box 670 is a box for displaying the measurement result. When the user designates a measurement point in the [Measurement Image] box 611, measurement processing is executed based on the designated measurement point, and the measurement result is displayed in the [Measurement Result] box 670.

メインウィンドウ600の右下部には、[終了]ボタン680が配置されている。[終了]ボタン680は、3D計測ソフトを終了するためのボタンである。[終了]ボタン680が押下されると、全てのソフト動作が終了し、メインウィンドウ600が閉じる(非表示となる)。   In the lower right part of the main window 600, an [End] button 680 is arranged. [Exit] button 680 is a button for ending the 3D measurement software. When the [Exit] button 680 is pressed, all the software operations are completed and the main window 600 is closed (hidden).

次に、図7を用いて、3Dオブジェクトとカメラポーズとの関係について説明する。図7に示すように、実空間に対応する仮想的な空間上に3DオブジェクトOB1および視点700がある。3DオブジェクトOB1の位置は固定されているが、視点700の位置はユーザによって自由に変更される。3DオブジェクトOB1の重心位置には視線中心701があり、視点700から視線方向702に伸びる直線は、常にこの視線中心701を向いている。視線中心701の位置は固定されている。   Next, the relationship between the 3D object and the camera pose will be described with reference to FIG. As shown in FIG. 7, the 3D object OB1 and the viewpoint 700 are in a virtual space corresponding to the real space. Although the position of the 3D object OB1 is fixed, the position of the viewpoint 700 is freely changed by the user. The center of gravity of the 3D object OB1 has a line-of-sight center 701, and a straight line extending from the viewpoint 700 in the line-of-sight direction 702 always faces the line-of-sight center 701. The position of the line-of-sight center 701 is fixed.

3DオブジェクトOB1と視点700との間には、矩形状のスクリーン平面703がある。スクリーン平面703は[計測画像]ボックス611に相当するものである。スクリーン平面703の縦方向および横方向のサイズは固定値である。3DオブジェクトOB1をスクリーン平面703に投影した投影像が、[計測画像]ボックス611に表示される3DオブジェクトOBである。   Between the 3D object OB1 and the viewpoint 700, there is a rectangular screen plane 703. The screen plane 703 corresponds to the “Measurement Image” box 611. The vertical and horizontal sizes of the screen plane 703 are fixed values. A projection image obtained by projecting the 3D object OB1 onto the screen plane 703 is the 3D object OB displayed in the [Measurement Image] box 611.

スクリーン平面703は、視線方向702と常に垂直であり、視点700から視線方向702に伸びる直線は、常にスクリーン平面703の中心704を通る。視点700からスクリーン平面703の中心704までの距離706は固定値であるが、視点700から視線中心701までの距離は、ユーザによって自由に変更される。   The screen plane 703 is always perpendicular to the line-of-sight direction 702, and a straight line extending from the viewpoint 700 in the line-of-sight direction 702 always passes through the center 704 of the screen plane 703. The distance 706 from the viewpoint 700 to the center 704 of the screen plane 703 is a fixed value, but the distance from the viewpoint 700 to the line-of-sight center 701 can be freely changed by the user.

スクリーン平面703の向いている方向は、上方向ベクトル705によって示される。この上方向ベクトル705は、スクリーン平面703と平行であり、スクリーン平面703の上方向がどの方向かを表す単位ベクトルである。   The direction in which the screen plane 703 is directed is indicated by an upward vector 705. The upward vector 705 is a unit vector that is parallel to the screen plane 703 and indicates which direction the upward direction of the screen plane 703 is.

図7に示した項目のうち、カメラポーズを構成するパラメータは、視点位置、視線中心位置、上方向ベクトルの3つである。以下では、図8〜図10を用いて、カメラポーズを変更したときの3Dオブジェクトとカメラポーズとの関係について説明する。   Among the items shown in FIG. 7, there are three parameters constituting the camera pose: a viewpoint position, a line-of-sight center position, and an upward vector. The relationship between the 3D object and the camera pose when the camera pose is changed will be described below with reference to FIGS.

図8(a)は、カメラポーズをパン・チルト方向に変更した場合の3Dオブジェクトとカメラポーズとの関係を示している。パン方向とは、視点800から視線中心801までの距離を固定したまま、視点800を上方向ベクトル802と垂直に移動させた場合の方向(パン方向803)である。チルト方向とは、視点800から視線中心801までの距離を固定したまま、視点800を上方向ベクトル802と平行に移動させた場合の方向(チルト方向804)である。図8(a)のように、カメラポーズをパン・チルト方向に変更すると、図8(b)のように、スクリーン平面805に投影される3DオブジェクトOBは、上下左右の各方向に回転することがわかる。   FIG. 8A shows the relationship between the 3D object and the camera pose when the camera pose is changed in the pan / tilt direction. The pan direction is a direction (pan direction 803) when the viewpoint 800 is moved perpendicularly to the upward vector 802 while the distance from the viewpoint 800 to the line-of-sight center 801 is fixed. The tilt direction is a direction (tilt direction 804) when the viewpoint 800 is moved in parallel with the upward vector 802 while the distance from the viewpoint 800 to the line-of-sight center 801 is fixed. When the camera pose is changed in the pan / tilt direction as shown in FIG. 8A, the 3D object OB projected on the screen plane 805 is rotated in the vertical and horizontal directions as shown in FIG. 8B. I understand.

図9(a)は、カメラポーズをロール方向に変更した場合の3Dオブジェクトとカメラポーズとの関係を示している。ロール方向とは、視点900の位置を固定したまま、視点900から視点中心901に向かう視点方向902の軸を中心に、スクリーン平面903を回転させた場合の方向(ロール方向904)である。図9(a)のように、カメラポーズをロール方向に変更すると、図9(b)のように、スクリーン平面903に投影される3DオブジェクトOBは、スクリーン平面903の中心を軸として回転することがわかる。   FIG. 9A shows the relationship between the 3D object and the camera pose when the camera pose is changed in the roll direction. The roll direction is a direction (roll direction 904) when the screen plane 903 is rotated around the axis of the viewpoint direction 902 from the viewpoint 900 toward the viewpoint center 901 while the position of the viewpoint 900 is fixed. When the camera pose is changed in the roll direction as shown in FIG. 9A, the 3D object OB projected on the screen plane 903 rotates around the center of the screen plane 903 as shown in FIG. 9B. I understand.

図10(a)は、カメラポーズをズーム方向に変更した場合の3Dオブジェクトとカメラポーズとの関係を示している。ズーム方向とは、上方向ベクトル1000を固定したまま、視点1001を視線方向1002と平行に移動させた場合の方向(ズーム方向1003)である。図10(a)のように、カメラポーズをズーム方向に変更すると、図10(b)のように、スクリーン平面1004に投影される3DオブジェクトOBは、拡大・縮小することがわかる。   FIG. 10A shows the relationship between the 3D object and the camera pose when the camera pose is changed in the zoom direction. The zoom direction is a direction (zoom direction 1003) when the viewpoint 1001 is moved in parallel with the line-of-sight direction 1002 while the upward vector 1000 is fixed. As shown in FIG. 10A, when the camera pose is changed in the zoom direction, the 3D object OB projected on the screen plane 1004 is enlarged or reduced as shown in FIG. 10B.

上記の説明の通り、カメラポーズが変更されると、スクリーン平面の位置・方向が変化する。それに伴い、スクリーン平面に投影される3Dオブジェクトの表示も変化し、その結果、[計測画像]ボックス611に表示される3Dオブジェクトの表示も変化することになる。CPU34cは、ユーザによってリモコン23を介して入力されるカメラポーズの変更指示を検出し、その変更指示に応じて、3Dオブジェクトを[計測画像]ボックス611に表示するための処理を行う。   As described above, when the camera pose is changed, the position / direction of the screen plane changes. Accordingly, the display of the 3D object projected on the screen plane also changes, and as a result, the display of the 3D object displayed in the [Measurement Image] box 611 also changes. The CPU 34c detects a camera pose change instruction input by the user via the remote controller 23, and performs processing for displaying the 3D object in the [Measurement Image] box 611 in accordance with the change instruction.

次に、図11を用いて、3D計測ソフトの動作の流れを説明する。以下では、メインウィンドウ600における全てのGUIに関する動作ではなく、一部のGUIに関する動作のみ説明するものとする。具体的には、[計測画像]ボックス611、[カメラポーズ]ボタン661a、[参照点(計測)]ボタン662a、[参照点(3D)]ボタン663a、[3Dマッチング]ボタン664、[計測]ボタン665a、[計測結果]ボックス670、[終了]ボタン680に関する動作は説明するが、その他のGUIに関する動作の説明は行わない。   Next, the operation flow of the 3D measurement software will be described with reference to FIG. In the following description, not only operations related to all GUIs in the main window 600 but only operations related to some GUIs will be described. Specifically, [Measurement Image] box 611, [Camera Pose] button 661a, [Reference Point (Measurement)] button 662a, [Reference Point (3D)] button 663a, [3D Matching] button 664, [Measurement] button 665a, [Measurement Result] box 670, and [End] button 680 operations will be described, but other GUI operations will not be described.

ステップSAでは、CPU34cが3D計測ソフトを起動する。具体的には、ユーザがリモコン23を介して入力した起動指示に基づいて、CPU34cは、ROM34bに格納されている3D計測ソフトをRAM34aに読み込み、3D計測ソフトに従った動作を開始する。ステップSBでは、CPU34cが、メインウィンドウ600を表示するための処理を行う。   In step SA, the CPU 34c activates the 3D measurement software. Specifically, based on an activation instruction input by the user via the remote controller 23, the CPU 34c reads 3D measurement software stored in the ROM 34b into the RAM 34a and starts an operation according to the 3D measurement software. In step SB, the CPU 34c performs a process for displaying the main window 600.

ステップSCでは、CPU34cが初期化処理を行う。初期化処理とは、メインウィンドウ600内の各種GUIの初期状態を設定したり、RAM34aに記録された各種データの初期値を設定したりする処理である。初期化処理の詳細については、後述する。   In step SC, the CPU 34c performs an initialization process. The initialization process is a process of setting initial states of various GUIs in the main window 600 and setting initial values of various data recorded in the RAM 34a. Details of the initialization process will be described later.

ステップSDでは、CPU34cがカメラポーズ設定処理を行う。カメラポーズ設定処理とは、ユーザが入力した、カメラポーズを変更する指示に基づいて、[計測画像]ボックス611の計測画像内の被検体と3Dオブジェクトとを大まかにマッチングさせる処理である。カメラポーズ設定処理の詳細については、後述する。   In step SD, the CPU 34c performs camera pose setting processing. The camera pose setting process is a process for roughly matching the subject in the measurement image in the [Measurement Image] box 611 with the 3D object based on an instruction to change the camera pose input by the user. Details of the camera pose setting process will be described later.

ステップSEでは、CPU34cが参照点(計測)指定処理を行う。参照点(計測)指定処理とは、ユーザが入力した、[計測画像]ボックス611の計測画像に写った被検体上の位置を指定する指示に基づいて、参照点を指定(設定)する処理である。参照点(計測)指定処理の詳細については、後述する。   In step SE, the CPU 34c performs a reference point (measurement) designation process. The reference point (measurement) designation process is a process for designating (setting) a reference point based on an instruction for designating a position on the subject in the measurement image in the [Measurement Image] box 611 input by the user. is there. Details of the reference point (measurement) designation process will be described later.

ステップSFでは、CPU34cが参照点(3D)指定処理を行う。参照点(3D)指定処理とは、ユーザが入力した、[計測画像]ボックス611の3Dオブジェクト上の位置を指定する指示に基づいて、参照点を指定(設定)する処理である。参照点(3D)指定処理の詳細については、後述する。   In step SF, the CPU 34c performs a reference point (3D) designation process. The reference point (3D) designation process is a process for designating (setting) a reference point based on an instruction for designating a position on the 3D object in the [Measurement Image] box 611 input by the user. Details of the reference point (3D) designation process will be described later.

ステップSGでは、CPU34cが3Dマッチング処理を行う。3Dマッチング処理とは、ユーザが指定した2組の参照点(参照点(計測)・参照点(3D))に基づいて、[計測画像]ボックス611に表示された計測画像と3Dオブジェクトとをマッチングさせる処理である。3Dマッチング処理の詳細については、後述する。   In step SG, the CPU 34c performs 3D matching processing. The 3D matching process is to match the measurement image displayed in the [Measurement Image] box 611 with the 3D object based on two sets of reference points (reference point (measurement) / reference point (3D)) designated by the user. It is a process to make. Details of the 3D matching process will be described later.

ステップSHでは、CPU34cが計測処理を行う。計測処理とは、ユーザが入力した、[計測画像]ボックス611の3Dオブジェクト上の位置を指定する指示に基づいて、計測点を指定(設定)し、指定した計測点に基づいて、被検体のサイズを算出する処理である。計測処理の詳細については、後述する。   In step SH, the CPU 34c performs a measurement process. In the measurement process, a measurement point is designated (set) based on an instruction for designating a position on a 3D object in the [Measurement Image] box 611 input by the user, and based on the designated measurement point, the object is measured. This is a process of calculating the size. Details of the measurement process will be described later.

ステップSIでは、CPU34cが、ユーザによって[終了]ボタン680が押下されたかどうかを確認する。ユーザが[終了]ボタン680を押下した場合、処理はステップSJに移行する。また、ユーザが[終了]ボタン680を押下しなかった場合、処理はステップSDに移行する。ステップSJでは、CPU34cがメインウィンドウ600を非表示とし、3D計測ソフトの動作を終了する。   In step SI, the CPU 34c confirms whether or not the [Finish] button 680 has been pressed by the user. If the user presses the [END] button 680, the process proceeds to step SJ. If the user does not press the [Finish] button 680, the process proceeds to step SD. In step SJ, the CPU 34c hides the main window 600 and ends the operation of the 3D measurement software.

次に、図12を用いて、ステップSCの初期化処理の動作の流れを説明する。ステップSC1では、CPU34cが、メモリカード50に記録された所定の計測画像ファイルおよびCADデータをRAM34aに読み込む。ステップSC2では、CPU34cが、読み込まれたCADデータに基づいて、カメラポーズ(初期値)を算出する。   Next, the operation flow of the initialization process in step SC will be described with reference to FIG. In step SC1, the CPU 34c reads a predetermined measurement image file and CAD data recorded on the memory card 50 into the RAM 34a. In step SC2, the CPU 34c calculates a camera pose (initial value) based on the read CAD data.

カメラポーズのうち、視点位置については、図13のように、CPU34cは空間座標系の原点の座標(x,y,z)=(0,0,0)を初期値(視点1300)とする。カメラポーズのうち、視線中心位置については、図13のように、CPU34cは、CADデータにおける全ての空間座標の重心位置を算出し、その座標を初期値(視点中心1301)とする。この視線中心位置は、CADデータごとに固有の値であり、この後、カメラポーズが変更されても、この値が変化することはない。カメラポーズのうち、上方向ベクトルについては、図13のように、CPU34cは、視点1300と視線中心1301を結ぶ直線と直交する単位ベクトルのうち、Z方向成分の最も大きいものを初期値(上方向ベクトル1302)とする。ここでは、Z方向成分の最も大きい単位ベクトルを上方向ベクトルの初期値としているが、Z方向成分の最も大きい単位ベクトルに限るわけではない。   Regarding the viewpoint position in the camera pose, as shown in FIG. 13, the CPU 34c sets the coordinates (x, y, z) = (0, 0, 0) of the origin of the spatial coordinate system as an initial value (viewpoint 1300). As for the line-of-sight center position in the camera pose, as shown in FIG. 13, the CPU 34c calculates the center-of-gravity position of all spatial coordinates in the CAD data, and sets the coordinates as initial values (viewpoint center 1301). This line-of-sight center position is a unique value for each CAD data, and this value will not change even if the camera pose is changed thereafter. Of the camera poses, for the upward vector, as shown in FIG. 13, the CPU 34c sets the unit vector having the largest Z-direction component among the unit vectors orthogonal to the straight line connecting the viewpoint 1300 and the line-of-sight center 1301 as the initial value (upward Vector 1302). Here, the unit vector having the largest Z-direction component is used as the initial value of the upward vector, but it is not limited to the unit vector having the largest Z-direction component.

ステップSC3では、CPU34cが、ステップSC2で算出したカメラポーズ(初期値)をカレントカメラポーズとしてRAM34aに記録する。カレントカメラポーズとは、現在設定されているカメラポーズのことであり、3Dオブジェクトは、このカレントカメラポーズに基づいて表示されることになる。   In step SC3, the CPU 34c records the camera pose (initial value) calculated in step SC2 in the RAM 34a as the current camera pose. The current camera pose is a currently set camera pose, and the 3D object is displayed based on the current camera pose.

ステップSC4では、CPU34cが、図14のように[計測画像]ボックス611に計測画像IMGを表示し、さらにその上に3DオブジェクトOBを所定の透過率で重畳表示するための処理を実行する。このとき、3DオブジェクトOBは、算出されたカメラポーズ(初期値)に基づいて、スクリーン平面に投影された平面図として表示される。ステップSC4の処理が終了すると、初期化処理が終了する。   In step SC4, the CPU 34c displays a measurement image IMG in the [Measurement Image] box 611 as shown in FIG. 14, and further executes a process for superimposing and displaying the 3D object OB with a predetermined transmittance. At this time, the 3D object OB is displayed as a plan view projected on the screen plane based on the calculated camera pose (initial value). When the process of step SC4 ends, the initialization process ends.

次に、図15を用いて、ステップSDのカメラポーズ設定処理の流れを説明する。ステップSD1では、CPU34cが、[カメラポーズ]ボタン661aが既に押下された状態(ステップSD3の処理が既に行われた状態)であるかどうかを確認する。[カメラポーズ]ボタン661aが押下された状態である場合、処理はステップSD4に移行し、[カメラポーズ]ボタン661aが押下された状態でない場合、処理はステップSD2に移行する。   Next, the flow of the camera pose setting process in step SD will be described with reference to FIG. In step SD1, the CPU 34c confirms whether or not the [camera pause] button 661a has already been pressed (the process in step SD3 has already been performed). If the [camera pause] button 661a is pressed, the process proceeds to step SD4. If the [camera pause] button 661a is not pressed, the process proceeds to step SD2.

ステップSD2では、CPU34cが、[カメラポーズ]ボタン661aがユーザによって押下されたかどうかを確認する。[カメラポーズ]ボタン661aが押下された場合、処理はステップSD3に移行し、[カメラポーズ]ボタン661aが押下されていない場合、カメラポーズ設定処理が終了する。   In step SD2, the CPU 34c checks whether or not the [Camera Pause] button 661a has been pressed by the user. If the [Camera Pause] button 661a is pressed, the process proceeds to step SD3. If the [Camera Pause] button 661a is not pressed, the camera pose setting process ends.

ステップSD3では、CPU34cが、図16(a)のように[カメラポーズ]ボタン661aを強調表示するための処理を行う。[カメラポーズ]ボタン661aを強調表示するのは、現在、カメラポーズが変更可能であることをユーザに通知するためである。   In step SD3, the CPU 34c performs processing for highlighting the [Camera Pause] button 661a as shown in FIG. The [Camera Pose] button 661a is highlighted in order to notify the user that the camera pose can be changed at present.

ステップSD4では、CPU34cが、図16(b)のように、[計測画像]ボックス611において、ユーザがリモコン23を操作してカーソルCによりクリック等を行いながらカーソルCを上下左右に移動させる操作(ドラッグ操作)を検出し、カーソルCの操作を検出した結果に基づいてカメラポーズを変更する。このとき、ユーザは、計測画像に写った被検体DUTと3DオブジェクトOBとが大まかにマッチングするように、カメラポーズを変更する。カメラポーズは、前述したパン・チルト・ロール・ズームの方向に変更可能である。また、このとき、CPU34cは、リモコン23を介して入力されるカーソルCの操作指示を検出し、その操作指示に基づいて、変更後のカメラポーズを算出する。   In step SD4, as shown in FIG. 16B, the CPU 34c moves the cursor C up, down, left, and right while operating the remote controller 23 and clicking the cursor C in the [Measurement Image] box 611 ( Drag operation) is detected, and the camera pose is changed based on the result of detecting the operation of the cursor C. At this time, the user changes the camera pose so that the subject DUT shown in the measurement image and the 3D object OB roughly match. The camera pose can be changed in the aforementioned pan, tilt, roll, and zoom directions. At this time, the CPU 34c detects an operation instruction of the cursor C input via the remote controller 23, and calculates the changed camera pose based on the operation instruction.

ステップSD5では、CPU34cが変更後のカメラポーズをカレントカメラポーズとしてRAM34aに上書き記録する。ステップSD6では、CPU34cが、カレントカメラポーズに基づいて、3Dオブジェクトを再表示するための処理を行う。これによって、図16(c)のように、カメラポーズが変更された3DオブジェクトOBが[計測画像]ボックス611に表示される。ステップSD6の処理が終了すると、カメラポーズ設定処理が終了する。   In step SD5, the CPU 34c overwrites and records the changed camera pose as the current camera pose in the RAM 34a. In step SD6, the CPU 34c performs a process for redisplaying the 3D object based on the current camera pose. As a result, the 3D object OB whose camera pose has been changed is displayed in the [Measurement Image] box 611 as shown in FIG. When the process of step SD6 ends, the camera pose setting process ends.

次に、図17を用いて、ステップSEの参照点(計測)指定処理の流れを説明する。ステップSE1では、CPU34cが、[参照点(計測)]ボタン662aが既に押下された状態(ステップSE3,SE4の処理が既に行われた状態)であるかどうかを確認する。[参照点(計測)]ボタン662aが押下された状態である場合、処理はステップSE5に移行し、[参照点(計測)]ボタン662aが押下された状態でない場合、処理はステップSE2に移行する。   Next, the flow of the reference point (measurement) designation process in step SE will be described with reference to FIG. In step SE1, the CPU 34c confirms whether or not the [reference point (measurement)] button 662a has already been pressed (steps SE3 and SE4 have already been performed). If the [reference point (measurement)] button 662a is pressed, the process proceeds to step SE5. If the [reference point (measurement)] button 662a is not pressed, the process proceeds to step SE2. .

ステップSE2では、CPU34cが、[参照点(計測)]ボタン662aがユーザによって押下されたかどうかを確認する。[参照点(計測)]ボタン662aが押下された場合、処理はステップSE3に移行し、押下されていない場合、参照点(計測)指定処理が終了する。   In step SE2, the CPU 34c confirms whether or not the [reference point (measurement)] button 662a has been pressed by the user. If the [reference point (measurement)] button 662a is pressed, the process proceeds to step SE3. If the button is not pressed, the reference point (measurement) designation process ends.

ステップSE3では、CPU34cが、図18(a)のように、[参照点(計測)]ボタン662aを強調表示するための処理を行う。[参照点(計測)]ボタン662aを強調表示するのは、現在、計測画像に対して参照点が指定可能であることをユーザに通知するためである。   In step SE3, the CPU 34c performs processing for highlighting the [reference point (measurement)] button 662a as shown in FIG. The reason why the [reference point (measurement)] button 662a is highlighted is to notify the user that a reference point can be designated for the measurement image.

ステップSE4では、CPU34cが、図18(b)のように、3DオブジェクトOBの透過率を変更し、変更後の透過率で3DオブジェクトOBを再表示するための処理を行う。ここで設定される透過率は大きな値であり、3DオブジェクトOBは透明に近い状態となり、計測画像が見やすい状態となる。なお、特に図示していないが、既に指定した参照点(3D)が存在する場合は、3DオブジェクトOBが一旦非表示となる。これも、計測画像を見やすい状態とするためである。   In step SE4, the CPU 34c performs processing for changing the transmittance of the 3D object OB and redisplaying the 3D object OB with the changed transmittance as shown in FIG. 18B. The transmittance set here is a large value, and the 3D object OB is almost transparent, and the measurement image is easy to see. Although not particularly illustrated, when a reference point (3D) that has already been specified exists, the 3D object OB is temporarily hidden. This is also to make the measurement image easy to see.

ステップSE5では、CPU34cが、[計測画像]ボックス611において、計測画像に写った被検体DUTに対して参照点(計測)を指定するためにユーザがリモコン23を操作してカーソルCによりクリック等を行う操作を検出し、カーソルCの操作を検出した結果に基づいて、指定された参照点の座標を算出する。このとき算出される参照点(計測)の座標は、計測画像における平面座標(pixel単位)である。   In step SE5, the CPU 34c operates the remote controller 23 and clicks with the cursor C in order to designate a reference point (measurement) for the subject DUT shown in the measurement image in the [Measurement Image] box 611. The operation to be performed is detected, and the coordinates of the designated reference point are calculated based on the result of detecting the operation of the cursor C. The coordinates of the reference point (measurement) calculated at this time are plane coordinates (pixel units) in the measurement image.

ステップSE6では、CPU34cが、指定された参照点(計測)の座標をRAM34aに記録する。ステップSE7では、CPU34cが、指定された参照点(計測)を計測画像上に重畳表示するための処理を行う。これによって、図18(c)のように、参照点(計測)R1,R2,R3が計測画像上に重畳表示される。ステップSE7の処理が終了すると、参照点(計測)指定処理が終了する。   In step SE6, the CPU 34c records the coordinates of the designated reference point (measurement) in the RAM 34a. In step SE7, the CPU 34c performs processing for displaying the designated reference point (measurement) in a superimposed manner on the measurement image. As a result, as shown in FIG. 18C, the reference points (measurements) R1, R2, and R3 are superimposed and displayed on the measurement image. When the process of step SE7 ends, the reference point (measurement) designation process ends.

次に、図19を用いて、ステップSFの参照点(3D)指定処理の流れを説明する。ステップSF1では、CPU34cが、[参照点(3D)]ボタン663aが既に押下された状態(ステップSF3,SF4が既に行われた状態)であるかどうかを確認する。[参照点(3D)]ボタン663aが押下された状態である場合、処理はステップSF5に移行し、[参照点(3D)]ボタン663aが押下されていない状態でない場合、処理はステップSF2に移行する。   Next, the flow of the reference point (3D) designation process in step SF will be described with reference to FIG. In step SF1, the CPU 34c checks whether or not the [reference point (3D)] button 663a is already pressed (steps SF3 and SF4 have already been performed). If the [reference point (3D)] button 663a is pressed, the process proceeds to step SF5. If the [reference point (3D)] button 663a is not pressed, the process proceeds to step SF2. To do.

ステップSF2では、CPU34cが、[参照点(3D)]ボタン663aがユーザによって押下されたかどうかを確認する。[参照点(3D)]ボタン663aが押下された場合、処理はステップSF3に移行し、[参照点(3D)]ボタン663aが押下されていない場合、参照点(3D)指定処理が終了する。   In step SF2, the CPU 34c checks whether or not the [reference point (3D)] button 663a is pressed by the user. If the [reference point (3D)] button 663a is pressed, the process proceeds to step SF3. If the [reference point (3D)] button 663a is not pressed, the reference point (3D) designation process ends.

ステップSF3では、CPU34cが、図20(a)のように、[参照点(3D)]ボタン663aを強調表示するための処理を行う。[参照点(3D)]ボタン663aを強調表示するのは、現在、3Dオブジェクトに対して参照点が指定可能であることをユーザに通知するためである。   In step SF3, the CPU 34c performs processing for highlighting the [reference point (3D)] button 663a as shown in FIG. The reason why the [reference point (3D)] button 663a is highlighted is to notify the user that a reference point can be currently specified for the 3D object.

ステップSF4では、CPU34cが、図20(b)のように、3DオブジェクトOBの透過率を変更し、変更後の透過率で3DオブジェクトOBを再表示するための処理を行う。ここで設定される透過率は小さな値であり、3DオブジェクトOBが見やすい状態となる。このとき、特に図示していないが、既に指定した参照点(計測)が存在する場合は、計測画像が一旦非表示となる。これも、3DオブジェクトOBを見やすい状態とするためである。   In step SF4, the CPU 34c performs processing for changing the transmittance of the 3D object OB and redisplaying the 3D object OB with the changed transmittance as shown in FIG. 20B. The transmittance set here is a small value, and the 3D object OB is easy to see. At this time, although not particularly illustrated, if a reference point (measurement) that has already been specified exists, the measurement image is temporarily hidden. This is also for making the 3D object OB easy to see.

ステップSF5では、CPU34cが、[計測画像]ボックス611において、計測画像に写った被検体DUTに対して参照点(3D)を指定するためにユーザがリモコン23を操作してカーソルCによりクリック等を行う操作を検出し、カーソルCの操作を検出した結果に基づいて、指定された参照点の座標を算出する。このとき算出される参照点(3D)の座標は、3Dオブジェクト表面における空間座標(mm単位)であり、CPU34cは、まず指定された参照点の平面座標(pixel単位)を算出し、続いて、算出した平面座標から空間座標(mm単位)を算出する。   In step SF5, the CPU 34c operates the remote controller 23 and clicks with the cursor C in order to designate a reference point (3D) for the subject DUT shown in the measurement image in the [Measurement Image] box 611. The operation to be performed is detected, and the coordinates of the designated reference point are calculated based on the result of detecting the operation of the cursor C. The coordinates of the reference point (3D) calculated at this time are spatial coordinates (in mm units) on the surface of the 3D object, and the CPU 34c first calculates the plane coordinates (in pixel units) of the designated reference point. Spatial coordinates (in mm units) are calculated from the calculated plane coordinates.

ユーザが指定する参照点(3D)と、既に指定された参照点(計測)とが、それぞれ対応付けられていなくてはならない。本実施形態では、CPU34cは、ユーザが参照点(計測)を指定した順番と、参照点(3D)を指定した順番とに基づいて、参照点(3D)と参照点(計測)とを対応付けるものとする。より具体的には、CPU34cは、参照点(計測)のうち最初に指定された点と参照点(3D)のうち最初に指定された点とを対応付け、参照点(計測)のうち2番目に指定された点と参照点(3D)のうち2番目に指定された点とを対応付け、・・・、参照点(計測)のうちn番目に指定された点と参照点(3D)のうちn番目に指定された点とを対応付ける。上記の方法は一例であり、これに限るわけではない。   The reference point (3D) designated by the user must be associated with the reference point (measurement) already designated. In the present embodiment, the CPU 34c associates the reference point (3D) with the reference point (measurement) based on the order in which the user designates the reference point (measurement) and the order in which the reference point (3D) is designated. And More specifically, the CPU 34c associates the point designated first among the reference points (measurement) with the point designated first among the reference points (3D), and the second among the reference points (measurement). The point designated in the reference point (3D) is associated with the second designated point,..., The nth designated point of the reference point (measurement) and the reference point (3D) The nth designated point is associated. The above method is an example, and the present invention is not limited to this.

図18(c)に示すように、被検体DUTの左上の参照点(計測)R1、右上の参照点(計測)R2、右下の参照点(計測)R3が指定されている。参照点(計測)の指定が終了した後、ユーザは、被検体DUT上の参照点(計測)に対応する3DオブジェクトOB上の参照点(3D)を、参照点(計測)を指定したときと同じ順番で指定する。図20(c)に示すように、被検体DUT上の参照点(計測)R1,R2,R3に対応する3Dオブジェクト上の位置に参照点(計測)R1’,R2’,R3’が指定されている。   As shown in FIG. 18C, the upper left reference point (measurement) R1, the upper right reference point (measurement) R2, and the lower right reference point (measurement) R3 of the subject DUT are designated. After the designation of the reference point (measurement) is completed, the user designates the reference point (measurement) for the reference point (3D) on the 3D object OB corresponding to the reference point (measurement) on the subject DUT. Specify in the same order. As shown in FIG. 20 (c), reference points (measurements) R1 ′, R2 ′, R3 ′ are designated at positions on the 3D object corresponding to the reference points (measurements) R1, R2, R3 on the subject DUT. ing.

ステップSF6では、CPU34cが、指定された参照点(3D)の座標をRAM34aに記録する。ステップSF7では、CPU34cが、指定された参照点(3D)を3Dオブジェクト上に重畳表示するための処理を行う。これによって、図20(c)のように、参照点(3D)R1’,R2’,R3’が3DオブジェクトOB上に重畳表示される。ステップSF7の処理が終了すると、参照点(3D)指定処理が終了する。   In step SF6, the CPU 34c records the coordinates of the designated reference point (3D) in the RAM 34a. In step SF7, the CPU 34c performs processing for displaying the designated reference point (3D) in a superimposed manner on the 3D object. As a result, as shown in FIG. 20C, the reference points (3D) R1 ', R2', R3 'are superimposed and displayed on the 3D object OB. When the process of step SF7 ends, the reference point (3D) designation process ends.

なお、CPU34cが、指定された参照点(3D)の座標をCADデータに記録してもよいし、CADデータと紐付けされた(関連付けられた)別のファイルに記録してもよい。これによって、再度ステップSC1にて同じCADデータを読み出した場合、ステップSF1〜ステップSF5の処理を省略することができる。また、参照点(3D)は必ずしもステップSFにおいて指定されるべきものではなく、予め内視鏡装置3またはPC6等によって、CADデータに記録されていてもよいし、CADデータと紐付けされた(関連付けられた)別のファイルに記録されていてもよい。   Note that the CPU 34c may record the coordinates of the designated reference point (3D) in the CAD data, or may record it in another file linked (associated) with the CAD data. As a result, when the same CAD data is read out again in step SC1, the processing in steps SF1 to SF5 can be omitted. Further, the reference point (3D) is not necessarily designated in step SF, and may be recorded in the CAD data in advance by the endoscope device 3 or the PC 6 or linked to the CAD data ( It may be recorded in another file (associated).

次に、図21を用いて、ステップSGの3Dマッチング処理の流れを説明する。ステップSG1では、CPU34cが、[3Dマッチング]ボタン664がユーザによって押下されたかどうかを確認する。[3Dマッチング]ボタン664が押下された場合、処理はステップSG2に移行し、[3Dマッチング]ボタン664が押下されていない場合、3Dマッチング処理が終了する。   Next, the flow of the 3D matching process in step SG will be described with reference to FIG. In step SG1, the CPU 34c confirms whether or not the [3D matching] button 664 has been pressed by the user. If the [3D matching] button 664 is pressed, the process proceeds to step SG2. If the [3D matching] button 664 is not pressed, the 3D matching process ends.

ステップSG2では、CPU34cが、全ての参照点が既に指定済みであるどうかを確認する。具体的には、CPU34cは、参照点(計測)および参照点(3D)が、それぞれ3点ずつ、既に指定済みであるかどうかを確認する。全ての参照点が指定済みの場合、処理はステップSG3に移行し、参照点が指定済みでない場合、3Dマッチング処理が終了する。ステップSG3では、CPU34cが、RAM34aに記録された全ての参照点の座標を読み込む。   In step SG2, the CPU 34c confirms whether all reference points have already been designated. Specifically, the CPU 34c checks whether or not three reference points (measurement) and three reference points (3D) have already been specified. If all reference points have been specified, the process proceeds to step SG3. If no reference point has been specified, the 3D matching process ends. In step SG3, the CPU 34c reads the coordinates of all reference points recorded in the RAM 34a.

ステップSG4では、CPU34cが、指定された参照点の座標に基づいて、パン・チルト方向のマッチング処理を行う。パン・チルト方向のマッチング処理の詳細については、後述する。ステップSG5では、CPU34cが、指定された参照点の座標に基づいて、ロール方向のマッチング処理を行う。ロール方向のマッチング処理の詳細については、後述する。   In step SG4, the CPU 34c performs a matching process in the pan / tilt direction based on the coordinates of the designated reference point. Details of the matching process in the pan / tilt direction will be described later. In step SG5, the CPU 34c performs a roll direction matching process based on the coordinates of the designated reference point. Details of the roll direction matching processing will be described later.

ステップSG6では、CPU34cが、指定された参照点の座標に基づいて、ズーム方向のマッチング処理を行う。ズーム方向のマッチング処理の詳細については、後述する。ステップSG7では、CPU34cが、指定された参照点の座標に基づいて、シフト方向のマッチング処理を行う。シフト方向のマッチング処理の詳細については、後述する。   In step SG6, the CPU 34c performs zoom direction matching processing based on the coordinates of the designated reference point. Details of the matching processing in the zoom direction will be described later. In step SG7, the CPU 34c performs a shift direction matching process based on the coordinates of the designated reference point. Details of the matching process in the shift direction will be described later.

ステップSG8では、CPU34cが、[計測画像]ボックス611において、3Dオブジェクトを再表示するための処理を行う。このとき、3Dオブジェクトは、ステップSG4〜SG7において最終的に算出されたカメラポーズおよびシフト位置に基づいて、姿勢および位置が調整されて表示される。図22は、マッチング処理後の計測画像に写った被検体と3Dオブジェクトを示している。図22のように、計測画像に写った被検体と3Dオブジェクトとが、ほぼ一致していること、すなわち、両者がうまくマッチングしていることがわかる。ステップSG8の処理が終了すると、3Dマッチング処理が終了する。   In step SG8, the CPU 34c performs processing for redisplaying the 3D object in the [Measurement Image] box 611. At this time, the 3D object is displayed with its posture and position adjusted based on the camera pose and shift position finally calculated in steps SG4 to SG7. FIG. 22 shows the subject and the 3D object shown in the measurement image after the matching process. As shown in FIG. 22, it can be seen that the subject shown in the measurement image and the 3D object substantially match, that is, the two match well. When the process of step SG8 ends, the 3D matching process ends.

次に、図23を用いて、ステップSHの計測処理の流れを説明する。ステップSH1では、CPU34cが、[計測]ボタン664が既に押下された状態(ステップSH3が既に行われた状態)であるかどうかを確認する。[計測]ボタン664が押下された状態である場合、処理はステップSH4に移行し、[計測]ボタン664が押下された状態でない場合、処理はステップSH2に移行する。   Next, the flow of the measurement process in step SH will be described with reference to FIG. In step SH1, the CPU 34c confirms whether or not the [Measurement] button 664 has already been pressed (step SH3 has already been performed). If the [Measure] button 664 is pressed, the process proceeds to step SH4. If the [Measure] button 664 is not pressed, the process proceeds to step SH2.

ステップSH2では、CPU34cが、[計測]ボタン664がユーザによって押下されたかどうかを確認する。[計測]ボタン664が押下された場合、処理はステップSH3に移行し、[計測]ボタン664が押下されていない場合、計測処理が終了する。   In step SH2, the CPU 34c checks whether or not the [Measurement] button 664 has been pressed by the user. If the [Measure] button 664 is pressed, the process proceeds to step SH3. If the [Measure] button 664 is not pressed, the measurement process ends.

ステップSH3では、CPU34cが、図24(a)のように、[計測]ボタン664を強調表示するための処理を行う。[計測]ボタン664を強調表示するのは、現在、3Dオブジェクトに対して計測点が指定可能であることをユーザに通知するためである。   In step SH3, the CPU 34c performs processing for highlighting the [Measurement] button 664 as shown in FIG. The [Measurement] button 664 is highlighted in order to notify the user that a measurement point can be currently specified for the 3D object.

ステップSH4では、CPU34cが、[計測画像]ボックス611において、3Dオブジェクトに対して計測点を指定するためにユーザがリモコン23を操作してカーソルCによりクリック等を行う操作を検出し、カーソルCの操作を検出した結果に基づいて、指定された計測点の座標を算出する。CPU34cは、算出した計測点の座標をRAM34aに記録する。このとき記録される計測点の座標は、3Dオブジェクト表面における空間座標(mm単位)である。   In step SH4, the CPU 34c detects an operation in which the user operates the remote controller 23 and clicks with the cursor C in order to specify a measurement point for the 3D object in the [Measurement Image] box 611. Based on the result of detecting the operation, the coordinates of the designated measurement point are calculated. The CPU 34c records the calculated coordinates of the measurement point in the RAM 34a. The coordinates of the measurement points recorded at this time are spatial coordinates (in mm units) on the 3D object surface.

ステップSH5では、CPU34cが、指定された計測点の座標に基づいて、計測結果を算出し、算出した計測結果をRAM34aに記録する。本実施形態では、2つの計測点の空間距離(2点間距離)を計測するものとする。ステップSH5で算出される計測結果は、既に指定された2つの計測点の空間距離である。指定された計測点が1点のみである場合、計測結果は算出されず、処理がステップSH6に移行する。   In step SH5, the CPU 34c calculates a measurement result based on the coordinates of the designated measurement point, and records the calculated measurement result in the RAM 34a. In the present embodiment, the spatial distance between two measurement points (distance between two points) is measured. The measurement result calculated in step SH5 is a spatial distance between two measurement points that have already been specified. When the designated measurement point is only one point, the measurement result is not calculated, and the process proceeds to step SH6.

ステップSH6では、CPU34cが、図24(b),(c)のように、指定された計測点を3Dオブジェクト上に重畳表示するための処理を行う。図24(b)は1点目の計測点P1が指定されたときの[計測画像]ボックス611であり、図24(c)は2点目の計測点P2が指定されたときの[計測画像]ボックス611である。さらに、CPU34cは、図25のように、算出した計測結果を[計測結果]ボックス670に表示するための処理を行う。指定された計測点が1点のみである場合、計測結果は表示されず、ステップSH6の処理が終了する。   In step SH6, the CPU 34c performs a process for superimposing and displaying the designated measurement point on the 3D object as shown in FIGS. FIG. 24B shows the [Measurement Image] box 611 when the first measurement point P1 is designated, and FIG. 24C shows the [Measurement Image] when the second measurement point P2 is designated. ] Box 611. Further, the CPU 34c performs processing for displaying the calculated measurement result in the [Measurement Result] box 670 as shown in FIG. When the designated measurement point is only one point, the measurement result is not displayed, and the process of step SH6 ends.

ステップSH6の処理が終了すると、計測処理が終了する。上記の説明では、2点間距離を計測する場合を例としているが、3点以上の計測点が指定される面積等の計測を行う場合も同様である。   When the process of step SH6 ends, the measurement process ends. In the above description, the case of measuring the distance between two points is taken as an example, but the same applies to the case of measuring an area or the like where three or more measurement points are designated.

次に、図26〜図29を用いて、指定された計測点の、3Dオブジェクト表面における空間座標(3次元座標)の算出方法について説明する。図26は、3次元空間における3Dオブジェクトの一部と視点Eとの関係を示している。   Next, a method of calculating spatial coordinates (three-dimensional coordinates) on the surface of the 3D object at the designated measurement point will be described with reference to FIGS. FIG. 26 shows the relationship between a part of the 3D object and the viewpoint E in the three-dimensional space.

3Dオブジェクトは、複数の三角形の空間平面から構成されている。視点Eから3Dオブジェクトの重心点Gへ向かう方向を視線方向とする。視点Eと3Dオブジェクトとの間には、視線方向と垂直に交わるスクリーン平面SCが設定されている。   The 3D object is composed of a plurality of triangular spatial planes. The direction from the viewpoint E toward the center of gravity G of the 3D object is defined as the line-of-sight direction. A screen plane SC that intersects the line-of-sight direction perpendicularly is set between the viewpoint E and the 3D object.

ユーザが[計測画像]ボックス611における3Dオブジェクト上の計測点を指定すると、CPU34cは、図27のように、スクリーン平面SC上に計測点Sを設定する。計測点Sと視点Eとを通る空間直線を直線Lとする。そして、CPU34cは、3Dオブジェクトを構成する複数の三角形の中から、直線Lと交差する全ての三角形を検索する。直線と空間三角形とが交差するかどうかを判定する方法として、例えばTomas Mollerの交差判定法を用いることが可能である。この例では、図28のように、三角形T1,T2が、直線Lと交差する三角形であると判定される。   When the user designates a measurement point on the 3D object in the [Measurement Image] box 611, the CPU 34c sets the measurement point S on the screen plane SC as shown in FIG. A spatial straight line passing through the measurement point S and the viewpoint E is defined as a straight line L. Then, the CPU 34c searches for all the triangles that intersect with the straight line L from among a plurality of triangles constituting the 3D object. As a method for determining whether or not a straight line and a space triangle intersect, for example, Tomas Moller's intersection determination method can be used. In this example, it is determined that the triangles T1 and T2 are triangles that intersect with the straight line L as shown in FIG.

そして、図29のように、CPU34cは、直線Lと三角形T1,T2との交点を算出し、算出したそれぞれの交点を交点F1,F2とする。ここでは、3Dオブジェクト表面における空間座標を算出したいので、CPU34cは、交点F1,F2のうち、より視点Eに近い方を選択する。この場合、CPU34cは、交点F1の空間座標を、3Dオブジェクト表面における空間座標として算出する。上記では、直線Lと交差すると判定された三角形を2つのみとしたが、3Dオブジェクトの形状や視線方向によっては、より多くの三角形が交差すると判定される場合もある。その場合も、直線Lと三角形との交点をそれぞれ求め、求めた交点の中で、最も視点Eに近い交点を選択することになる。   Then, as shown in FIG. 29, the CPU 34c calculates intersections between the straight line L and the triangles T1 and T2, and sets the calculated intersections as intersections F1 and F2. Here, since it is desired to calculate the spatial coordinates on the surface of the 3D object, the CPU 34c selects one of the intersections F1, F2 that is closer to the viewpoint E. In this case, the CPU 34c calculates the spatial coordinates of the intersection point F1 as the spatial coordinates on the 3D object surface. In the above description, only two triangles determined to intersect the straight line L are used. However, depending on the shape of the 3D object and the line-of-sight direction, it may be determined that more triangles intersect. Also in this case, the intersection of the straight line L and the triangle is obtained, and the intersection closest to the viewpoint E is selected from the obtained intersections.

上記のようにして、計測点の空間座標を算出することができる。ステップSF5における参照点(3D)の空間座標も上記と同様にして算出することができる。   As described above, the spatial coordinates of the measurement point can be calculated. The spatial coordinates of the reference point (3D) in step SF5 can also be calculated in the same manner as described above.

次に、図30を用いて、ステップSG4のパン・チルト方向のマッチング処理の流れを説明する。パン・チルト方向のマッチング処理の目的は、参照点(計測)によって構成される3角形と、参照点(3D)をスクリーン平面に降ろした投影点によって構成される3角形とが最も相似に近くなるカメラポーズを見つける、ということである。これらの3角形が相似に近い場合、計測画像に写った被検体が撮像されたときの視線のパン・チルト方向と、3Dオブジェクトを観察する視線のパン・チルト方向とが、ほぼ一致しているということができる。   Next, the flow of matching processing in the pan / tilt direction in step SG4 will be described with reference to FIG. The purpose of the matching process in the pan / tilt direction is that a triangle formed by reference points (measurements) and a triangle formed by projected points obtained by dropping the reference points (3D) on the screen plane are closest to each other. It means finding a camera pose. When these triangles are similar, the pan / tilt direction of the line of sight when the subject imaged in the measurement image is imaged and the pan / tilt direction of the line of sight observing the 3D object are substantially the same. It can be said.

以下、図31(a)のように、参照点(3D)R1’〜R3’をスクリーン平面3100に降ろした投影点Rp1’〜Rp3’を投影点(3D)と記載する。さらに、図31(b)のように、参照点(計測)R1〜R3によって構成される3角形3102を参照図形(計測)と記載し、図31(a)のように、投影点(3D)Rp1’〜Rp3’によって構成される3角形3101を参照図形(3D)と記載する。   Hereinafter, as shown in FIG. 31A, projection points Rp1 'to Rp3' obtained by dropping the reference points (3D) R1 'to R3' on the screen plane 3100 are referred to as projection points (3D). Furthermore, as shown in FIG. 31B, a triangle 3102 constituted by reference points (measurements) R1 to R3 is referred to as a reference graphic (measurement), and as shown in FIG. A triangle 3101 constituted by Rp1 ′ to Rp3 ′ is referred to as a reference graphic (3D).

ステップSG401では、CPU34cが頂点角(計測)を算出し、算出した頂点角(計測)をRAM34aに記録する。頂点角(計測)とは、図32(a)のように、参照図形(計測)3200の3つの頂点R1〜R3の角度A1〜A3である。   In step SG401, the CPU 34c calculates a vertex angle (measurement) and records the calculated vertex angle (measurement) in the RAM 34a. The vertex angle (measurement) is the angles A1 to A3 of the three vertices R1 to R3 of the reference graphic (measurement) 3200 as shown in FIG.

ステップSG402では、CPU34cが、カメラポーズをパン・チルト方向にそれぞれ−31deg回転させる。ステップSG403〜SG407において繰り返し処理が行われるが、これは、図32(b)のように、カメラポーズをパン・チルト方向に回転させながら、頂点角(3D)を順次算出するためである。頂点角(3D)とは、図32(b)のように、参照図形(3D)3201の3つの投影点(3D)Rp1’〜Rp3’の角度A1’〜A3’である。   In step SG402, the CPU 34c rotates the camera pose by −31 degrees in the pan / tilt directions, respectively. Steps SG403 to SG407 are repeatedly performed because the vertex angle (3D) is sequentially calculated while rotating the camera pose in the pan / tilt direction as shown in FIG. 32 (b). The vertex angle (3D) is angles A1 'to A3' of three projection points (3D) Rp1 'to Rp3' of the reference graphic (3D) 3201, as shown in Fig. 32 (b).

前述したように、参照点(計測)と参照点(3D)は、各参照点が指定された順番によって対応付けられており、角度A1〜A3と角度A1’〜A3も、この順番によって対応付けられている。図32では、角度A1と角度A1’が対応付けられ、角度A2と角度A2’が対応付けられ、角度A3と角度A3’が対応付けられている。   As described above, the reference point (measurement) and the reference point (3D) are associated with each other in the order in which the reference points are designated, and the angles A1 to A3 and the angles A1 ′ to A3 are also associated with each other in this order. It has been. In FIG. 32, the angle A1 and the angle A1 'are associated, the angle A2 and the angle A2' are associated, and the angle A3 and the angle A3 'are associated.

ステップSG403では、CPU34cが、カメラポーズをパン方向に+1deg回転させる。そして、ステップSG403〜SG407では、カメラポーズのパン方向の回転角度が+30degとなるまでCPU34cが繰り返し処理を行う。CPU34cは、カメラポーズをパン方向に−30degから+30degとなるまで+1degずつ回転させるので、結果としてステップSG403〜SG407の一連の処理を61回繰り返すことになる。   In step SG403, the CPU 34c rotates the camera pose by +1 deg in the pan direction. In steps SG403 to SG407, the CPU 34c repeats the process until the rotation angle in the pan direction of the camera pose reaches +30 deg. The CPU 34c rotates the camera pose in the pan direction by +1 deg from -30 deg to +30 deg. As a result, the series of processes of steps SG403 to SG407 are repeated 61 times.

ステップSG404では、CPU34cが、カメラポーズをチルト方向に+1deg回転させる。そして、ステップSG404〜SG407では、カメラポーズのチルト方向の回転角度が+30degとなるまでCPU34cが繰り返し処理を行う。CPU34cは、カメラポーズをチルト方向に−30degから+30degとなるまで+1degずつ回転させるので、結果としてステップSG404〜SG407の処理を61回繰り返すことになる。なお、ステップSG403〜SG407の繰り返し処理において、カメラポーズを−30degから+30degとなるまで回転させているが、カメラポーズを回転させる範囲は必ずしもこの範囲である必要はない。   In step SG404, the CPU 34c rotates the camera pose by +1 deg in the tilt direction. In steps SG404 to SG407, the CPU 34c repeats the process until the rotation angle in the tilt direction of the camera pose reaches +30 deg. The CPU 34c rotates the camera pose in the tilt direction by +1 deg from -30 deg to +30 deg. As a result, the processes of steps SG404 to SG407 are repeated 61 times. In the repetition processing of steps SG403 to SG407, the camera pose is rotated from −30 deg to +30 deg. However, the range in which the camera pose is rotated is not necessarily within this range.

ステップSDのカメラポーズ設定処理において、ユーザがカメラポーズを変更する際、計測画像に写った被検体と3Dオブジェクトとをどの程度までマッチングさせるかによって、ステップSG403〜SG407の繰り返し処理において、カメラポーズを回転させるのに必要な範囲が変わることになる。範囲が広い場合、ユーザは大まかなマッチングさえ行えば良いが、その代わり、3Dマッチングの処理時間が長くなる。範囲が狭い場合、3Dマッチングの処理時間が短くて済むが、その代わり、ユーザはある程度詳細にマッチングを行う必要がある。   In the camera pose setting process of step SD, when the user changes the camera pose, the camera pose is set in the repetition process of steps SG403 to SG407 depending on the degree of matching between the subject shown in the measurement image and the 3D object. The range required for rotation will change. When the range is wide, the user only needs to perform rough matching, but instead, the processing time of 3D matching becomes longer. If the range is narrow, the processing time for 3D matching may be short, but instead the user needs to perform matching in some detail.

ステップSG405では、CPU34cが、現在のパン・チルト方向の回転角度をRAM34aに記録する。図33は、RAM34aに記録される回転角度を示している。ステップSG405では、CPU34cは、回転角度をRAM34aに上書き記録するのではなく、カメラポーズをパン・チルト方向に回転するたびに、図33(a)のように、RAM34aに用意されたデータリストに現在のパン・チルト方向の回転角度を1行ずつ追加記録していく。このデータリストには、後述するように、パン・チルト方向の回転角度と関連付けて、頂点角(3D)等の様々なデータを記録することができる。   In step SG405, the CPU 34c records the current rotation angle in the pan / tilt direction in the RAM 34a. FIG. 33 shows the rotation angle recorded in the RAM 34a. In step SG405, the CPU 34c does not record the rotation angle in the RAM 34a. Instead, every time the camera pose is rotated in the pan / tilt direction, the CPU 34c presents the data list prepared in the RAM 34a as shown in FIG. The rotation angle in the pan / tilt direction is additionally recorded line by line. As will be described later, various data such as the vertex angle (3D) can be recorded in this data list in association with the rotation angle in the pan / tilt direction.

ステップSG406では、CPU34cが投影点(3D)を算出し、算出した投影点(3D)をRAM34aに記録する。ステップSG407では、CPU34cが頂点角(3D)を算出し、算出した頂点角(3D)をRAM34aに記録する。このとき、CPU34cは、図33(b)のように、頂点角(3D)をパン・チルト方向の回転角度と関連付けて、データリストに1行ずつ追加記録していく。   In step SG406, the CPU 34c calculates a projection point (3D) and records the calculated projection point (3D) in the RAM 34a. In step SG407, the CPU 34c calculates the vertex angle (3D) and records the calculated vertex angle (3D) in the RAM 34a. At this time, as shown in FIG. 33 (b), the CPU 34c associates the vertex angle (3D) with the rotation angle in the pan / tilt direction, and additionally records the data list line by line.

ステップSG403〜SG407の繰り返し処理が終了すると、処理はステップSG408に移行する。この時点でのデータリストは、図33(c)のようになり、61×61行分のデータで構成されている。ステップSG408では、CPU34cがカメラポーズをパン・チルト方向にそれぞれ−30deg回転させる。ステップSG403〜SG407の繰り返し処理が終了した時点で、パン・チルト方向の回転角度はそれぞれ+30degであるので、ここでは、−30deg回転させることによって、カメラポーズを元の状態に戻すことになる。   When the repetition process of steps SG403 to SG407 is completed, the process proceeds to step SG408. The data list at this point is as shown in FIG. 33C, and is composed of data for 61 × 61 rows. In step SG408, the CPU 34c rotates the camera pose by −30 degrees in the pan / tilt directions. Since the rotation angle in the pan / tilt direction is +30 degrees at the time when the repetition processing of steps SG403 to SG407 is completed, the camera pose is returned to the original state here by rotating by −30 degrees.

ステップSG409では、CPU34cが、頂点角(計測)と頂点角(3D)との差を算出する。具体的には、CPU34cは、(1)式〜(3)式のように、頂点角(計測)A1〜A3と頂点角(3D)A1’〜A3’との差の絶対値D1〜D3を算出する。
D1=|A1−A1’| ・・・(1)
D2=|A2−A2’| ・・・(2)
D3=|A3−A3’| ・・・(3)
さらに、CPU34cは、図34(a)のように、頂点角の差をパン・チルト方向の回転角度と関連付けて、データリストに追加記録する。
In step SG409, the CPU 34c calculates the difference between the vertex angle (measurement) and the vertex angle (3D). Specifically, the CPU 34c calculates the absolute values D1 to D3 of the differences between the vertex angles (measurement) A1 to A3 and the vertex angles (3D) A1 ′ to A3 ′ as in the expressions (1) to (3). calculate.
D1 = | A1-A1 ′ | (1)
D2 = | A2-A2 ′ | (2)
D3 = | A3-A3 ′ | (3)
Furthermore, as shown in FIG. 34A, the CPU 34c additionally records the difference in the vertex angle in the data list in association with the rotation angle in the pan / tilt direction.

ステップSG410では、CPU34cが差D1〜D3の平均値を算出する。さらに、CPU34cは、図34(b)のように、平均値をパン・チルト方向の回転角度と関連付けて、データリストに追加記録する。   In step SG410, the CPU 34c calculates an average value of the differences D1 to D3. Further, the CPU 34c additionally records the average value in the data list in association with the rotation angle in the pan / tilt direction as shown in FIG. 34 (b).

ステップSG411では、CPU34cが平均値の最小値をデータリストから検索する。図35は、データリストにおいて、0.5が最小値として検索された様子を示している。   In step SG411, the CPU 34c searches the data list for the minimum average value. FIG. 35 shows a state where 0.5 is searched as the minimum value in the data list.

ステップSG412では、CPU34cが、平均値が最小となる場合のパン・チルト方向の回転角度をデータリストから読み込む。具体的には、CPU34cは、図35のように、データリストから、最小の平均値に関連付けられたパン・チルト方向の回転角度を読み込む。   In step SG412, the CPU 34c reads from the data list the rotation angle in the pan / tilt direction when the average value is minimum. Specifically, as shown in FIG. 35, the CPU 34c reads the rotation angle in the pan / tilt direction associated with the minimum average value from the data list.

ステップSG413では、CPU34cが、カメラポーズをパン・チルト方向に、ステップSG412で読み込まれた回転角度だけ回転させる。このカメラポーズで3Dオブジェクトを表示した場合、図32(c),(d)のように、回転後の頂点角(計測)と頂点角(3D)とが、良く一致しており、参照図形(計測)と参照図形(3D)とが相似に近いことがわかる。   In step SG413, the CPU 34c rotates the camera pose in the pan / tilt direction by the rotation angle read in step SG412. When a 3D object is displayed in this camera pose, as shown in FIGS. 32C and 32D, the vertex angle (measurement) after rotation and the vertex angle (3D) are in good agreement, and the reference figure ( It can be seen that the measurement) and the reference figure (3D) are similar.

ステップSG414では、CPU34cが、このときのカメラポーズをカレントカメラポーズとしてRAM34aに上書き記録する。ここでは、カレントカメラポーズに基づく3Dオブジェクトの再表示は行わない。ステップSG414の処理が終了すると、パン・チルト方向のマッチング処理が終了する。   In step SG414, the CPU 34c overwrites and records the camera pose at this time in the RAM 34a as the current camera pose. Here, the 3D object is not re-displayed based on the current camera pose. When the process of step SG414 ends, the matching process in the pan / tilt direction ends.

次に、図36を用いて、ステップSG5のロール方向のマッチング処理の流れを説明する。ロール方向のマッチング処理の目的は、参照図形(計測)と参照図形(3D)の回転方向のアングルが最も一致するカメラポーズを見つける、ということである。それぞれの参照図形の回転方向のアングルが近い場合、計測画像に写った被検体を観察する視線のロール方向の回転角度と、3Dオブジェクトを観察する視線のロール方向の回転角度とが、ほぼ一致しているということができる。   Next, the flow of the matching process in the roll direction in step SG5 will be described using FIG. The purpose of the matching process in the roll direction is to find a camera pose that most closely matches the angle in the rotation direction of the reference figure (measurement) and the reference figure (3D). When the angle of rotation of each reference figure is close, the rotation angle of the line of sight observing the subject in the measurement image and the rotation angle of the line of sight observing the 3D object are almost the same. It can be said that

ステップSG501では、CPU34cが相対角(計測)を算出し、算出した相対角(計測)をRAM34aに記録する。相対角(計測)とは、図37(a)のように、計測画像において上下方向に伸びる直線3700と、参照図形(計測)の3つの辺との間の角度Ar1〜Ar3である。このときの相対角(計測)は、直線3700から辺への右回り方向の角度である。   In step SG501, the CPU 34c calculates a relative angle (measurement) and records the calculated relative angle (measurement) in the RAM 34a. The relative angle (measurement) is an angle Ar1 to Ar3 between a straight line 3700 extending in the vertical direction in the measurement image and the three sides of the reference graphic (measurement) as shown in FIG. The relative angle (measurement) at this time is an angle in the clockwise direction from the straight line 3700 to the side.

ステップSG502では、CPU34cが投影点(3D)を算出し、算出した投影点(3D)をRAM34aに記録する。ステップSG503では、CPU34cが相対角(3D)を算出し、算出した相対角(3D)をRAM34aに記録する。相対角(3D)とは、図37(b)のように、スクリーン平面において上下方向に伸びる直線3701と参照図形(3D)の3つの辺との間の角度Ar1’〜Ar3’である。スクリーン平面は、計測画像が表示される[計測画像]ボックス611に相当するため、直線3700と直線3701の方向は一致する。また、このときの相対角(3D)は、直線3701から辺への右回り方向の角度である。   In step SG502, the CPU 34c calculates a projection point (3D) and records the calculated projection point (3D) in the RAM 34a. In step SG503, the CPU 34c calculates a relative angle (3D) and records the calculated relative angle (3D) in the RAM 34a. The relative angle (3D) is an angle Ar1 ′ to Ar3 ′ between a straight line 3701 extending in the vertical direction on the screen plane and the three sides of the reference graphic (3D) as shown in FIG. Since the screen plane corresponds to the [Measurement Image] box 611 in which the measurement image is displayed, the directions of the straight line 3700 and the straight line 3701 coincide. The relative angle (3D) at this time is an angle in the clockwise direction from the straight line 3701 to the side.

ステップSG504では、CPU34cが相対角(計測)と相対角(3D)との差を算出する。具体的には、CPU34cは、(4)式〜(6)式のように、相対角(計測)Ar1〜Ar3と相対角(3D)Ar1’〜Ar3’とのそれぞれの差Dr1〜Dr3を算出する。
Dr1=Ar1−Ar1’ ・・・(4)
Dr2=Ar2−Ar2’ ・・・(5)
Dr3=Ar3−Ar3’ ・・・(6)
In step SG504, the CPU 34c calculates the difference between the relative angle (measurement) and the relative angle (3D). Specifically, the CPU 34c calculates the respective differences Dr1 to Dr3 between the relative angles (measurements) Ar1 to Ar3 and the relative angles (3D) Ar1 ′ to Ar3 ′ as in the expressions (4) to (6). To do.
Dr1 = Ar1-Ar1 ′ (4)
Dr2 = Ar2-Ar2 '(5)
Dr3 = Ar3-Ar3 ′ (6)

ステップSG505では、CPU34cが差Dr1〜Dr3の平均値を算出し、算出した平均値をRAM34aに記録する。ステップSG506では、CPU34cがカメラポーズをロール方向に、ステップSG505で算出した平均値だけ回転させる。このカメラポーズで3Dオブジェクトを表示した場合、図37(c),(d)のように、回転後の相対角(計測)と相対角(3D)とが良く一致していることがわかる。   In step SG505, the CPU 34c calculates an average value of the differences Dr1 to Dr3, and records the calculated average value in the RAM 34a. In step SG506, the CPU 34c rotates the camera pose in the roll direction by the average value calculated in step SG505. When a 3D object is displayed in this camera pose, it can be seen that the relative angle (measurement) after rotation and the relative angle (3D) are in good agreement, as shown in FIGS.

ステップSG507では、CPU34cが、このときのカメラポーズをカレントカメラポーズとしてRAM34aに上書き記録する。ここでは、カレントカメラポーズに基づく3Dオブジェクトの再表示は行わない。ステップSG507の処理が終了すると、ロール方向のマッチング処理が終了する。   In step SG507, the CPU 34c overwrites and records the camera pose at this time in the RAM 34a as the current camera pose. Here, the 3D object is not re-displayed based on the current camera pose. When the process of step SG507 ends, the roll direction matching process ends.

次に、図38を用いて、ステップSG6のズーム方向のマッチング処理の流れを説明する。ズーム方向のマッチング処理の目的は、参照図形(計測)と参照図形(3D)のサイズが最も一致するカメラポーズを見つける、ということである。それぞれの参照図形のサイズが近い場合、計測画像に写った被検体を観察する視線のズーム方向の位置と、3Dオブジェクトを観察する視線のズーム方向の位置とが、ほぼ一致しているということができる。   Next, the flow of the matching process in the zoom direction in step SG6 will be described with reference to FIG. The purpose of the matching process in the zoom direction is to find a camera pose that most closely matches the size of the reference graphic (measurement) and the reference graphic (3D). When the sizes of the respective reference figures are close, the position in the zoom direction of the line of sight observing the subject shown in the measurement image and the position in the zoom direction of the line of sight observing the 3D object are substantially the same. it can.

ステップSG601では、CPU34cが辺長(計測)を算出し、算出した辺長(計測)をRAM34aに記録する。辺長(計測)とは、図39(a)のように、参照点(計測)R1〜R3によって構成される3角形の3つの辺の長さL1〜L3である。   In step SG601, the CPU 34c calculates a side length (measurement) and records the calculated side length (measurement) in the RAM 34a. The side length (measurement) is the lengths L1 to L3 of three sides of a triangle formed by reference points (measurements) R1 to R3 as shown in FIG.

ステップSG602では、CPU34cが投影点(3D)を算出し、算出した投影点(3D)をRAM34aに記録する。ステップSG603では、CPU34cが辺長1(3D)を算出し、算出した辺長1(3D)をRAM34aに記録する。辺長1(3D)とは、図39(b)のように、参照図形(3D)の3つの辺の長さL1’〜L3’である。   In step SG602, the CPU 34c calculates a projection point (3D) and records the calculated projection point (3D) in the RAM 34a. In step SG603, the CPU 34c calculates the side length 1 (3D), and records the calculated side length 1 (3D) in the RAM 34a. The side length 1 (3D) is the lengths L1 'to L3' of the three sides of the reference graphic (3D) as shown in FIG.

ステップSG604では、CPU34cが、このときのカメラポーズをカメラポーズ1としてRAM34aに上書き記録する。ステップSG605では、CPU34cが、図39(b)のように、カメラポーズをズーム方向に所定値だけ移動させる。   In step SG604, the CPU 34c overwrites and records the camera pose at this time as the camera pose 1 in the RAM 34a. In step SG605, the CPU 34c moves the camera pose by a predetermined value in the zoom direction as shown in FIG.

ステップSG606では、CPU34cが投影点(3D)を算出し、算出した投影点(3D)をRAM34aに記録する。ステップSG607では、CPU34cが辺長2(3D)を算出し、算出した辺長2(3D)をRAM34aに記録する。辺長2(3D)とは、図39(b)のように、カメラポーズをズーム方向に所定値だけ移動させた後の、参照図形(3D)の3つの辺の長さLz1’〜Lz3’である。ステップSG608では、CPU34cが、このときのカメラポーズをカメラポーズ2としてRAM34aに上書き記録する。   In step SG606, the CPU 34c calculates a projection point (3D), and records the calculated projection point (3D) in the RAM 34a. In step SG607, the CPU 34c calculates the side length 2 (3D) and records the calculated side length 2 (3D) in the RAM 34a. As shown in FIG. 39B, the side length 2 (3D) is the length Lz1 ′ to Lz3 ′ of the three sides of the reference graphic (3D) after the camera pose is moved by a predetermined value in the zoom direction. It is. In step SG608, the CPU 34c overwrites and records the camera pose at this time as the camera pose 2 in the RAM 34a.

ステップSG609では、CPU34cがズーム量を算出し、算出したズーム量をRAM34aに記録する。ズーム量は、辺長(3D)と辺長(計測)とが一致するようなカメラポーズのズーム方向の移動量であり、辺長1,2(3D)と、カメラポーズ1,2との関係から算出される。辺は3つであるので、ズーム量も3つ算出される。   In step SG609, the CPU 34c calculates a zoom amount and records the calculated zoom amount in the RAM 34a. The zoom amount is the amount of movement in the zoom direction of the camera pose such that the side length (3D) and the side length (measurement) match. The relationship between the side length 1, 2 (3D) and the camera pose 1, 2 Is calculated from Since there are three sides, three zoom amounts are also calculated.

図40は、辺長(3D)とカメラポーズのズーム方向位置との関係を示している。図40のグラフ4000が示すように、両者は線形的な比例関係にある。グラフ4000を用いることで、辺長(3D)と辺長(計測)とを一致させる場合にカメラポーズをズーム方向に移動させる際の移動量を算出することができる。   FIG. 40 shows the relationship between the side length (3D) and the zoom direction position of the camera pose. As shown by a graph 4000 in FIG. 40, both are in a linear proportional relationship. By using the graph 4000, it is possible to calculate the movement amount when moving the camera pose in the zoom direction when the side length (3D) and the side length (measurement) are matched.

ステップSG610では、CPU34cが3つのズーム量の平均値を算出し、算出した平均値をRAM34aに記録する。ステップSG611では、CPU34cが、カメラポーズをズーム方向に、ステップSG611で算出した平均値だけ移動させる。このカメラポーズで3Dオブジェクトを表示した場合、図39(c),(d)のように、移動後の辺長(計測)と辺長(3D)とが、良く一致していることがわかる。   In step SG610, the CPU 34c calculates an average value of the three zoom amounts, and records the calculated average value in the RAM 34a. In step SG611, the CPU 34c moves the camera pose in the zoom direction by the average value calculated in step SG611. When a 3D object is displayed in this camera pose, it can be seen that the side length (measurement) and the side length (3D) after movement are in good agreement, as shown in FIGS.

ステップSG612では、CPU34cが、このときのカメラポーズをカレントカメラポーズとしてRAM34aに上書き記録する。ここでは、カレントカメラポーズに基づく3Dオブジェクトの再表示は行わない。ステップSG612の処理が終了すると、ズーム方向のマッチング処理が終了する。   In step SG612, the CPU 34c overwrites and records the camera pose at this time in the RAM 34a as the current camera pose. Here, the 3D object is not re-displayed based on the current camera pose. When the process of step SG612 ends, the zoom direction matching process ends.

次に、図41を用いて、ステップSG7のシフト方向のマッチング処理の流れを説明する。シフト方向のマッチング処理の目的は、[計測画像]ボックス611における、計測画像に写った被検体と3Dオブジェクトとが一致するように、シフト方向に3Dオブジェクトを移動させる、ということである。本処理は、3Dオブジェクトのシフト位置を決定するものであるため、カメラポーズの算出は行わない。   Next, the flow of the matching process in the shift direction in step SG7 will be described using FIG. The purpose of the matching process in the shift direction is to move the 3D object in the shift direction so that the subject shown in the measurement image matches the 3D object in the [Measurement Image] box 611. Since this process determines the shift position of the 3D object, the camera pose is not calculated.

ステップSG701では、CPU34cが重心点(計測)を算出し、算出した重心点(計測)をRAM34aに記録する。重心点(計測)とは、図42(a)のように、参照点(計測)R1〜R3によって構成される3角形の重心点Gである。   In step SG701, the CPU 34c calculates a centroid point (measurement), and records the calculated centroid point (measurement) in the RAM 34a. The center-of-gravity point (measurement) is a triangular center-of-gravity point G constituted by reference points (measurements) R1 to R3 as shown in FIG.

ステップSG702では、CPU34cが投影点(3D)を算出し、算出した投影点(3D)をRAM34aに記録する。ステップSG703では、CPU34cが重心点(3D)を算出し、算出した重心点(3D)をRAM34aに記録する。重心点(3D)とは、図42(a)のように、投影点(3D)Rp1’〜Rp3’によって構成される3角形の重心点G’である。   In step SG702, the CPU 34c calculates a projection point (3D) and records the calculated projection point (3D) in the RAM 34a. In step SG703, the CPU 34c calculates a centroid point (3D) and records the calculated centroid point (3D) in the RAM 34a. The center-of-gravity point (3D) is a triangular center-of-gravity point G ′ constituted by projection points (3D) Rp1 ′ to Rp3 ′ as shown in FIG.

ステップSG704では、CPU34cがシフト量を算出し、算出したシフト量をRAM34aに記録する。シフト量とは、重心点(計測)の、重心点(3D)との相対位置(平面座標系、pixel単位)である。ステップSG705では、CPU34cが、3Dオブジェクトをシフト方向に、ステップSG704で算出したシフト量だけ移動させる。このカメラポーズで3Dオブジェクトを表示した場合、図42(b)のように、重心点(計測)と重心点(3D)とが、良く一致していることがわかる。ステップSG705の処理が終了すると、シフト方向のマッチング処理が終了する。   In step SG704, the CPU 34c calculates the shift amount, and records the calculated shift amount in the RAM 34a. The shift amount is a relative position of the barycentric point (measurement) to the barycentric point (3D) (plane coordinate system, pixel unit). In step SG705, the CPU 34c moves the 3D object in the shift direction by the shift amount calculated in step SG704. When a 3D object is displayed in this camera pose, it can be seen that the center of gravity (measurement) and the center of gravity (3D) are in good agreement, as shown in FIG. When the process of step SG705 ends, the matching process in the shift direction ends.

従来例では、2次元画像と3Dオブジェクトの投影図(2Dモデル)の画像データに基づくマッチング処理を行っていたため、3Dオブジェクトの再表示や、膨大なデータ量をもつ画像データの統計計算に、多くの処理時間がかかっていた。しかし、本実施形態では、3Dマッチング処理を実行する際、ユーザが指定する平易な形状の参照図形に基づく簡単な幾何学計算のみを実行すれば良く、処理時間を大幅に短縮することができる。さらに、3Dオブジェクトの再表示は、3Dマッチング処理終了後の1度のみで良い。   In the conventional example, matching processing is performed based on image data of a projection image (2D model) of a two-dimensional image and a 3D object. Therefore, it is often used for redisplay of a 3D object and statistical calculation of image data having a huge amount of data. It took a long time to process. However, in this embodiment, when executing the 3D matching process, it is only necessary to execute a simple geometric calculation based on a simple reference graphic specified by the user, and the processing time can be greatly reduced. Furthermore, the 3D object may be redisplayed only once after the 3D matching process is completed.

次に、本実施形態の変形例を説明する。上記の説明では、CPU34cは、3点の参照点に基づいて、3Dマッチング処理を実行しているが、本変形例では、CPU34cは、4点の参照点に基づいて、3Dマッチング処理を実行する。ステップSG4のパン・チルト方向のマッチング処理において、CPU34cは、参照図形(計測)と参照図形(3D)とが最も相似に近くなるカメラポーズのパン・チルト方向の回転角度を算出するが、1対の参照図形(3角形)だけが相似に近くなる回転角度を算出しても、マッチング精度は必ずしも高いわけではなく、明らかに誤った回転角度を算出してしまうことがあった。また、ステップSG5〜SG7の各マッチング処理においても、同様に誤った回転角度・移動量を算出してしまうことがあった。   Next, a modification of this embodiment will be described. In the above description, the CPU 34c executes the 3D matching process based on the three reference points. However, in the present modification, the CPU 34c executes the 3D matching process based on the four reference points. . In the matching process in the pan / tilt direction in step SG4, the CPU 34c calculates the rotation angle in the pan / tilt direction of the camera pose in which the reference figure (measurement) and the reference figure (3D) are closest to each other. Even if the rotation angle at which only the reference figure (triangle) is similar is calculated, the matching accuracy is not necessarily high, and an apparently incorrect rotation angle may be calculated. Further, in each matching process of steps SG5 to SG7, an incorrect rotation angle / movement amount may be calculated in the same manner.

上記に鑑み、本変形例では、3Dマッチング処理のマッチング精度を向上させることを目的とする。本変形例では、ステップSEの参照点(計測)の指定処理において、図43(a)のように、ユーザは4点の参照点(計測)R1〜R4を指定し、ステップSFの参照点(3D)の指定処理において、図43(b)のように、ユーザは4点の参照点(3D)R1’〜R4’を指定する。また、本変形例では、ステップSGの3Dマッチング処理において、CPU34cは、4点の参照点に基づいて参照図形を算出する。   In view of the above, an object of the present modification is to improve the matching accuracy of the 3D matching process. In this modification, in the reference point (measurement) designation process in step SE, as shown in FIG. 43A, the user designates four reference points (measurements) R1 to R4, and the reference point (step SF) In the 3D designation process, as shown in FIG. 43B, the user designates four reference points (3D) R1 ′ to R4 ′. In this modification, in the 3D matching process in step SG, the CPU 34c calculates a reference graphic based on the four reference points.

図44は、ステップSGで算出された参照図形(計測)を示している。4点の参照点(計測)R1〜R4のうちの3点で構成される4つの3角形4400,4401,4402,4403が参照図形(計測)となる。また、図45は、ステップSGで算出された参照図形(3D)を示している。4点の参照点(3D)Rp1’〜Rp4’のうちの3点で構成される4つの3角形4500,4501,4502,4503が参照図形(3D)となる。   FIG. 44 shows the reference graphic (measurement) calculated in step SG. Four triangles 4400, 4401, 4402, and 4403 constituted by three of the four reference points (measurements) R1 to R4 are reference figures (measurements). FIG. 45 shows the reference graphic (3D) calculated in step SG. Four triangles 4500, 4501, 4502, and 4503 constituted by three of the four reference points (3D) Rp1 'to Rp4' serve as reference figures (3D).

本変形例では、ステップSGの3Dマッチング処理において、CPU34cは、これら4つの3角形に基づいて、3Dマッチング処理を実行する。例えば、ステップSG4のパン・チルト方向のマッチング処理において、CPU34cは、カメラポーズのパン・チルト方向の回転角度を算出するが、この際、4つの3角形のそれぞれに基づいて算出した回転角度の平均値を最終的な回転角度として用いる。ステップSG5〜SG7の各マッチング処理においても、CPU34cは、4つの3角形のそれぞれに基づいて算出した回転角度・移動量の平均値を最終的な回転角度・移動量として用いる。   In the present modification, in the 3D matching process in step SG, the CPU 34c executes the 3D matching process based on these four triangles. For example, in the pan / tilt direction matching process in step SG4, the CPU 34c calculates the rotation angle of the camera pose in the pan / tilt direction. At this time, the average rotation angle calculated based on each of the four triangles is calculated. The value is used as the final rotation angle. Also in each matching process of steps SG5 to SG7, the CPU 34c uses the average value of the rotation angle / movement amount calculated based on each of the four triangles as the final rotation angle / movement amount.

本変形例では、ユーザが4点の参照点を指定することで、CPU34cは、参照点によって構成される4つの参照図形に基づいて、3Dマッチング処理を行う。そのため、CPU34cは、3Dマッチング処理を実行する際に多くのパラメータを用いることができ、その結果、マッチング精度を向上させることができる。   In this modification, when the user designates four reference points, the CPU 34c performs 3D matching processing based on the four reference figures configured by the reference points. Therefore, the CPU 34c can use many parameters when executing the 3D matching process, and as a result, the matching accuracy can be improved.

本実施形態では、計測に係る一連の処理の手順および内容を規定したソフトウェア(プログラム)である3D計測ソフトに従ってCPU34cが上記の処理を行うことによって計測が行われる。図46は、CPU34cに必要な機能構成を示している。図46では、本実施形態の計測に関係する機能構成のみが示されており、他の機能構成については省略されている。CPU34cの機能構成には、撮像制御部340、指定部341、マッチング処理部342、表示制御部343、および計測部344が含まれる。   In the present embodiment, measurement is performed by the CPU 34c performing the above-described processing according to 3D measurement software that is software (program) that defines a series of processing procedures and contents related to measurement. FIG. 46 shows a functional configuration necessary for the CPU 34c. In FIG. 46, only the functional configuration related to the measurement of the present embodiment is shown, and other functional configurations are omitted. The functional configuration of the CPU 34c includes an imaging control unit 340, a designation unit 341, a matching processing unit 342, a display control unit 343, and a measurement unit 344.

撮像制御部340は、光源32および湾曲制御ユニット33の制御や撮像素子30bの制御を行う。指定部341は、リモコン23を介してユーザによって入力される指示に基づいて、計測画像上や3Dオブジェクトの画像上の指定された位置に対応する参照点(計測)、参照点(3D)、計測点を指定(設定)する。マッチング処理部342は、指定部341によって指定された参照点(計測)および参照点(3D)に基づいて、参照図形(計測)および参照図形(3D)を算出し、参照図形(計測)と参照図形(3D)との幾何学計算により、マッチングに必要なカメラポーズの変更量を算出する。   The imaging control unit 340 controls the light source 32 and the bending control unit 33 and the imaging element 30b. The designation unit 341, based on an instruction input by the user via the remote controller 23, the reference point (measurement), the reference point (3D), the measurement corresponding to the designated position on the measurement image or the image of the 3D object. Specify (set) a point. The matching processing unit 342 calculates a reference graphic (measurement) and a reference graphic (3D) based on the reference point (measurement) and the reference point (3D) specified by the specifying unit 341, and refers to the reference graphic (measurement) and the reference graphic (measurement). The amount of camera pose change necessary for matching is calculated by geometric calculation with the figure (3D).

表示制御部343は、モニタ22に表示される画像の内容や表示状態等を制御する。特に、表示制御部343は、マッチング処理部342によって算出されたカメラポーズの変更量に基づいて3Dオブジェクトの姿勢および位置を調整することによって、計測画像と3Dオブジェクトを互いにマッチングさせた状態で表示させる。上記の説明では3Dオブジェクトのみの姿勢および位置を調整しているが、これに限らず、計測画像のみの姿勢および位置を調整したり、計測画像および3Dオブジェクトの姿勢および位置を調整したりしてもよい。計測部344は、指定部341によって指定された計測点に基づいて、計測処理を行う。図46に示す機能構成の一部または全部を、計測に必要な機能を実現するためのアナログ回路やデジタル回路を配置して構成した特定のハードウェアに置き換えることも可能である。   The display control unit 343 controls the content and display state of the image displayed on the monitor 22. In particular, the display control unit 343 displays the measurement image and the 3D object in a matched state by adjusting the posture and position of the 3D object based on the change amount of the camera pose calculated by the matching processing unit 342. . In the above description, the posture and position of only the 3D object are adjusted. However, the present invention is not limited to this, and the posture and position of only the measurement image are adjusted, or the posture and position of the measurement image and 3D object are adjusted. Also good. The measurement unit 344 performs measurement processing based on the measurement points designated by the designation unit 341. It is also possible to replace part or all of the functional configuration shown in FIG. 46 with specific hardware configured by arranging analog circuits and digital circuits for realizing functions necessary for measurement.

上述したように、本実施形態によれば、参照図形(計測)と参照図形(3D)との幾何学計算を行い、幾何学計算の結果に基づいて、計測画像と3Dオブジェクトとの少なくとも一方の姿勢または位置を調整することによって、マッチングに必要な処理時間を低減することができる。   As described above, according to the present embodiment, geometric calculation of the reference graphic (measurement) and the reference graphic (3D) is performed, and at least one of the measurement image and the 3D object is performed based on the result of the geometric calculation. By adjusting the posture or position, the processing time required for matching can be reduced.

また、参照点(計測)と参照点(3D)のそれぞれの点の指定された順番に基づいて参照点(計測)と参照点(3D)とを対応付けることによって、簡易な方法で両者の対応付けが可能となり、マッチングに必要な処理時間を低減することができる。   Further, by associating the reference point (measurement) with the reference point (3D) based on the designated order of the respective points of the reference point (measurement) and the reference point (3D), the two can be associated with each other in a simple manner. And the processing time required for matching can be reduced.

また、計測画像上の参照図形(計測)と、3Dオブジェクト上の参照点(計測)によって構成される3角形をスクリーン平面に投影した参照図形(3D)との幾何学計算によるマッチングを行うことによって、マッチングの精度を維持しつつ、マッチングに必要な処理時間を低減することができる。   Also, by performing geometric calculation matching between a reference figure (measurement) on the measurement image and a reference figure (3D) obtained by projecting a triangle formed by reference points (measurement) on the 3D object onto the screen plane The processing time required for matching can be reduced while maintaining matching accuracy.

また、ユーザが参照点(計測)を指定する際に3Dオブジェクトの透過率が大きく設定されることによって、ユーザが計測画像を見やすくすることができ、かつ、ユーザが参照点(計測)を指定しやすくすることができる。   Further, when the user designates the reference point (measurement), the transparency of the 3D object is set to be large, so that the user can easily see the measurement image, and the user designates the reference point (measurement). It can be made easier.

また、3Dマッチング処理中は処理負荷の高い3Dオブジェクトの再表示を行わず、3Dマッチング処理の終了時に3Dオブジェクトの再表示を行うことによって、マッチングに必要な処理時間を低減することができる。   In addition, during the 3D matching process, the 3D object having a high processing load is not redisplayed, and the 3D object is redisplayed at the end of the 3D matching process, thereby reducing the processing time required for the matching.

以上、図面を参照して本発明の実施形態について詳述してきたが、具体的な構成は上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。   As described above, the embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to the above-described embodiments, and includes design changes and the like without departing from the gist of the present invention. .

1・・・ジェットエンジン、2・・・ターニングツール、3・・・内視鏡装置、4・・・ビデオ端子ケーブル、5・・・ビデオキャプチャカード、6・・・PC、7・・・LANケーブル、10・・・タービンブレード、20・・・内視鏡挿入部、21・・・内視鏡装置本体、22,25・・・モニタ(表示部)、23・・・リモコン(入力装置)、24・・・PC本体、30a・・・撮像光学系、30b・・・撮像素子、31・・・画像信号処理装置、32・・・光源、33・・・湾曲制御ユニット、34,35・・・制御用コンピュータ、34a,35a・・・RAM、34b・・・ROM、34c,35c・・・CPU(指定部、計算部、調整部、計測部)、34d,35d・・・ネットワークI/F、34e・・・RS232C・・・I/F、34f・・・カードI/F、35b・・・HDD、35e・・・USB・・・I/F、340・・・撮像制御部、341・・・指定部、342・・・マッチング処理部、343・・・表示制御部、344・・・計測部   DESCRIPTION OF SYMBOLS 1 ... Jet engine, 2 ... Turning tool, 3 ... Endoscope apparatus, 4 ... Video terminal cable, 5 ... Video capture card, 6 ... PC, 7 ... LAN Cable 10, turbine blade 20, endoscope insertion section 21, endoscope apparatus main body 22, 25 monitor (display section) 23 remote control (input device) 24 ... PC body, 30a ... imaging optical system, 30b ... imaging device, 31 ... image signal processing device, 32 ... light source, 33 ... bending control unit, 34, 35. ..Control computer, 34a, 35a... RAM, 34b... ROM, 34c, 35c... CPU (designation unit, calculation unit, adjustment unit, measurement unit), 34d, 35d. F, 34e ... RS232C ... I / F, 34f ... Card I / F, 35b ... HDD, 35e ... USB ... I / F, 340 ... Imaging control unit, 341 ... Designation unit, 342 ... Matching processing unit, 343 ... display control unit, 344 ... measurement unit

Claims (11)

計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示する表示部と、
入力装置を介して入力される指示に基づいて、前記計測対象物の画像上の第1の点と前記物体の画像上の第2の点とを指定する指定部と、
前記第1の点を基準とする第1の図形と、前記第2の点を基準とする第2の図形との幾何学計算を行う計算部と、
前記幾何学計算の結果に基づいて、前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整する調整部と、
前記姿勢または前記位置が調整された後、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出する計測部と、
を備えたことを特徴とする画像処理装置。
A display unit that displays an image of the measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance;
A designation unit for designating a first point on the image of the measurement object and a second point on the image of the object based on an instruction input via an input device;
A calculation unit that performs a geometric calculation between a first graphic that is based on the first point and a second graphic that is based on the second point;
An adjusting unit that adjusts the posture or position of at least one of the image of the measurement object and the image of the object based on the result of the geometric calculation;
After the posture or the position is adjusted, a spatial coordinate on the object corresponding to a measurement position designated based on an instruction input via an input device is calculated, and based on the calculated spatial coordinate, A measurement unit for calculating the size of the object;
An image processing apparatus comprising:
計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示する表示部と、
入力装置を介して入力される指示に基づいて、前記計測対象物の画像上の第1の点を指定する指定部と、
前記第1の点を基準とする第1の図形と、前記物体の画像と関連付けて記録されている第2の点を基準とする第2の図形との幾何学計算を行う計算部と、
前記幾何学計算の結果に基づいて、前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整する調整部と、
前記姿勢または前記位置が調整された後、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出する計測部と、
を備えたことを特徴とする画像処理装置。
A display unit that displays an image of the measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance;
A designation unit for designating a first point on an image of the measurement object based on an instruction input via an input device;
A calculation unit that performs a geometric calculation between a first graphic that is based on the first point and a second graphic that is recorded in association with the image of the object;
An adjusting unit that adjusts the posture or position of at least one of the image of the measurement object and the image of the object based on the result of the geometric calculation;
After the posture or the position is adjusted, a spatial coordinate on the object corresponding to a measurement position designated based on an instruction input via an input device is calculated, and based on the calculated spatial coordinate, A measurement unit for calculating the size of the object;
An image processing apparatus comprising:
前記第1の点および前記第2の点は、入力装置を介して入力される指示に基づいて指定された3点以上の点を含むことを特徴とする請求項1に記載の画像処理装置。   The image processing apparatus according to claim 1, wherein the first point and the second point include three or more points designated based on an instruction input via an input device. 前記計算部は、前記第1の点の指定された順番と、前記第2の点の指定された順番とに基づいて、前記第1の点と前記第2の点とを対応付けて前記幾何学計算を行うことを特徴とする請求項3に記載の画像処理装置。   The calculation unit associates the first point with the second point on the basis of the designated order of the first point and the designated order of the second point. The image processing apparatus according to claim 3, wherein scientific calculation is performed. 前記計算部は、前記第1の点を基準とする平面上の第1の図形と、前記第2の点に対応する前記物体の空間上の点を基準とする空間上の第2の図形との幾何学計算を行うことを特徴とする請求項1〜請求項4のいずれか一項に記載の画像処理装置。   The calculation unit includes: a first graphic on a plane based on the first point; a second graphic on a space based on a point on the object space corresponding to the second point; The image processing apparatus according to claim 1, wherein geometric calculation is performed. 前記計算部は、前記平面上の第1の図形と、前記空間上の第2の図形を前記平面に投影した第3の図形との幾何学計算を行うことを特徴とする請求項5に記載の画像処理装置。   6. The calculation unit according to claim 5, wherein the calculation unit performs a geometric calculation between a first graphic on the plane and a third graphic obtained by projecting the second graphic on the space onto the plane. Image processing apparatus. 前記指定部はさらに、前記第1の点を指定する場合に、前記物体の画像の透過率を、前記第2の点を指定する場合の前記物体の画像の透過率よりも大きな透過率に設定することを特徴とする請求項1〜請求項6のいずれか一項に記載の画像処理装置。   The specifying unit further sets the transmittance of the image of the object to be higher than the transmittance of the image of the object when specifying the second point when specifying the first point. The image processing apparatus according to claim 1, wherein the image processing apparatus is an image processing apparatus. 前記表示部は、前記計測対象物の画像と前記物体の画像とを表示した後、前記幾何学計算が終了するまで、前記計測対象物の画像と前記物体の画像の姿勢および位置を維持し、前記幾何学計算が終了した後、前記姿勢または前記位置が調整された前記計測対象物の画像と前記物体の画像を再表示することを特徴とする請求項1〜請求項7のいずれか一項に記載の画像処理装置。   The display unit displays an image of the measurement object and an image of the object, and then maintains a posture and a position of the image of the measurement object and the image of the object until the geometric calculation ends. 8. The image of the measurement object and the image of the object whose postures or positions are adjusted are displayed again after the geometric calculation is finished. 8. An image processing apparatus according to 1. 計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示部が表示するステップと、
入力装置を介して入力される指示に基づいて、指定部が前記計測対象物の画像上の第1の点と前記物体の画像上の第2の点とを指定するステップと、
前記第1の点を基準とする第1の図形と、前記第2の点を基準とする第2の図形との幾何学計算を計算部が行うステップと、
前記幾何学計算の結果に基づいて、調整部が前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整するステップと、
前記姿勢または前記位置が調整された後、計測部が、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出するステップと、
を備えたことを特徴とする画像処理方法。
A display unit displaying an image of the measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance;
A step of designating a first point on the image of the measurement object and a second point on the image of the object based on an instruction input via the input device;
A calculation unit performing a geometric calculation of a first graphic with respect to the first point and a second graphic with respect to the second point;
A step of adjusting the posture or position of at least one of the image of the measurement object and the image of the object based on the result of the geometric calculation;
After the posture or the position is adjusted, the measurement unit calculates a spatial coordinate on the object corresponding to the measurement position specified based on an instruction input via the input device, and calculates the calculated spatial coordinate. Calculating a size of the object based on:
An image processing method comprising:
前記第1の点および前記第2の点は、入力装置を介して入力される指示に基づいて指定された3点以上の点を含み、
前記計算部は、前記第1の点の指定された順番と、前記第2の点の指定された順番とに基づいて、前記第1の点と前記第2の点とを対応付けて前記幾何学計算を行う
ことを特徴とする請求項9に記載の画像処理方法。
The first point and the second point include three or more points designated based on an instruction input via an input device;
The calculation unit associates the first point with the second point on the basis of the designated order of the first point and the designated order of the second point. The image processing method according to claim 9, wherein a scientific calculation is performed.
計測対象物の画像と、前記計測対象物に対応する物体であって予め算出された3次元形状を有する前記物体の画像とを表示する表示部と、
入力装置を介して入力される指示に基づいて、前記計測対象物の画像上の第1の点と前記物体の画像上の第2の点とを指定する指定部と、
前記第1の点を基準とする第1の図形と、前記第2の点を基準とする第2の図形との幾何学計算を行う計算部と、
前記幾何学計算の結果に基づいて、前記計測対象物の画像と前記物体の画像との少なくとも一方の姿勢または位置を調整する調整部と、
前記姿勢または前記位置が調整された後、入力装置を介して入力される指示に基づいて指定された計測位置に対応する前記物体上の空間座標を算出し、算出した空間座標に基づいて、前記物体のサイズを算出する計測部と、
としてコンピュータを機能させるためのプログラム。
A display unit that displays an image of the measurement object and an image of the object corresponding to the measurement object and having a three-dimensional shape calculated in advance;
A designation unit for designating a first point on the image of the measurement object and a second point on the image of the object based on an instruction input via an input device;
A calculation unit that performs a geometric calculation between a first graphic that is based on the first point and a second graphic that is based on the second point;
An adjusting unit that adjusts the posture or position of at least one of the image of the measurement object and the image of the object based on the result of the geometric calculation;
After the posture or the position is adjusted, a spatial coordinate on the object corresponding to a measurement position designated based on an instruction input via an input device is calculated, and based on the calculated spatial coordinate, A measurement unit for calculating the size of the object;
As a program to make the computer function as.
JP2011134341A 2011-06-16 2011-06-16 Image processing apparatus, image processing method, and program Expired - Fee Related JP5791976B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011134341A JP5791976B2 (en) 2011-06-16 2011-06-16 Image processing apparatus, image processing method, and program
EP12800391.0A EP2722638B1 (en) 2011-06-16 2012-06-13 Image processing apparatus, image processing method
PCT/JP2012/065124 WO2012173141A1 (en) 2011-06-16 2012-06-13 Image processing apparatus, image processing method, and program
US14/102,455 US9275473B2 (en) 2011-06-16 2013-12-10 Image processing apparatus, image processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011134341A JP5791976B2 (en) 2011-06-16 2011-06-16 Image processing apparatus, image processing method, and program

Publications (2)

Publication Number Publication Date
JP2013002956A JP2013002956A (en) 2013-01-07
JP5791976B2 true JP5791976B2 (en) 2015-10-07

Family

ID=47357127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011134341A Expired - Fee Related JP5791976B2 (en) 2011-06-16 2011-06-16 Image processing apparatus, image processing method, and program

Country Status (4)

Country Link
US (1) US9275473B2 (en)
EP (1) EP2722638B1 (en)
JP (1) JP5791976B2 (en)
WO (1) WO2012173141A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7314047B2 (en) 2019-12-26 2023-07-25 三和シヤッター工業株式会社 Vertical frame structure for opening

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8908995B2 (en) * 2009-01-12 2014-12-09 Intermec Ip Corp. Semi-automatic dimensioning with imager on a portable device
US9779546B2 (en) 2012-05-04 2017-10-03 Intermec Ip Corp. Volume dimensioning systems and methods
US10007858B2 (en) 2012-05-15 2018-06-26 Honeywell International Inc. Terminals and methods for dimensioning objects
US10321127B2 (en) 2012-08-20 2019-06-11 Intermec Ip Corp. Volume dimensioning system calibration systems and methods
US9939259B2 (en) 2012-10-04 2018-04-10 Hand Held Products, Inc. Measuring object dimensions using mobile computer
US9841311B2 (en) 2012-10-16 2017-12-12 Hand Held Products, Inc. Dimensioning system
US9080856B2 (en) 2013-03-13 2015-07-14 Intermec Ip Corp. Systems and methods for enhancing dimensioning, for example volume dimensioning
US10228452B2 (en) 2013-06-07 2019-03-12 Hand Held Products, Inc. Method of error correction for 3D imaging device
US9480448B2 (en) 2014-07-23 2016-11-01 General Electric Company System and method for use in mapping a radiation dose applied in an angiography imaging procedure of a patient
USD771089S1 (en) * 2014-07-23 2016-11-08 General Electric Company Display screen or portion thereof with graphical user interface for a radiation dose mapping system
USD773504S1 (en) * 2014-07-25 2016-12-06 Adp, Llc Display screen or portion thereof with graphical user interface
USD781886S1 (en) * 2014-07-25 2017-03-21 Adp, Llc Display screen or portion thereof with graphical user interface
US9823059B2 (en) 2014-08-06 2017-11-21 Hand Held Products, Inc. Dimensioning system with guided alignment
US9779276B2 (en) 2014-10-10 2017-10-03 Hand Held Products, Inc. Depth sensor based auto-focus system for an indicia scanner
US10775165B2 (en) 2014-10-10 2020-09-15 Hand Held Products, Inc. Methods for improving the accuracy of dimensioning-system measurements
US10810715B2 (en) 2014-10-10 2020-10-20 Hand Held Products, Inc System and method for picking validation
US9897434B2 (en) 2014-10-21 2018-02-20 Hand Held Products, Inc. Handheld dimensioning system with measurement-conformance feedback
US10060729B2 (en) 2014-10-21 2018-08-28 Hand Held Products, Inc. Handheld dimensioner with data-quality indication
US9752864B2 (en) 2014-10-21 2017-09-05 Hand Held Products, Inc. Handheld dimensioning system with feedback
US9762793B2 (en) 2014-10-21 2017-09-12 Hand Held Products, Inc. System and method for dimensioning
JP2016163150A (en) * 2015-02-27 2016-09-05 株式会社リコー Communication terminal, interview system, communication method, and program
US9786101B2 (en) 2015-05-19 2017-10-10 Hand Held Products, Inc. Evaluating image values
US10066982B2 (en) 2015-06-16 2018-09-04 Hand Held Products, Inc. Calibrating a volume dimensioner
US9857167B2 (en) 2015-06-23 2018-01-02 Hand Held Products, Inc. Dual-projector three-dimensional scanner
US20160377414A1 (en) 2015-06-23 2016-12-29 Hand Held Products, Inc. Optical pattern projector
US9835486B2 (en) 2015-07-07 2017-12-05 Hand Held Products, Inc. Mobile dimensioner apparatus for use in commerce
EP3396313B1 (en) * 2015-07-15 2020-10-21 Hand Held Products, Inc. Mobile dimensioning method and device with dynamic accuracy compatible with nist standard
US20170017301A1 (en) 2015-07-16 2017-01-19 Hand Held Products, Inc. Adjusting dimensioning results using augmented reality
US10094650B2 (en) 2015-07-16 2018-10-09 Hand Held Products, Inc. Dimensioning and imaging items
US10249030B2 (en) 2015-10-30 2019-04-02 Hand Held Products, Inc. Image transformation for indicia reading
JP6661980B2 (en) 2015-11-06 2020-03-11 富士通株式会社 Superimposed display method, superimposed display device, and superimposed display program
US10225544B2 (en) 2015-11-19 2019-03-05 Hand Held Products, Inc. High resolution dot pattern
US10143526B2 (en) * 2015-11-30 2018-12-04 Auris Health, Inc. Robot-assisted driving systems and methods
US10196927B2 (en) 2015-12-09 2019-02-05 General Electric Company System and method for locating a probe within a gas turbine engine
US10196922B2 (en) 2015-12-09 2019-02-05 General Electric Company System and method for locating a probe within a gas turbine engine
US10025314B2 (en) 2016-01-27 2018-07-17 Hand Held Products, Inc. Vehicle positioning and object avoidance
JP6716996B2 (en) 2016-03-29 2020-07-01 富士通株式会社 Image processing program, image processing apparatus, and image processing method
US10339352B2 (en) 2016-06-03 2019-07-02 Hand Held Products, Inc. Wearable metrological apparatus
US9940721B2 (en) 2016-06-10 2018-04-10 Hand Held Products, Inc. Scene change detection in a dimensioner
US10163216B2 (en) 2016-06-15 2018-12-25 Hand Held Products, Inc. Automatic mode switching in a volume dimensioner
US10909708B2 (en) 2016-12-09 2021-02-02 Hand Held Products, Inc. Calibrating a dimensioner using ratios of measurable parameters of optic ally-perceptible geometric elements
US11047672B2 (en) 2017-03-28 2021-06-29 Hand Held Products, Inc. System for optically dimensioning
US10489896B2 (en) 2017-11-14 2019-11-26 General Electric Company High dynamic range video capture using variable lighting
US10488349B2 (en) 2017-11-14 2019-11-26 General Electric Company Automated borescope insertion system
JP7003617B2 (en) 2017-12-12 2022-01-20 富士通株式会社 Estimator, estimation method, and estimation program
JP7017949B2 (en) * 2018-03-02 2022-02-09 株式会社ディスコ Processing equipment
US10775315B2 (en) 2018-03-07 2020-09-15 General Electric Company Probe insertion system
JP7061506B2 (en) * 2018-04-23 2022-04-28 オリンパス株式会社 Inspection system, inspection method and program
US10584962B2 (en) 2018-05-01 2020-03-10 Hand Held Products, Inc System and method for validating physical-item security
JP7063165B2 (en) * 2018-07-26 2022-05-09 富士通株式会社 Measuring equipment, measuring method and measuring program
JP6988001B2 (en) * 2018-08-30 2022-01-05 オリンパス株式会社 Recording device, image observation device, observation system, observation system control method, and observation system operation program

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695009B2 (en) * 1989-06-29 1994-11-24 オリンパス光学工業株式会社 Method of inspecting target part by imaging means
JPH0812054B2 (en) * 1990-06-04 1996-02-07 オリンパス光学工業株式会社 Method of measuring object using imaging means
US5153721A (en) 1990-06-04 1992-10-06 Olympus Optical Co., Ltd. Method and apparatus for measuring an object by correlating displaced and simulated object images
JP2665548B2 (en) * 1994-12-19 1997-10-22 川崎重工業株式会社 Shape evaluation method and shape evaluation device
US7581191B2 (en) * 1999-11-15 2009-08-25 Xenogen Corporation Graphical user interface for 3-D in-vivo imaging
JP3972647B2 (en) * 2001-12-19 2007-09-05 株式会社日立製作所 Diagnostic imaging apparatus, diagnostic imaging system, and diagnostic imaging method
JP2005173336A (en) * 2003-12-12 2005-06-30 Olympus Corp Industrial endoscope device and shape dimension measuring method using the same
US8073213B2 (en) * 2006-10-30 2011-12-06 General Electric Company Method for generating a registered image relative to a cardiac cycle and a respiratory cycle of a person
US8861834B2 (en) * 2007-03-09 2014-10-14 Omron Corporation Computer implemented method for recognizing an object based on a correspondence relationship between object feature points and pre-registered model feature points
DE602007003849D1 (en) * 2007-10-11 2010-01-28 Mvtec Software Gmbh System and method for 3D object recognition
US9305390B2 (en) * 2009-02-24 2016-04-05 Textron Innovations Inc. System and method for mapping two-dimensional image data to a three-dimensional faceted model
US8531479B2 (en) * 2009-06-12 2013-09-10 Olympus Corporation Endoscope apparatus and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7314047B2 (en) 2019-12-26 2023-07-25 三和シヤッター工業株式会社 Vertical frame structure for opening

Also Published As

Publication number Publication date
JP2013002956A (en) 2013-01-07
WO2012173141A1 (en) 2012-12-20
EP2722638A4 (en) 2014-12-10
US20140098091A1 (en) 2014-04-10
EP2722638B1 (en) 2019-10-09
US9275473B2 (en) 2016-03-01
EP2722638A1 (en) 2014-04-23

Similar Documents

Publication Publication Date Title
JP5791976B2 (en) Image processing apparatus, image processing method, and program
JP2013167481A (en) Image processor and program
US20190026955A1 (en) Image processing method, display device, and inspection system
JP5248806B2 (en) Information processing apparatus and information processing method
JP6594129B2 (en) Information processing apparatus, information processing method, and program
JP2019519387A (en) Visualization of Augmented Reality Robot System
EP1435280A2 (en) A method and a system for programming an industrial robot
JP7238060B2 (en) Information processing device, its control method, and program
JP7182976B2 (en) Information processing device, information processing method, and program
JP2009087161A (en) Image processor and image processing method
JP7448633B2 (en) A three-dimensional measuring device that generates position information on the surface of an object based on images captured by multiple cameras.
US11055865B2 (en) Image acquisition device and method of operating image acquisition device
WO2017155005A1 (en) Image processing method, display device, and inspection system
KR100908084B1 (en) Recording medium recording method of 3-dimensional coordinates of subject and program for executing the method in computer
JP2006215750A (en) Image processing method, image processor
JP6095429B2 (en) Measuring device and program
JP2014186588A (en) Simulation apparatus, program, and image generating method
WO2021171839A1 (en) Image display device, image display method, and program
BARON et al. APPLICATION OF AUGMENTED REALITY TOOLS TO THE DESIGN PREPARATION OF PRODUCTION.
JP2012154672A (en) Image processing method, program, and image processing device
JP2018132847A (en) Information processing apparatus, information processing method, and program
JP2013096938A (en) Image processing system, image processing method and program
US6856325B2 (en) Information processing method and apparatus
JP2005165665A (en) Operation assist device and method for virtual object, computer program, and computer readable recording medium
EP2390843B1 (en) Visualization processing method and apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140611

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: 20150728

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150805

R151 Written notification of patent or utility model registration

Ref document number: 5791976

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371