(57)【要約】【課題】心臓メッシュモデルのゆがみを抑止する。【解決手段】生体モデル生成装置１０は、特定の心臓の複数の弁輪の上に設定された複数の目標点１それぞれに対応する複数の制御点３を、心臓のメッシュモデル２の複数の弁輪上に設定する。次に生体モデル生成装置１０は、複数の制御点３の位置についての第１評価値と第２評価値とに基づいて、メッシュモデル２上での制御点３の位置を決定する。第１評価値は、同一弁輪に属する目標点１間での相対位置の維持度合いを示す値である。第２評価値は、異なる弁輪に属する目標点１間での相対位置の維持度合いを示す値である。そして生体モデル生成装置１０は、複数の制御点３のそれぞれが対応する目標点１の位置に重なるように、メッシュモデル２を変形する。【選択図】図１
2019204263.tif 000002
【特許請求の範囲】
【請求項１】
心臓の３次元のメッシュモデルを示すメッシュモデルデータと、特定の心臓の複数の弁輪の上に設定された複数の目標点の３次元空間内での位置を示す目標点データとを記憶する記憶部と、
前記複数の目標点に対応する複数の制御点を、前記メッシュモデルの複数の弁輪上に設定し、同一弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第１評価値と、異なる弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第２評価値とに基づいて、前記メッシュモデルの弁輪上での前記複数の制御点それぞれの位置を決定し、前記３次元空間内に前記メッシュモデルを配置したときに、前記メッシュモデル上の決定された位置に配置された前記複数の制御点それぞれが、対応する目標点の位置に重なるように、前記メッシュモデルを変形する処理部と、
を有する生体モデル生成装置。
【請求項２】
前記処理部は、前記第１評価値と前記第２評価値との合計を最適化する前記複数の制御点それぞれの位置を決定する、
請求項１記載の生体モデル生成装置。
【請求項３】
前記処理部は、同一弁輪上で隣接する制御点の対である隣接制御点対の間の距離と、前記隣接制御点対に対応する目標点対間の距離との比較結果に基づいて、前記第１評価値を算出する、
請求項１または２記載の生体モデル生成装置。
【請求項４】
前記処理部は、異なる弁輪上にある制御点の対である遠隔制御点対の間の距離と、前記遠隔制御点対に対応する目標点対間の距離との比較結果に基づいて、前記第２評価値を算出する、
請求項１ないし３のいずれかに記載の生体モデル生成装置。
【請求項５】
前記処理部は、前記遠隔制御点対間の距離を閾値と比較し、前記遠隔制御点対間の距離が前記閾値以下の場合、前記遠隔制御点対間の距離に応じた値を前記第２評価値に加算し、前記遠隔制御点対間の距離が前記閾値を超える場合、前記遠隔制御点の前記第２評価値への影響を抑止する、
請求項４記載の生体モデル生成装置。
【請求項６】
前記処理部は、肺動脈弁の弁輪に設定された制御点と僧帽弁の弁輪に設定された制御点との間の第１遠隔制御点対、および肺動脈弁の弁輪に設定された制御点と三尖弁の弁輪に設定された制御点との間の第２遠隔制御点対の前記第２評価値への影響を抑止する、
請求項４または５記載の生体モデル生成装置。
【請求項７】
前記複数の目標点は、前記特定の心臓の複数の弁輪の上の第１目標点と、前記特定の心臓の左心室と右心室との間の心筋境界上の第２目標点とを含み、
前記処理部は、前記第１目標点に対応する前記メッシュモデルの弁輪上の第１制御点の位置を決定後、前記第２目標点に対応する第２制御点を、前記メッシュモデルの左心室と右心室との間の心筋境界上に設定し、前記第１目標点と前記第２目標点との間の相対位置が、対応する前記第１制御点と前記第２制御点との間で維持されている度合いを示す第３評価値に基づいて、前記メッシュモデルの心筋境界上での前記第２制御点の位置を決定する、
請求項１ないし６のいずれかに記載の生体モデル生成装置。
【請求項８】
コンピュータが、
心臓の３次元のメッシュモデルを示すメッシュモデルデータと、特定の心臓の複数の弁輪の上に設定された複数の目標点の３次元空間内での位置を示す目標点データとを、記憶装置に記憶し、
前記複数の目標点に対応する複数の制御点を、前記メッシュモデルの複数の弁輪上に設定し、
同一弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第１評価値と、異なる弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第２評価値とに基づいて、前記メッシュモデルの弁輪上での前記複数の制御点それぞれの位置を決定し、
前記３次元空間内に前記メッシュモデルを配置したときに、前記メッシュモデル上の決定された位置に配置された前記複数の制御点それぞれが、対応する目標点の位置に重なるように、前記メッシュモデルを変形する、
生体モデル生成方法。
【請求項９】
コンピュータに、
心臓の３次元のメッシュモデルを示すメッシュモデルデータと、特定の心臓の複数の弁輪の上に設定された複数の目標点の３次元空間内での位置を示す目標点データとを、記憶装置に記憶し、
前記複数の目標点に対応する複数の制御点を、前記メッシュモデルの複数の弁輪上に設定し、
同一弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第１評価値と、異なる弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第２評価値とに基づいて、前記メッシュモデルの弁輪上での前記複数の制御点それぞれの位置を決定し、
前記３次元空間内に前記メッシュモデルを配置したときに、前記メッシュモデル上の決定された位置に配置された前記複数の制御点それぞれが、対応する目標点の位置に重なるように、前記メッシュモデルを変形する、
処理を実行させる生体モデル生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、生体モデル生成装置、生体モデル生成方法、および生体モデル生成プログラムに関する。
【背景技術】
【０００２】
近年、医療関係者と工学関係者が連係して、医療に関する新技術開発が行われている。このような活動は、「医工連携」と呼ばれる。医工連携の活動により研究されている技術の１つとして、コンピュータシミュレーションを利用した臓器の動態の解析がある。臓器の動態解析シミュレーションとしては、例えば患者個別の心臓シミュレーションがある。
【０００３】
心臓シミュレーションでは、コンピュータが、有限要素法によって解析を行う。有限要素法による心臓の動態解析のシミュレーションでは、解析対象の心臓のメッシュモデルが用いられる。例えば患者固有の心臓シミュレーションの場合、医療画像に基づいて、コンピュータが患者固有の心臓メッシュモデルを生成する。患者固有の心臓シミュレーションを高精度に行うには、患者の心臓が、患者固有の心臓メッシュモデルで正確に再現されていることが求められる。特に弁付近は流体の境界となる場合があるため、心臓メッシュモデルにおいて、弁輪の形状を医療画像に忠実に再現することは重要である。
【０００４】
精度の高い心臓メッシュモデルを作成するのに有用な技術としては、例えば、心臓弁の各種データを計測可能な鮮明な３次元心臓弁画像を自動で抽出する方法がある。また十分な数の断層画像を得られない場合において、高精度の３次元形状データを生成する形状データ生成方法がある。さらに、ソースランドマークおよび当該ソースランドマークに対応するターゲットランドマークが与えられたときに、ソースランドマークがターゲットランドマークに重なるようにモデルを変形する技術が考えられている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２００６／０６８２７１号
【特許文献２】国際公開第２０１４／０１６８９５号
【非特許文献】
【０００６】
【非特許文献１】"Principal Warps: Thin-Plate Splines Warp and the Decomposition of Deformations" IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE Fred L, Bookstein VOL 11, NO.6 JUNE 1989
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、従来の技術では、心臓メッシュモデルの弁輪を、その周囲の形状も含めて高精度にモデリングすることが困難である。すなわち、心臓メッシュモデルは節点と節点のつながりを表現する辺からできており、各弁輪はメッシュでつながっている。従来技術では、コンピュータは、弁輪をモデリングする際、個別に４つの弁輪（大動脈弁、僧帽弁、三尖弁、肺動脈弁）をモデリングしており、弁輪間の位置関係が適切に調整されていない。そのため、個別にモデリングすることによって、心臓メッシュモデルにおける弁輪をつないでいる部分の構造が不自然にゆがんでしまう。心臓メッシュモデルの不自然なゆがみは、その心臓メッシュモデルを利用したシミュレーションの精度劣化の原因となる。
【０００８】
１つの側面では、本件は、心臓メッシュモデルのゆがみを抑止することを目的とする。
【課題を解決するための手段】
【０００９】
１つの案では、以下に示す記憶部と処理部とを有する生体モデル生成装置が提供される。
記憶部は、心臓の３次元のメッシュモデルを示すメッシュモデルデータと、特定の心臓の複数の弁輪の上に設定された複数の目標点の３次元空間内での位置を示す目標点データとを記憶する。処理部は、複数の目標点に対応する複数の制御点を、メッシュモデルの複数の弁輪上に設定する。次に処理部は、同一弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第１評価値と、異なる弁輪に属する目標点間での相対位置が対応する制御点間で維持されている度合いを示す第２評価値とに基づいて、メッシュモデルの弁輪上で複数の制御点それぞれの位置を決定する。そして処理部は、３次元空間内にメッシュモデルを配置したときに、メッシュモデル上の決定された位置に配置された複数の制御点それぞれが、対応する目標点の位置に重なるように、メッシュモデルを変形する。
【発明の効果】
【００１０】
１態様によれば、心臓メッシュモデルのゆがみを抑止することができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態によるメッシュモデル生成例を示す図である。
【図２】第２の実施の形態に用いるコンピュータのハードウェアの一例を示す図である。
【図３】コンピュータにおける心臓メッシュモデル生成機能を示すブロック図である。
【図４】テンプレートメッシュモデルの一例を示す図である。
【図５】セグメンテーションの一例を示す図である。
【図６】弁輪上に設定された画像ランドマークの一例を示す図である。
【図７】心筋境界上に設定された画像ランドマークの一例を示す図である。
【図８】３次元メッシュモデル生成処理の手順の一例を示すフローチャートである。
【図９】テンプレートランドマーク位置計算処理の手順の一例を示すフローチャートである。
【図１０】弁輪上に設定されたテンプレートランドマークの一例を示す図である。
【図１１】弁輪テンプレートランドマーク位置計算処理の手順の一例を示すフローチャートである。
【図１２】画像ランドマークの配置例を示す図である。
【図１３】テンプレートメッシュモデルにおける弁輪間の最小値と最大値とを示す図である。
【図１４】画像ランドマーク間の最小値と最大値とを示す図である。
【図１５】異なる弁輪上のテンプレートランドマーク間の距離とエネルギーとの関係を示す図である。
【図１６】重要度の低い接続をカットした場合のテンプレートランドマーク間の接続の一例を示す図である。
【図１７】局所解に陥ることを抑止する方法の一例を示す図である。
【図１８】心筋境界テンプレートランドマーク位置計算処理の手順の一例を示すフローチャートである。
【図１９】ＴＰＳＷａｒｐを説明する図である。
【図２０】画像データ再構築処理の手順の一例を示すフローチャートである。
【図２１】バウンディングボックスの一例を示す図である。
【図２２】マッピング処理の手順の一例を示すフローチャートである。
【図２３】マッピング処理後の３次元形状データの一例を示す図である。
【図２４】境界設定処理の手順の一例を示すフローチャートである。
【図２５】境界判定処理後の３次元形状データの一例を示す図である。
【図２６】補間処理の手順の一例を示すフローチャートの前半である。
【図２７】補間処理を説明する図である。
【図２８】補間処理の手順の一例を示すフローチャートの後半である。
【図２９】画像データ再構築処理によって生成された３次元形状データの一例を示す図である。
【図３０】変形後のメッシュモデルの形状にゆがみが生じる原因を示す図である。
【図３１】変形後のメッシュモデルの形状のゆがみの発生を抑止した例を示す図である。
【図３２】メッシュモデル変形処理の手順の一例を示すフローチャートである。
【図３３】変形対象要素メッシュモデル変形処理の手順の一例を示すフローチャートである。
【図３４】ランドマーク設定処理の手順の一例を示すフローチャートである。
【図３５】境界点探索処理の手順の一例を示すフローチャートである。
【図３６】頂点ｖが目標形状の内側に存在する場合の一例を示す図である。
【図３７】頂点ｖが目標形状の外側に存在する場合の一例を示す図である。
【図３８】探索点が境界点に達する前に変形前形状を貫通するような場合の第１の例を示す図である。
【図３９】探索点が境界点に達する前に変形前形状を貫通するような場合の第２の例を示す図である。
【図４０】探索点の移動例を示す図である。
【図４１】境界メッシュモデル生成処理の手順の一例を示すフローチャートである。
【図４２】患者の心臓の形状を示すメッシュモデルの一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第１の実施の形態〕
まず、第１の実施の形態について説明する。
【００１３】
図１は、第１の実施の形態によるメッシュモデル生成例を示す図である。第１の実施の形態に係る生体モデル生成方法は、例えば生体モデル生成装置１０を用いて実現される。生体モデル生成装置１０は、記憶部１１と処理部１２とを有する。記憶部１１は、例えば生体モデル生成装置１０が有するメモリ、またはストレージ装置である。処理部１２は、例えば生体モデル生成装置１０が有するプロセッサ、または演算回路である。生体モデル生成装置１０は、例えば、生体モデル生成方法の実行手順を記述した生体モデル生成プログラムを処理部１２で実行させることで、第１の実施の形態に係る生体モデル生成方法を実現する。
【００１４】
記憶部１１は、メッシュモデルデータ１１ａと目標点データ１１ｂとを記憶する。
メッシュモデルデータ１１ａは、心臓の３次元のメッシュモデル２を示すデータである。例えばメッシュモデルデータ１１ａには、メッシュモデル２に含まれる頂点の座標と、メッシュモデル２の各面を示すメッシュごとの、そのメッシュに含まれる頂点の識別情報とが含まれる。メッシュモデルデータ１１ａは、標準的な心臓の形状を３次元モデルで表したものである。
【００１５】
目標点データ１１ｂは、特定の心臓の複数の弁輪の上に設定された複数の目標点１の３次元空間内での位置を示すデータである。例えば目標点データ１１ｂは、治療対象の患者の心臓の断層写真上で、ユーザによって指定された位置に基づいて生成されている。
【００１６】
処理部１２は、目標点データ１１ｂに基づいてメッシュモデル２を変形することで、目標点データ１１ｂの生成元となった特定の心臓の形状を表すメッシュモデル２を生成する。例えば処理部１２は、以下の処理を行う。
【００１７】
処理部１２は、まず、複数の目標点１それぞれに対応する複数の制御点３を、メッシュモデル２の複数の弁輪上に設定する。次に処理部１２は、複数の制御点３の位置に関する第１評価値と第２評価値とに基づいて、メッシュモデル２上での複数の制御点３の位置を決定する。第１評価値は、同一弁輪に属する目標点１間での相対位置が対応する制御点３間で維持されている度合いを示す評価値である。第２評価値は、異なる弁輪に属する目標点１間での相対位置が対応する制御点３間で維持されている度合いを示す評価値である。処理部１２は、例えば第１評価値と第２評価値との合計を最適化する複数の制御点３の位置を決定する。そして処理部１２は、複数の制御点３それぞれの位置を、決定した位置に変更する。
【００１８】
例えば処理部１２は、第１評価値を算出するために、同一弁輪上で隣接する制御点３の対である隣接制御点対を生成する。そして処理部１２は、隣接制御点対の間の距離と、その隣接制御点対に対応する目標点対間の距離との比較結果に基づいて、第１評価値を算出する。距離の比較は、例えば距離の差分または比を用いた計算によって行われる。相対位置が維持されている程、第１評価値の値が小さくなる場合、処理部１２は、隣接制御点対の間の距離が、隣接制御点対に対応する目標点対間の距離に応じた第１基準値から離れる程第１評価値を大きくする。このような計算は、例えば隣接制御点対の間に仮想的なばねを設定した場合のばねエネルギーの計算式で表すことができる。この場合、隣接制御点対の間のばねの自然長を表すパラメータが、その隣接制御点対に関する第１基準値となる。そして処理部１２は、例えば隣接制御点対ごとに計算したばねエネルギーの合計を、複数の制御点３の位置に関する第１評価値とする。
【００１９】
また、例えば処理部１２は、第２評価値を算出するために、異なる弁輪上にある制御点３の対である遠隔制御点対を生成する。そして処理部１２は、遠隔制御点対の間の距離と、その遠隔制御点対に対応する目標点対間の距離との比較結果に基づいて、第１評価値を算出する。距離の比較は、例えば距離の差分または比を用いた計算によって行われる。相対位置が維持されている程、第２評価値の値が小さくなる場合、処理部１２は、遠隔制御点対の間の距離が、遠隔制御点対に対応する目標点対間の距離に応じた第２基準値から離れる程第２評価値を大きくする。このような計算は、例えば遠隔制御点対の間に仮想的なばねを設定した場合のばねエネルギーの計算式で表すことができる。この場合、遠隔制御点対の間のばねの自然長を表すパラメータが、その遠隔制御点対に関する第２基準値となる。そして処理部１２は、遠隔制御点対ごとに計算したばねエネルギーの合計を、複数の制御点３の位置に関する第２評価値とする。
【００２０】
複数の制御点３の位置を変更後、処理部１２は、メッシュモデル２を変形する。例えば処理部１２は、３次元空間内にメッシュモデル２を配置したときに、メッシュモデル２上の決定された位置に配置された複数の制御点３のそれぞれが、対応する目標点１の位置に重なるように、メッシュモデル２を変形する。変形後のメッシュモデル２ａは、目標点データ１１ｂの生成元となった特定の心臓の形状を表している。
【００２１】
このように、生体モデル生成装置１０によれば、制御点３について、同じ弁輪内での位置関係に加え、他の弁輪との間の位置関係も適切となるように、位置が決定される。その結果、制御点３が設定された位置が対応する目標点１の位置に重なるようにメッシュモデル２を変形した際に、異なる弁輪の間の心筋が不自然にゆがむことが抑止される。
【００２２】
なお処理部１２は、第２評価値を計算する際に、所定の閾値よりも距離が離れた遠隔点対による第２評価値への影響を抑止してもよい。例えば処理部１２は、遠隔制御点対間の距離を閾値と比較する。そして処理部１２は、遠隔制御点対間の距離が閾値以下の場合、遠隔制御点対間の距離に応じた値を第２評価値に加算する。他方、処理部１２は、遠隔制御点対間の距離が閾値を超える場合、遠隔制御点対に基づく第２評価値への加算値を０とする。
【００２３】
このように距離が閾値より離れた遠隔制御点対の第２評価値への影響を抑止することで、第１評価値と第２評価値との合計を最適化する複数の制御点３の位置の探索が容易となる。すなわち、距離が閾値より離れた遠隔制御点対の間には多くの心筋がある。そのため、対となる制御点３の相対位置が適切な位置から多少ずれていても、メッシュモデル２を変形する際に、間に存在する心筋の形状を適切に変形させれば、メッシュモデル２が不自然にゆがむことを抑止することは可能である。他方、第２評価値に影響を及ぼす遠隔制御点対の数が多すぎると、第１評価値と第２評価値との合計を最適化する複数の制御点３の位置の探索において、局所解に陥る可能性が高くなる。そこで、距離が閾値より離れた遠隔制御点対のように、メッシュモデル２のゆがみの発生要因となる可能性が低い遠隔制御点対は、第２評価値への影響を抑止することで、最適化の解探索で局所解に陥ることを抑止することができる。局所解に陥ることが抑止できることで、複数の制御点３それぞれの位置の精度が向上する。
【００２４】
また心臓には、大動脈弁、僧帽弁、肺動脈弁、および三尖弁がある。これらの弁のうち、比較的に離れた位置にある弁の弁輪上の制御点の間の距離は、第２評価値に影響しないようにしてもよい。例えば処理部１２は、肺動脈弁の弁輪に設定された制御点と僧帽弁の弁輪に設定された制御点との間の遠隔制御点対、および肺動脈弁の弁輪に設定された制御点と三尖弁の弁輪に設定された制御点との間の遠隔制御点対の第２評価値への影響を抑止する。これにより、最適化の解探索で局所解に陥ることを抑止することができる。
【００２５】
さらに処理部１２は、弁輪だけでなく、メッシュモデル２の左心室と右心室との間の心筋境界上の適切な位置に、制御点を設定することができる。心筋境界上にも制御点を設定する場合、複数の目標点１には、特定の心臓の複数の弁輪の上の第１目標点と、特定の心臓の左心室と右心室との間の心筋境界上の第２目標点とが含まれる。処理部１２は、まず、第１複数の目標点に対応するメッシュモデル２の弁輪上の第１制御点の位置を決定する。次に処理部１２は、第１制御点の位置を、決定した位置に固定し、第２複数の目標点に対応する第２制御点を、メッシュモデル２の左心室と右心室との間の心筋境界上に設定する。そして処理部１２は、第１目標点と第２目標点との間の相対位置が、対応する第１制御点と第２制御点との間で維持されている度合いを示す第３評価値に基づいて、メッシュモデル２の心筋境界上での第２制御点の位置を決定する。このようにして決定した第１制御点と第２制御点とに基づいてメッシュモデルを変形することで、弁輪付近だけでなく、心室の心筋についても、ゆがみのない自然な形状となるように、患者の心臓をモデリングすることができる。
【００２６】
患者の心臓がメッシュモデルで正確に再現することができれば、そのメッシュモデルを用いた心臓の動態解析シミュレーションを高精度に行うことが可能となる。
〔第２の実施の形態〕
次に第２の実施の形態について説明する。
【００２７】
図２は、第２の実施の形態に用いるコンピュータのハードウェアの一例を示す図である。コンピュータ１００は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１には、バス１０９を介してメモリ１０２と複数の周辺機器が接続されている。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、またはＤＳＰ（Digital Signal Processor）である。プロセッサ１０１がプログラムを実行することで実現する機能の少なくとも一部を、ＡＳＩＣ（Application Specific Integrated Circuit）、ＰＬＤ（Programmable Logic Device）などの電子回路で実現してもよい。
【００２８】
メモリ１０２は、コンピュータ１００の主記憶装置として使用される。メモリ１０２には、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ１０２には、プロセッサ１０１による処理に利用する各種データが格納される。メモリ１０２としては、例えばＲＡＭ（Random Access Memory）などの揮発性の半導体記憶装置が使用される。
【００２９】
バス１０９に接続されている周辺機器としては、ストレージ装置１０３、グラフィック処理装置１０４、入力インタフェース１０５、光学ドライブ装置１０６、機器接続インタフェース１０７およびネットワークインタフェース１０８がある。
【００３０】
ストレージ装置１０３は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置１０３は、コンピュータの補助記憶装置として使用される。ストレージ装置１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置１０３としては、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）を使用することができる。
【００３１】
グラフィック処理装置１０４には、モニタ２１が接続されている。グラフィック処理装置１０４は、プロセッサ１０１からの命令に従って、画像をモニタ２１の画面に表示させる。モニタ２１としては、有機ＥＬ（Electro Luminescence）を用いた表示装置や液晶表示装置などがある。
【００３２】
入力インタフェース１０５には、キーボード２２とマウス２３とが接続されている。入力インタフェース１０５は、キーボード２２やマウス２３から送られてくる信号をプロセッサ１０１に送信する。なお、マウス２３は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
【００３３】
光学ドライブ装置１０６は、レーザ光などを利用して、光ディスク２４に記録されたデータの読み取りを行う。光ディスク２４は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク２４には、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。
【００３４】
機器接続インタフェース１０７は、コンピュータ１００に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース１０７には、メモリ装置２５やメモリリーダライタ２６を接続することができる。メモリ装置２５は、機器接続インタフェース１０７との通信機能を搭載した記録媒体である。メモリリーダライタ２６は、メモリカード２７へのデータの書き込み、またはメモリカード２７からのデータの読み出しを行う装置である。メモリカード２７は、カード型の記録媒体である。
【００３５】
ネットワークインタフェース１０８は、ネットワーク２０に接続されている。ネットワークインタフェース１０８は、ネットワーク２０を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
【００３６】
コンピュータ１００は、以上のようなハードウェア構成によって、第２の実施の形態の処理機能を実現することができる。なお、第１の実施の形態に示した生体モデル生成装置１０も、図３に示したコンピュータ１００と同様のハードウェアにより実現することができる。
【００３７】
コンピュータ１００は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第２の実施の形態の処理機能を実現する。コンピュータ１００に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、コンピュータ１００に実行させるプログラムをストレージ装置１０３に格納しておくことができる。プロセッサ１０１は、ストレージ装置１０３内のプログラムの少なくとも一部をメモリ１０２にロードし、プログラムを実行する。またコンピュータ１００に実行させるプログラムを、光ディスク２４、メモリ装置２５、メモリカード２７などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ１０１からの制御により、ストレージ装置１０３にインストールされた後、実行可能となる。またプロセッサ１０１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００３８】
図３は、コンピュータにおける心臓メッシュモデル生成機能を示すブロック図である。コンピュータ１００は、記憶部１１０、ランドマークペア生成部１２０、画像データ再構築部１３０、およびメッシュ変形部１４０を有する。
【００３９】
記憶部１１０は、テンプレートメッシュモデルデータ１１１、断層画像データ１１２ａ，１１２ｂ，・・・、セグメンテーションデータ１１３、弁輪画像ランドマークデータ１１４、心筋境界画像ランドマークデータ１１５、３次元形状データ１１６、および変形メッシュモデルデータ１１７を記憶する。記憶部１１０は、例えばメモリ１０２またはストレージ装置１０３の一部の記憶領域である。
【００４０】
テンプレートメッシュモデルデータ１１１は、人の標準的な心臓の３次元の形状（内部構造を含む）のメッシュモデル（テンプレートメッシュモデル）を示すデータである。例えばテンプレートメッシュモデルデータ１１１には、テンプレートメッシュモデルに含まれるノード座標と、複数のノード（頂点）によって所定の形状（例えば３角形）を定義するメッシュを示すメッシュ情報とが含まれる。ノード座標は、ノードＩＤごとの、各ノードの３次元空間での座標である。メッシュ情報は、例えばメッシュに含まれるノードのノードＩＤのリストである。
【００４１】
断層画像データ１１２ａ，１１２ｂ，・・・は、ＣＴ（Computed Tomography）やＭＲＩ（Magnetic Resonance Imaging）などによって患者の心臓を撮影することで得られた、患者の心臓の断層画像を示すデータである。
【００４２】
セグメンテーションデータ１１３は、断層画像に現れた要素（左心室内流体、右心室内流体、心筋など）の領域を示すデータである。例えばセグメンテーションデータ１１３は、断層画像に対して、各要素が占める領域の輝度値を、その要素に対応するラベル値で塗りつぶしたデータである。
【００４３】
弁輪画像ランドマークデータ１１４は、断層画像に現れた心臓の弁の弁輪に設定したランドマーク（画像ランドマーク）の位置を示すデータである。画像ランドマークは、メッシュモデルを変形させる際の目標を表す点である。心筋境界画像ランドマークデータ１１５は、断層画像に現れた心臓の左心室と右心室との境界に設定した画像ランドマークの位置を示すデータである。各画像ランドマークの位置は、３次元の座標値で表される。画像ランドマークは、第１の実施の形態における目標点１（図１参照）の一例である。
【００４４】
３次元形状データ１１６は、断層画像データ１１２ａ，１１２ｂ，・・・とセグメンテーションデータ１１３とに基づいて生成された、患者の心臓の３次元形状を示すデータである。３次元形状データ１１６では、３次元空間に設けられたバウンディングボックス内のボクセルごとに、患者の心臓の内部か、外部か、境界かが設定されている。
【００４５】
変形メッシュモデルデータ１１７は、テンプレートメッシュモデルデータ１１１によって表されるテンプレートメッシュモデルを変形することで生成された、患者の心臓を表す３次元のメッシュモデルを示すデータである。
【００４６】
ランドマークペア生成部１２０は、画像ランドマークと、テンプレートメッシュモデル上のランドマーク（テンプレートランドマーク）とのペアを生成する。テンプレートランドマークは、メッシュモデルを変形させる際に、対応する画像ランドマーク上に移動させるテンプレートモデル上の位置を示すデータである。テンプレートランドマークは、例えば、テンプレートランドマークが設定された位置にある、テンプレートモデルのノードのノードＩＤで表される。テンプレートランドマークは、第１の実施の形態における制御点３（図１参照）の一例である。
【００４７】
画像データ再構築部１３０は、断層画像データ１１２ａ，１１２ｂ，・・・とセグメンテーションデータ１１３とに基づいて、心臓のテンプレートメッシュモデルを変形させる際の目標形状となる心臓の３次元形状データを生成する。
【００４８】
メッシュ変形部１４０は、テンプレートメッシュモデルデータ１１１に示されるテンプレートメッシュモデルを、患者個人の心臓の形状となるように変形する。例えばメッシュ変形部１４０は、ランドマークペア生成部１２０で示された画像ランドマークとテンプレートランドマークとのペアのうち、テンプレートランドマークの位置が画像ランドマークの位置に移動するように、テンプレートメッシュモデルを変形する。
【００４９】
なお、図３に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータ１００に実行させることで実現することができる。
コンピュータ１００を用いて、患者の心臓の３次元モデルを作成する場合、まず、テンプレートメッシュモデルを表すテンプレートメッシュモデルデータ１１１と、患者の心臓の形状を表す断層画像データ１１２ａ，１１２ｂ，・・・が用意される。
【００５０】
図４は、テンプレートメッシュモデルの一例を示す図である。図４には、心室のテンプレートメッシュモデル３０が示されている。テンプレートメッシュモデル３０は、例えば、流体面メッシュモデル３１、心筋面メッシュモデル３２、および境界面メッシュモデル３３を含む。流体面メッシュモデル３１は、心臓の左心室と右心室内の血液が流れる領域と、心内膜との境界面を表すメッシュモデルである。心筋面メッシュモデル３２は、心外膜を表すメッシュモデルである。境界面メッシュモデル３３は、心臓内の血液が流れる領域と心臓外部との境界面を表すメッシュモデルである。
【００５１】
ユーザは、図４に示すようなテンプレートメッシュモデル３０を表すテンプレートメッシュモデルデータ１１１を、例えば予め記憶部１１０に格納する。またユーザは、患者の断層画像データ１１２ａ，１１２ｂ，・・・を記憶部１１０に格納する。そしてユーザは、コンピュータ１００を用いて、患者の断層画像データ１１２ａ，１１２ｂ，・・・に表された心臓の断層画像のセグメンテーションを行う。コンピュータ１００は、セグメンテーションの結果を、セグメンテーションデータ１１３として記憶部１１０に格納する。
【００５２】
図５は、セグメンテーションの一例を示す図である。ＣＴまたはＭＲＩなどの装置を用いて、患者の心臓４０の複数の箇所における断層画像４１〜４４を得ることができる。断層画像４１〜４４には、心臓の３次元形状を定義するための３次元空間におけるｚ軸の座標値が設定される。この場合、断層画像４１〜４４は、ｘ−ｙ平面に平行な平面上にあることとなり、断層画像４１〜４４内の点は、３次元空間内の座標値に対応する。
【００５３】
ユーザは、コンピュータ１００に断層画像４１〜４４それぞれを表示させ、心臓に含まれる所定の要素が、画像のどの領域に現れているのかを指定する。例えば、ユーザは、断層画像４４から、左心室内の血液が写し出された左心室流体領域５１を指定する。またユーザは、断層画像４４から、右心室内の血液が写し出された右心室流体領域５２を指定する。さらにユーザは、断層画像４４から、心筋が写し出された心筋領域５３を指定する。
【００５４】
複数の断層画像４１〜４４それぞれについて各要素の領域が指定されると、コンピュータ１００が、指定された領域内の輝度値を、該当する要素のラベル値に変更する。例えばコンピュータ１００は、左心室流体領域５１のラベル値を「１」、右心室流体領域５２のラベル値を「２」、心筋領域５３のラベル値を「３」とする。
【００５５】
またユーザは、コンピュータ１００に対して、断層画像４１〜４４に写し出された弁輪上の画像ランドマークの位置を指定する。
図６は、弁輪上に設定された画像ランドマークの一例を示す図である。心臓には、大動脈弁、肺動脈弁、三尖弁、僧帽弁がある。各弁の外周部分が弁輪６１〜６４である。ユーザは、各弁輪６１〜６４上の複数の画像ランドマーク６５の位置を、コンピュータ１００に入力する。コンピュータ１００は、複数の画像ランドマーク６５それぞれの位置の座標を、弁輪画像ランドマークデータ１１４として、記憶部１１０に格納する。
【００５６】
またユーザは、コンピュータ１００に対して、断層画像４１〜４４に写し出された心臓の心筋境界上の画像ランドマークの位置を指定する。
図７は、心筋境界上に設定された画像ランドマークの一例を示す図である。例えばユーザは、断層画像４１〜４４から、患者の心臓４０の左心室４０ａと右心室４０ｂとの境界である心筋境界４０ｃを見つけ出す。そして、ユーザは、コンピュータ１００に対して、心筋境界４０ｃ上の複数の画像ランドマーク６６の位置を、コンピュータ１００に入力する。コンピュータ１００は、複数の画像ランドマーク６６それぞれの位置の座標を、心筋境界画像ランドマークデータ１１５として、記憶部１１０に格納する。
【００５７】
セグメンテーションと画像ランドマークの設定が完了すると、ユーザは、コンピュータ１００に、患者の心臓の３次元メッシュモデルの生成指示を入力する。するとコンピュータ１００が、３次元メッシュモデル生成処理を開始する。
【００５８】
以下、３次元メッシュモデル生成処理について、詳細に説明する。
図８は、３次元メッシュモデル生成処理の手順の一例を示すフローチャートである。以下、図８に示す処理をステップ番号に沿って説明する。
【００５９】
［ステップＳ１０１］ランドマークペア生成部１２０は、記憶部１１０から画像ランドマークの位置を取得する。例えばランドマークペア生成部１２０は、弁輪画像ランドマークデータ１１４に基づいて、弁輪上の画像ランドマークの３次元空間での位置を取得する。またランドマークペア生成部１２０は、心筋境界画像ランドマークデータ１１５に基づいて、心筋境界の画像ランドマークの位置を取得する。
【００６０】
［ステップＳ１０２］ランドマークペア生成部１２０は、画像ランドマークに対応する、テンプレートメッシュモデル３０上に設定するテンプレートランドマークの位置を計算する。テンプレートランドマーク位置計算処理の詳細は後述する（図９参照）。ランドマークペア生成部１２０は、対応する画像ランドマークとテンプレートランドマークとを、１つのランドマークペアとする。
【００６１】
［ステップＳ１０３］メッシュ変形部１４０は、生成されたランドマークペアに基づいてテンプレートメッシュモデル３０を変形し、初期メッシュモデルを生成する。例えばメッシュ変形部１４０は、記憶部１１０内のテンプレートメッシュモデルデータ１１１に基づいて、３次元の心臓のメッシュモデルを生成する。そしてメッシュ変形部１４０は、テンプレートランドマークが、そのテンプレートランドマークに対応する画像ランドマークの位置に移動するように、メッシュモデルを変形する。
【００６２】
［ステップＳ１０４］画像データ再構築部１３０は、画像データ再構築処理を行う。画像データ再構築処理は、断層画像４１〜４４に基づいて、心臓のテンプレートメッシュモデル３０を変形させる際の目標形状となる心臓の３次元形状データを生成する処理である。画像データ再構築処理の詳細は後述する（図２０参照）。
【００６３】
［ステップＳ１０５］メッシュ変形部１４０は、ステップＳ１０３で生成した初期メッシュモデルを、ステップＳ１０４で生成した３次元形状データに合致するように変形する処理である。メッシュモデル変形処理の詳細は後述する（図３２参照）。
【００６４】
［ステップＳ１０６］メッシュ変形部１４０は、変形後のメッシュモデルにおける、心臓の境界面メッシュモデルを生成する。境界面メッシュモデル生成処理の詳細は後述する（図４１参照）。
【００６５】
［ステップＳ１０７］メッシュ変形部１４０は、初期メッシュモデルを変形することで得られたメッシュモデルをモニタ２１に表示する。そして処理を終了する。
このような手順で、患者の心臓の形状を表す３次元のメッシュモデルが生成される。生成されたメッシュモデルは、テンプレートランドマーク位置計算処理によって適切な位置にテンプレートランドマークが設定されることにより、ゆがみのない形状となる。
【００６６】
＜テンプレートランドマーク位置計算＞
次に、テンプレートランドマーク位置の計算方法について詳細に説明する。
図９は、テンプレートランドマーク位置計算処理の手順の一例を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。
【００６７】
［ステップＳ１１１］ランドマークペア生成部１２０は、まず弁輪テンプレートランドマークの位置を計算する。弁輪テンプレートランドマーク位置計算処理の詳細は後述する（図１１参照）。
【００６８】
［ステップＳ１１２］ランドマークペア生成部１２０は、心筋テンプレートランドマークの位置を計算する。心筋テンプレートランドマーク位置計算処理の詳細は後述する（図１７参照）。
【００６９】
このように、ランドマークペア生成部１２０は、まずは弁輪テンプレートランドマークの位置を計算し、次に心筋テンプレートランドマークの位置を計算する。これにより、画像ランドマークに対応するテンプレートメッシュ上のペアとなるテンプレートランドマークを得ることができる。
【００７０】
次に、心筋テンプレートランドマーク位置の計算処理について、詳細に説明する。ランドマークペア生成部１２０は、弁輪上のテンプレートランドマークの適切な位置を、弁輪上のテンプレートランドマークについての最適化問題を解くことによって計算する。以下、テンプレートランドマークの位置の最適化問題について説明する。
【００７１】
図１０は、弁輪上に設定されたテンプレートランドマークの一例を示す図である。図１０には、大動脈弁の弁輪７１上のテンプレートランドマーク７１ａ〜７１ｄと、僧帽弁の弁輪７２上のテンプレートランドマーク７２ａ〜７２ｅとが示されている。ここで、テンプレートランドマーク７１ａ〜７１ｄ，７２ａ〜７２ｅについて、配置したときの位置関係を保ちながら、テンプレートモデル上に点を再配置する場合を想定する。この場合、テンプレートランドマーク７１ａ〜７１ｄ，７２ａ〜７２ｅ間での位置関係には、同じ弁輪上のテンプレートランドマーク同士の位置関係と、異なる弁輪上のランドマーク同士の位置関係（図１０で破線で結んだ関係）とがある。最適化問題は、これらの２種類の位置関係について、弁輪上での配置順を保つように弁輪上のテンプレートランドマークを移動し、最適な位置を求める問題である。
【００７２】
図１１は、弁輪テンプレートランドマーク位置計算処理の手順の一例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
［ステップＳ１２１］ランドマークペア生成部１２０は、テンプレートメッシュモデル３０の弁輪部を曲線として表現するＢｓｐｌｉｎｅ補間関数（弁輪Ｂｓｐｌｉｎｅ関数）を計算する。
【００７３】
例えば、弁輪画像ランドマークデータ１１４では、画像ランドマークそれぞれについて、どの弁輪上にあるのかを表す種類を示す種別番号が設定されている。以下の例では、大動脈弁の種別番号は「０」、僧帽弁の種別番号は「１」、肺動脈弁の種別番号は「２」、三尖弁の種別番号は「３」である。このような弁輪画像ランドマークデータ１１４に基づいて、ランドマークペア生成部１２０は、画像ランドマーク群を、以下のような集合ｐで表す。
【００７４】
【数１】
2019204263.tif 000003
【００７５】
ここで、ｐ0は大動脈弁輪の画像ランドマーク群を表している。ｐ1は僧帽弁輪の画像ランドマーク群を表している。ｐ2は肺動脈弁輪の画像ランドマーク群を表している。ｐ3は三尖弁輪の画像ランドマーク群を表している。ｍ0，ｍ1，ｍ2，ｍ3は、それぞれ、大動脈弁、僧帽弁、肺動脈弁、三尖弁の画像ランドマーク数を表す１以上の整数である。ｐi,j（ｉ，ｊは、０以上の整数）は、３次元座標系における、種別番号ｉに対応する弁輪上のｊ番目の画像ランドマークの位置を表す。
【００７６】
図１２は、画像ランドマークの配置例を示す図である。図１２の例では、断層画像に示される大動脈弁の弁輪６１と僧帽弁の弁輪６２との画像ランドマークについて、時計回りに順番を表す数字が付与されている。
【００７７】
図１１の説明に戻る。ランドマークペア生成部１２０は、テンプレートメッシュモデル３０における、左心室の流体部を表す左心室メッシュモデルと右心室流体を表す右心室メッシュモデルとを利用して、弁輪の曲線式を求める。そのために、ランドマークペア生成部１２０は、まずテンプレートメッシュモデル３０における各弁輪に含まれるノードのノードＩＤを、テンプレートメッシュモデルデータ１１１から取得する。例えばユーザは、テンプレートメッシュモデルデータ１１１に、弁輪ごとに、その弁輪に含まれるノードのノードＩＤのリストを含めておく。ランドマークペア生成部１２０は、テンプレートメッシュモデルデータ１１１から、弁輪ごとのノードＩＤのリストを取得する。
【００７８】
次にランドマークペア生成部１２０は、弁輪ごとに、弁輪上のノードを通る曲線をＢＳｐｌｉｎｅ補間関数によって計算する。得られた曲線は、以下のような写像で表すことができる。
ｃi（ｓ）：Ｒ→Ｒ3（ｉ＝０，１，２，３）
ｓは、曲線の開始点から曲線上の点まで曲線を辿ったときの距離を示す実数である。上記の写像は、曲線式ｃi（ｓ）によって、実数Ｒが３次元の座標に変換されることを示している。Ｒ3は、実数空間である。
【００７９】
［ステップＳ１２２］ランドマークペア生成部１２０は、エネルギー関数を計算するためのパラメータ値｛ｌi,j｝、｛Ｌi1,j1,i2,j2｝を計算する。ここでｌi,jは内部エネルギーに関するばねモデルの自然長パラメータである。またＬi1,j1,i2,j2は外部エネルギーに関するばねモデルの自然長パラメータである。ｉ1，ｉ2は、外部エネルギーの計算対象となる２つの弁輪の種別番号である。ｊ1は、種別番号ｉ1の弁輪の画像ランドマークの番号である。ｊ2は、種別番号ｉ2の弁輪の画像ランドマークの番号である。なお、内部エネルギーは、第１の実施の形態における第１評価値の一例である。また外部エネルギーは、第１の実施の形態における第２評価値の一例である。
【００８０】
例えばランドマークペア生成部１２０は、以下の式により、内部エネルギーに関するばねモデルの自然長パラメータを計算する。
【００８１】
【数２】
2019204263.tif 000004
【００８２】
ここでｌciは、テンプレートモデル上で種別番号ｉの弁輪を表す曲線ｃiの１周の長さである。「ｋ＋１（ｍｏｄ  ｍi）」は、「ｋ＋１」を、種別番号ｉの弁輪のランドマーク数で除算したときの剰余を示している。「ｋ＝ｍi−１」のとき「ｋ＋１（ｍｏｄ  ｍi）＝０」となる。「ｊ＋１（ｍｏｄ  ｍi）」は、「ｊ＋１」を、種別番号ｉの弁輪のランドマーク数で除算したときの剰余を示している。「ｊ＝ｍi−１」のとき「ｊ＋１（ｍｏｄ  ｍi）＝０」となる。式（２）では、画像ランドマークに基づく弁輪の長さとテンプレートモデルでの弁輪の長さ（ｌci）との比を計算し、弁輪の各画像ランドマークについて、所定方向に隣接する次の画像ランドマークとの距離に、弁輪の長さの比を乗算している。乗算結果が、画像ランドマークごとの内部エネルギーとなる。画像ランドマークに基づく弁輪の長さとテンプレートモデルでの弁輪の長さ（ｌci）との比は、隣接する画像ランドマーク間の距離の合計を、テンプレートモデルでの弁輪の長さ（ｌci）で除算した値である。
【００８３】
またランドマークペア生成部１２０は、以下の式により、外部エネルギーに関するばねモデルの自然長パラメータを計算する。
【００８４】
【数３】
2019204263.tif 000005
【００８５】
ここでＣmin（添字ｉ1，ｉ2付き）は、種別番号ｉ1，ｉ2の２つの弁輪間の、テンプレートメッシュモデル３０上での最小距離を表している。Ｃmax（添字ｉ1，ｉ2付き）は、種別番号ｉ1，ｉ2の２つの弁輪間の、テンプレートモデル上での最大距離を表している。Ｐmin（添字ｉ1，ｉ2付き）は、種別番号ｉ1，ｉ2の２つの弁輪それぞれの画像ランドマーク間の最小距離を表している。Ｐmax（添字ｉ1，ｉ2付き）は、種別番号ｉ1，ｉ2の２つの弁輪それぞれの画像ランドマーク間の最大距離を表している。
【００８６】
図１３は、テンプレートメッシュモデルにおける弁輪間の最小値と最大値とを示す図である。テンプレートメッシュモデル３０の大動脈弁の弁輪７１は、曲線式ｃ1（ｓ）で表される。またテンプレートメッシュモデル３０の僧帽弁の弁輪７２は、曲線式ｃ2（ｓ）で表される。曲線式ｃ1（ｓ）上の点と曲線式ｃ2（ｓ）上の点との距離の最小値が、Ｃ1,2minである。また曲線式ｃ1（ｓ）上の点と曲線式ｃ2（ｓ）上の点との距離の最大値が、Ｃ1,2maxである。
【００８７】
図１４は、画像ランドマーク間の最小値と最大値とを示す図である。ランドマークペア生成部１２０は、断層画像上の大動脈弁の弁輪６１に設定された複数の画像ランドマークそれぞれと、僧帽弁の弁輪６２に設定された複数の画像ランドマークそれぞれとの距離を計算する。そして算出された距離の最小値が、Ｐ1,2minである。また算出された距離の最大値が、Ｐ1,2maxである。
【００８８】
以下、図１１の説明に戻る。
［ステップＳ１２３］ランドマークペア生成部１２０は、最適化問題の初期値ｓ0を計算する。例えばランドマークペア生成部１２０は、各弁輪の画像ランドマーク群ｐ0，・・・，ｐ3それぞれの重心と、テンプレートモデル上の対応する弁輪を示す曲線ｃiの重心をあわせるように、画像ランドマーク群ｐ0，・・・，ｐ3を移動させる。画像ランドマーク群ｐ0，・・・，ｐ3の移動では、ランドマークペア生成部１２０は、平行移動、回転、スケーリング（拡大または縮小）などで移動する。ランドマークペア生成部１２０は、移動した画像ランドマーク群に対して、対応する弁輪の曲線ｃ0，・・・，ｃ3上でユークリッド距離が最も近い位置のパラメータｓを、初期値ｓ0とする。これを式で表すと、以下のように表現される。
【００８９】
【数４】
2019204263.tif 000006
【００９０】
ｓ00は、大動脈弁輪のテンプレートランドマーク群を表している。ｓ01は、僧帽弁輪のテンプレートランドマーク群を表している。ｓ02は、肺動脈弁輪のテンプレートランドマーク群を表している。ｓ03は、三尖弁輪のテンプレートランドマーク群を表している。ｓ0i,jは、３次元座標系における、種別番号ｉに対応する弁輪上のｊ番目のテンプレートランドマークの位置を表す。
【００９１】
［ステップＳ１２４］ランドマークペア生成部１２０は、テンプレートランドマークの初期値ｓ0に基づいて、例えば直線探索（ラインサーチ）アルゴリズムによって、エネルギーを最小となるように最適化したテンプレートランドマークの位置を計算する。例えばランドマークペア生成部１２０は、以下のエネルギー最適化問題を解く。
【００９２】
【数５】
2019204263.tif 000007
【００９３】
Ｅ（ｓ）は、内部エネルギー関数である。Ｈ（ｓ）は、外部エネルギー関数である。「ａｒｇ  ｍｉｎ｛｝」（ｍｉｎの下にｓ付き）は、括弧内の計算式が最小値となるｓを求めることを示している。式（５）により、全体のエネルギー関数は、同じ弁輪内のテンプレートランドマークの相対位置を保つ内部エネルギー関数Ｅと、異なる弁輪のテンプレートランドマーク間の相対位置を保つ外部エネルギーＨを足し合わせたものになる。ここで、内部エネルギーＥは以下の式で表される。
【００９４】
【数６】
2019204263.tif 000008
【００９５】
ここでｄiは、同じ弁輪の隣り合うテンプレートランドマークの弁輪上での距離である。なお弁輪は閉じた曲線であるため、ｍi−１番のテンプレートランドマークに隣接するのは０番のテンプレートランドマークとなる。ｍi−１番のテンプレートランドマークと０番のテンプレートランドマークとの間において、曲線の弧長パラメータｓが「０」の位置をまたぐこととなる。式（６）では、曲線の弧長パラメータｓが「０」の位置をまたぐか否かにより、隣接するテンプレートランドマーク間の距離ｄi（ａ，ｂ）の計算式を場合わけしている。Ｌaveは、異なる弁輪に属する画像ランドマーク間の距離の平均である。なおＬaveの式に示す「Ｃ」は、組み合わせを示す記号である。
【００９６】
外部エネルギーＨは以下の式で表される。
【００９７】
【数７】
2019204263.tif 000009
【００９８】
外部エネルギーＨには、階段関数ｆstep（）が含まれている。この階段関数により、異なる弁輪上の２つのテンプレートランドマーク間の距離が、異なる弁輪上の画像ランドマーク間の距離の平均以下の場合に、これら２つのテンプレートランドマーク間の距離が、外部エネルギーＨに影響を及ぼす。これにより、外部エネルギーと内部エネルギーとを合計した全体エネルギーに、異なる弁輪上のテンプレートランドマーク間の位置関係を適切に反映させることができる。
【００９９】
図１５は、異なる弁輪上のテンプレートランドマーク間の距離とエネルギーとの関係を示す図である。図１５には、大動脈弁の弁輪７１上のテンプレートランドマーク群７１ｘと、僧帽弁の弁輪７２上のテンプレートランドマーク群７２ｘとを示している。図１５において異なる弁輪から離れた位置にあるテンプレートランドマークを、白丸で示している。また異なる弁輪に近い位置にあるテンプレートランドマークを、黒丸で示している。
【０１００】
白丸で示したテンプレートランドマークは、近くに別の種類の弁輪のテンプレートランドマークがないために、同じ種類の弁輪のテンプレートランドマークとの位置関係のほうが重要になる。そのため内部エネルギーが支配的のほうがよいものと考えられる。他方、黒丸で示したテンプレートランドマークは、近くに別の種類の弁輪のランドマークがあるために、別の種類の弁輪のテンプレートランドマークとの位置関係が重要になる。
【０１０１】
また２つのテンプレートランドマーク間に、テンプレートランドマークを接続するばねがあるものと見立ててエネルギーを計算するばねモデルの最適化において、ばねが多いと容易に局所解に陥ってしまう。そこで、ランドマークペア生成部１２０は、式（７）の階段関数により、重要度の低い接続をカットすることで、局所解に陥ることを抑止している。
【０１０２】
図１６は、重要度の低い接続をカットした場合のテンプレートランドマーク間の接続の一例を示す図である。図１６に示すようにランドマークペア生成部１２０は、平均より距離が短い接続は重みを「０」とすることで、接続をカットする。その結果、他の弁輪の近くにあるテンプレートランドマークは、その位置が外部エネルギーに影響を及ぼすようになる。また、他の弁輪から離れたテンプレートランドマークは、その位置による外部エネルギーへの影響が抑止される。なお、他の弁輪から離れたテンプレートランドマークの位置は、内部エネルギーに対しては、他のテンプレートランドマークと同様に影響を及ぼす。
【０１０３】
また、式（７）のｈi1,i2（ｓi1，ｓi2）の各項は、ｉ1に対応する弁輪とｉ2に対応する弁輪とのテンプレートランドマーク間の関係による外部エネルギーへの影響度を示している。心臓に弁輪は４つあるため、２つずつの弁輪の組み合わせの組み合わせパターンは、６通りである。しかし、式（７）には、４つの組み合わせに応じた項しか含まれていない。これは、エネルギー計算におけるばねが多すぎることにより、局所解に陥ることを抑止するためである。
【０１０４】
図１７は、局所解に陥ることを抑止する方法の一例を示す図である。図１７に示すように、心臓のテンプレートメッシュモデル３０には４つの弁がある。各弁の弁輪７１〜７４の間の関係のうち、僧帽弁の弁輪７２と肺動脈弁の弁輪７３との距離、および三尖弁の弁輪７４と肺動脈弁の弁輪７３との距離は、他の弁輪間の距離に比べ遠い。そこでランドマークペア生成部１２０は、僧帽弁の弁輪７２と肺動脈弁の弁輪７３との間、および三尖弁の弁輪７４と肺動脈弁の弁輪７３との間について、異なる弁輪上のテンプレートランドマーク間のばねを設定しない。
【０１０５】
すなわち式（７）に示すＨ（ｓ）を算出する式の右辺の項のうち、ｈ01（ｓ0，ｓ1）は、大動脈弁の弁輪７１と僧帽弁の弁輪７２とに設定されたテンプレートランドマークに基づくエネルギーである。ｈ02（ｓ0，ｓ2）は、大動脈弁の弁輪７１と肺動脈弁の弁輪７３とに設定されたテンプレートランドマークに基づくエネルギーである。ｈ03（ｓ0，ｓ3）は、大動脈弁の弁輪７１と三尖弁の弁輪７４とに設定されたテンプレートランドマークに基づくエネルギーである。ｈ13（ｓ1，ｓ3）は、僧帽弁の弁輪７２と三尖弁の弁輪７４とに設定されたテンプレートランドマークに基づくエネルギーである。Ｈ（ｓ）を算出する式には、僧帽弁の弁輪７２と肺動脈弁の弁輪７３とに設定されたテンプレートランドマークに基づくエネルギーの項、および三尖弁の弁輪７４と肺動脈弁の弁輪７３とに設定されたテンプレートランドマークに基づくエネルギーの項は含まれない。これにより、エネルギー計算におけるばねの数を削減し、最適解の解探索において局所解に陥ることを抑止することができる。
【０１０６】
ランドマークペア生成部１２０は、以上のような内部エネルギーＥと外部エネルギーＨを用いて、式（５）の解を求める。例えばランドマークペア生成部１２０は、最急降下法などで最小解を求めることができる。最終的に、Ｐi,jに対応する点として、テンプレートランドマークの位置ｃi（ｓi,j*）を得ることができる。
【０１０７】
ランドマークペア生成部１２０は、断層画像の弁輪上に設定した画像ランドマークと、その画像ランドマークに対応するテンプレートランドマークとの組を、弁輪ランドマークペアとしてメモリ１０２に格納する。
【０１０８】
ランドマークペア生成部１２０は、弁輪ランドマークペアの生成が完了すると、次に弁輪ランドマークペアを用いて、心筋テンプレートランドマークの位置を計算する。すなわちランドマークペア生成部１２０は、断層画像４１〜４４に写る心筋境界４０ｃ上に配置した画像ランドマーク６６（図７参照）に対応する、テンプレートメッシュモデル３０の心筋境界上のテンプレートランドマークの位置を計算する。例えばランドマークペア生成部１２０は、心筋テンプレートランドマークの位置を計算では、弁輪テンプレートランドマークを固定して、心筋テンプレートランドマークのみの最適化問題を解く。
【０１０９】
図１８は、心筋境界テンプレートランドマーク位置計算処理の手順の一例を示すフローチャートである。以下、図１８に示す処理をステップ番号に沿って説明する。
［ステップＳ１３１］ランドマークペア生成部１２０は、テンプレートメッシュモデルデータ１１１に基づいて、テンプレートメッシュモデル３０の心筋境界を曲線として表現するＢｓｐｌｉｎｅ補間関数（心筋境界Ｂｓｐｌｉｎｅ関数）を計算する。例えば心筋境界の種別番号を「４」として、断層画像上に配置した画像ランドマークを、以下の式で表す。
【０１１０】
【数８】
2019204263.tif 000010
【０１１１】
ここでｍ4は、心筋境界上の画像ランドマーク数である。心筋境界上の画像ランドマークは、断層画像上を順番に並んでいるものとする。このときランドマークペア生成部１２０は、まず、テンプレートメッシュモデル３０における心筋境界上のノードを、Ｂｓｐｌｉｎｅ関数によって補間する。補間によって得られる心筋境界を示す曲線の関数をｃ4（ｓ）：Ｒ→Ｒ3と表す。
【０１１２】
［ステップＳ１３２］ランドマークペア生成部１２０は、心筋境界画像ランドマークデータ１１５に基づいて、弁輪のテンプレートランドマークの位置の計算に利用した式（２）、式（３）を用いて、エネルギー関数を計算するためのパラメータ値｛ｌi,j｝、｛Ｌi1,j1,i2,j2｝を計算する。弁輪のテンプレートランドマークの位置を計算する際にはｉ＝０，１，２，３であったが、心筋境界のテンプレートランドマークの位置を計算する際には、心筋境界を加えｉ＝０，１，２，３，４となる。
【０１１３】
［ステップＳ１３３］ランドマークペア生成部１２０は、弁輪のテンプレートランドマークの位置を計算したときのステップＳ１２３の処理と同様に、最適化問題の初期値ｓ0を計算する。
【０１１４】
［ステップＳ１３４］ランドマークペア生成部１２０は、弁輪ランドマークペア８１を用いて、テンプレートランドマークの初期値ｓ0に基づいて、エネルギーを最小となるように最適化したテンプレートランドマークの端点の位置を計算する。例えばランドマークペア生成部１２０は、次のエネルギー最適化問題を解く。
【０１１５】
【数９】
2019204263.tif 000011
【０１１６】
ここでは心筋テンプレートランドマークの端点のみを計算している。なお、式（９）に示す関数Ｇ（ｓ4,0，ｓ4,m4-1，ｓ*）は、第１の実施の形態に示す第３評価値の一例である。
【０１１７】
［ステップＳ１３５］ランドマークペア生成部１２０は、式（９）で求めた端点の位置から、次のようにしてその他の点を計算する。
【０１１８】
【数１０】
2019204263.tif 000012
【０１１９】
式（１０）では、断層画像上での画像ランドマークの距離の比とテンプレートメッシュモデル３０上でのテンプレートランドマークの距離の比が等しくなるように、端点以外のテンプレートランドマークの位置を設定している。
【０１２０】
以上のようにして断層画像上に配置された心筋境界の画像ランドマークに対応するテンプレートメッシュモデル３０上の心筋境界のテンプレートランドマークを得ることができる。ランドマークペア生成部１２０は、心筋境界の画像ランドマークと、その心筋境界の画像ランドマークに対応するテンプレートランドマークとの組を、心筋境界ランドマークペアとしてメモリ１０２に格納する。
【０１２１】
＜初期メッシュモデル生成＞
ランドマークペア生成部１２０により弁輪と心筋境界とのランドマークペアが生成されると、メッシュ変形部１４０が、テンプレートメッシュモデル３０を変形し、患者の心臓の初期状態のメッシュモデルを生成する。例えばメッシュ変形部１４０は、ＴＰＳＷａｒｐ（Thin Plate Spline Warp）などの手法により、メッシュモデルを変形する。
【０１２２】
図１９は、ＴＰＳＷａｒｐを説明する図である。図１９に示すように、ＴＰＳＷａｒｐにおいては、変形前メッシュモデル２０１上のソースランドマークおよび当該ソースランドマークに対応するターゲットランドマークが与えられる。するとコンピュータが、変形後メッシュモデル２０２においてソースランドマークがターゲットランドマークに重なるように、変形前メッシュモデル２０１の変形を行う。なお、ＴＰＳＷａｒｐの詳細は、例えば「Fred L. Bookstein "Principal Warps: Thin-Plate Splines and the Decomposition of Deformation",IEEETRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE. VOL. 11 NO. 6, PP. 567-585, JUNE 1989」に開示されている。
【０１２３】
メッシュ変形部１４０は、テンプレートランドマークをＴＰＳＷａｒｐにおけるソースランドマークとし、画像ランドマークをＴＰＳＷａｒｐにおけるターゲットランドマークとすることで、ＴＰＳＷａｒｐによるメッシュモデルの変形を行う。変形後のメッシュモデルが初期メッシュモデルとなる。
【０１２４】
なお、初期メッシュモデルのデータフォーマットは、テンプレートメッシュモデルデータ１１１のフォーマットと同様である。またメッシュ変形部１４０は、初期メッシュモデル生成処理によって移動したテンプレートランドマークは、その後のメッシュモデル変形処理では固定点として取り扱い、位置をずらさないようにする。
【０１２５】
以上のように、テンプレートランドマークが、対応する画像ランドマークの位置に重なるようにテンプレートメッシュモデル３０を変形して、初期メッシュモデルを生成することで、後に行う詳細な変形を高精度に行うことができる。すなわち、初期メッシュモデルの段階で、例えば弁輪間を結ぶ心筋形状に大きなゆがみが生じていると、その後の変形で修正するのが困難となる。第２の実施の形態における初期メッシュモデル生成処理では、ランドマークペア生成部１２０によってテンプレートランドマークが適切な位置に配置されているため、初期メッシュモデルにおけるゆがみが抑止されている。すなわち、形状のゆがみが、その後のメッシュモデル変形処理において修正可能な程度に抑えられている。
【０１２６】
＜画像ランドマーク再構築＞
メッシュ変形部１４０が初期メッシュモデルを生成するのと並行して、画像データ再構築部１３０が、画像ランドマークの再構築を行う。
【０１２７】
図２０は、画像データ再構築処理の手順の一例を示すフローチャートである。以下、図２０に示す処理をステップ番号に沿って説明する。
［ステップＳ２０１］画像データ再構築部１３０は、左心室、右心室、心筋のなかから、再構築対象の要素を選択する。
【０１２８】
［ステップＳ２０２］画像データ再構築部１３０は、心臓の３次元形状を包含するバウンディングボックスを定義する。
なお、断層画像のスライス間隔が大きい場合、心臓の３次元形状を包含するバウンディングボックスにおけるボクセルはｚ軸方向に長くなってしまう。ボクセルとは３次元画像データにおいて、２次元画像データの矩形画像の要素であるピクセル（pixel）に対応する格子画像の要素である。そこで画像データ再構築部１３０は、心臓の３次元形状を包含するバウンディングボックスにおけるボクセルを立方体にするため、以下のようにする。
（１）心臓の３次元形状を包含するバウンディングボックスの下限の座標＝断層画像を包含するバウンディングボックスの下限の座標
（２）心臓の３次元形状を包含するバウンディングボックスの上限の座標＝断層画像を包含するバウンディングボックスの上限の座標
（３）心臓の３次元形状を包含するバウンディングボックスのｘ軸方向における格子点の数＝１＋（バウンディングボックスの上限のｘ座標−バウンディングボックスの下限のｘ座標）／断層画像内の再構築対象の要素を包含するバウンディングボックスのｘ軸方向またはｙ軸方向のボクセルサイズ
なお、ｙ軸方向およびｚ軸方向の格子点の数も、ｘ軸方向における格子点の数と同様に求めることができる。
【０１２９】
ただし、このように設定すると、上限の位置がずれることがある。そのため画像データ再構築部１３０は、以下のように上限を設定し直す。
（４）心臓の３次元形状を包含するバウンディングボックスの上限のｘ座標＝断層画像を包含するバウンディングボックスの下限のｘ座標＋断層画像を包含するバウンディングボックスのｘ軸方向またはｙ軸方向のボクセルサイズ×（ｘ軸方向における格子点の数−１）
なお、上限のｙ座標および上限のｚ座標も、上限のｘ座標と同様に求めることができる。
【０１３０】
ここで、断層画像内の心臓の３次元形状を包含するバウンディングボックスは、下限を示す列ベクトルＢmin＝（ｘmin，ｙmin，ｚmin）Tおよび上限を示す列ベクトルＢmax＝（ｘmax，ｙmax，ｚmax）Tにより定まるものとする。ｘminはｘ座標の最小値であり、ｘmaxはｘ座標の最大値である。ｙminはｙ座標の最小値であり、ｙmaxはｙ座標の最大値である。ｚminはｚ座標の最小値であり、ｚmaxはｚ座標の最大値である。
【０１３１】
図２１は、バウンディングボックスの一例を示す図である。バウンディングボックス８２の範囲は、下限の座標および上限の座標によって定まる。バウンディングボックス８２におけるボクセルの各々は、ｘ軸方向の長さがｖ’ｘ、ｙ軸方向の長さがｖ’ｙ、ｚ軸方向の長さがｖ’ｚである。ただし、ｖ’ｘ＝ｖ’ｙ＝ｖ’ｚである。各軸方向における格子点の数は、その軸方向におけるボクセルの数＋１である。画像データ再構築部１３０は、定義されたバウンディングボックス８２のデータを、メモリ１０２に格納する。なお、バウンディングボックス８２における各ボクセルの輝度値は、初期値として０が設定されているものとする。
【０１３２】
以下、図２０の説明に戻る。
［ステップＳ２０３］画像データ再構築部１３０は、マッピング処理を実行する。マッピング処理とは、断層画像内に表示された再構築対象の要素が占める３次元空間内の領域と、再構築対象の要素を包含するバウンディングボックス８２におけるボクセルとを対応付ける処理である。マッピング処理の詳細は後述する（図２２参照）。
【０１３３】
［ステップＳ２０４］画像データ再構築部１３０は、境界設定処理を実行する。境界設定処理とは、心臓と心臓でない部分との境界に対して所定の輝度値（例えば「２」）を設定する処理である。境界設定処理の詳細は後述する（図２４参照）。
【０１３４】
［ステップＳ２０５］画像データ再構築部１３０は、補間処理を実行する。補間処理は、再構築対象の要素を包含するバウンディングボックス８２におけるボクセルのうち、輝度値が設定されていないボクセルに対して輝度値を設定する処理である。補間処理の詳細は後述する（図２６、図２８参照）。
【０１３５】
［ステップＳ２０６］画像データ再構築部１３０は、左心室、右心室、心筋のすべてについて再構築を行ったか否かを判断する。すべての要素について再構築が終了した場合、画像データ再構築部１３０は、画像データ再構築処理を終了する。また画像データ再構築部１３０は、再構築をしていない要素がある場合、処理をステップＳ２０１に進める。
【０１３６】
次に、図２２，図２３を参照して、マッピング処理について詳細に説明する。
図２２は、マッピング処理の手順の一例を示すフローチャートである。以下、図２２に示す処理をステップ番号に沿って説明する。
【０１３７】
［ステップＳ２１１］画像データ再構築部１３０は、断層画像が配置された３次元空間における位置ｕ（ｘ，ｙ，ｚ）のｚ座標をｚ＝０と設定する。ここで、ｕ∈［０，ｎx］×［０，ｎy］×［０，ｎz］⊂Ｉ3とする。ｎxは断層画像が配置された３次元空間を包含するバウンディングボックスにおけるｘ軸方向のボクセル数であり、ｎyはｙ軸方向のボクセル数であり、ｎzはｚ軸方向のボクセル数である。ここでＩ（ｘ，ｙ，ｚ）を、断層画像内の再構築対象の要素を包含するバウンディングボックスにおけるｕ（ｘ，ｙ，ｚ）の輝度値とする。
【０１３８】
また、断層画像内の再構築対象の要素を包含するバウンディングボックスにおけるｘ軸方向のボクセル数をｎxとし、ｙ軸方向のボクセル数をｎyとし、ｚ軸方向のボクセル数をｎzとすると、ｚ方向の格子点の数はｎz+1となる。画像データ再構築部１３０は、ボクセルのサイズを、ｘ軸方向がｖx、ｙ軸方向がｖy、ｚ軸方向がｖzとする。
【０１３９】
［ステップＳ２１２］画像データ再構築部１３０は、ｕのｙ座標をｙ＝０と設定する。
［ステップＳ２１３］画像データ再構築部１３０は、ｕのｘ座標をｘ＝０と設定する。
［ステップＳ２１４］画像データ再構築部１３０は、「Ｉ（ｕ）＝＝再構築対象の要素のラベル値」であるか判断する。すなわち画像データ再構築部１３０は、ｕが境界の内部（すなわち、心臓の内部）にあたる部分のボクセルであるか判断する。画像データ再構築部１３０は、Ｉ（ｕ）＝＝再構築対象の要素ラベル値ではない場合、処理をステップＳ２１７に進める。また画像データ再構築部１３０は、Ｉ（ｕ）＝＝再構築対象の要素のラベル値である場合、処理をステップＳ２１５に進める。
【０１４０】
［ステップＳ２１５］画像データ再構築部１３０は、再構築対象の要素を包含するバウンディングボックスにおける位置ｕ’をｕ’＝Ｍ’-1・（Ｍ・ｕ）と設定する。
［ステップＳ２１６］画像データ再構築部１３０は、位置ｕ’における輝度値Ｉ’（ｕ’）をＩ’（ｕ’）＝１と設定する。ここで、ｕ’∈Ｉ3である。また画像データ再構築部１３０は、ＭおよびＭ’を以下のように定める。
【０１４１】
【数１１】
2019204263.tif 000013
【０１４２】
【数１２】
2019204263.tif 000014
【０１４３】
［ステップＳ２１７］画像データ再構築部１３０は、ｘ≧ｎxであるか否かを判断する。画像データ再構築部１３０は、ｘ≧ｎxではない場合、処理をステップＳ２１８に進める。また画像データ再構築部１３０は、ｘ≧ｎxである場合、処理をステップＳ２１９に進める。
【０１４４】
［ステップＳ２１８］画像データ再構築部１３０は、ｕ（ｘ，ｙ，ｚ）におけるｘ座標を１インクリメント（ｘ＝ｘ＋１）し、処理をステップＳ２１４に進める。
［ステップＳ２１９］画像データ再構築部１３０は、ｙ≧ｎyであるか否かを判断する。画像データ再構築部１３０は、ｙ≧ｎyではない場合、処理をステップＳ２２０に進める。また画像データ再構築部１３０は、ｙ≧ｎyである場合、処理をステップＳ２２１に進める。
【０１４５】
［ステップＳ２２０］画像データ再構築部１３０は、ｕ（ｘ，ｙ，ｚ）におけるｙ座標を１インクリメント（ｙ＝ｙ＋１）し、処理をステップＳ２１３に進める。
［ステップＳ２２１］画像データ再構築部１３０は、ｚ≧ｎzであるか否かを判断する。画像データ再構築部１３０は、ｚ≧ｎzではない場合、処理をステップＳ２２２に進める。また画像データ再構築部１３０は、ｚ≧ｎzである場合、マッピング処理を終了する。
【０１４６】
［ステップＳ２２２］画像データ再構築部１３０は、ｕ（ｘ，ｙ，ｚ）におけるｚ座標を１インクリメント（ｚ＝ｚ＋１）し、処理をステップＳ２１２に進める。
以上のような処理を実行すると、バウンディングボックスにおいて、再構築対象の要素（左心室、右心室、または心筋）内部およびその要素の内部と外部との境界の輝度値が１になり、それ以外の部分の輝度値が０になる。輝度値が１の領域が、再構築対象の要素の３次元形状を表す。すなわち、バウンディングボックス内の座標ごとの輝度値が、再構築対象の要素の３次元形状を示す３次元形状データである。
【０１４７】
図２３は、マッピング処理後の３次元形状データの一例を示す図である。図２３の上段は、マッピング処理が終了した段階における再構築対象の要素の３次元形状データ１１６ａである。図２３の下段は、生成された３次元形状データ１１６ａの一部をｚ軸方向から観察した図である。この段階においては、ｚ軸方向には、断層画像が存在する部分にしか輝度値が付与されていない。
【０１４８】
画像データ再構築部１３０は、マッピング処理が完了すると、次に境界設定処理を実行する。
図２４は、境界設定処理の手順の一例を示すフローチャートである。以下、図２４に示す処理をステップ番号に沿って説明する。
【０１４９】
［ステップＳ２３１］画像データ再構築部１３０は、３次元形状データの位置ｕ’における輝度値Ｉ’（ｘ，ｙ，ｚ）のｚ座標をｚ＝０と設定する。
［ステップＳ２３２］画像データ再構築部１３０は、Ｉ’のｙ座標をｙ＝０と設定する。
【０１５０】
［ステップＳ２３３］画像データ再構築部１３０は、Ｉ’のｘ座標をｘ＝０と設定する。
［ステップＳ２３４］画像データ再構築部１３０は、ｕ’（ｘ，ｙ，ｚ）における輝度値とその周りの点における輝度値との差（輝度値差）があるか否かを判断する。例えば、輝度値差は、｜Ｉ’（ｘ，ｙ，ｚ）−Ｉ’（ｘ−１，ｙ，ｚ）｜＋｜Ｉ’（ｘ，ｙ，ｚ）−Ｉ’（ｘ＋１，ｙ，ｚ）｜＋｜Ｉ’（ｘ，ｙ，ｚ）−Ｉ’（ｘ，ｙ−１，ｚ）｜＋｜Ｉ’（ｘ，ｙ，ｚ）−Ｉ’（ｘ１，ｙ＋１，ｚ）｜で表される。そして画像データ再構築部１３０は、輝度値差が＞０を満たす場合、輝度値差があると判断し、計算結果が＞０を満たさない場合、輝度値差がないと判断する。画像データ再構築部１３０は、輝度値差がある場合、処理をステップＳ２３５に進める。また画像データ再構築部１３０は、輝度値差がない場合、処理をステップＳ２３７に進める。
【０１５１】
［ステップＳ２３５］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，ｚ）＝＝１であるか判断する。画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，ｚ）＝＝１ではない場合、処理をステップＳ２３７に進める。また画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，ｚ）＝＝１である場合、ｕ’は再構築対象の要素とその要素以外の部分との境界であると判断し、処理をステップＳ２３６に進める。
【０１５２】
［ステップＳ２３６］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，ｚ）＝２と設定する。これにより、３次元形状データにおける位置ｕ’の輝度値が１から２に更新される。
［ステップＳ２３７］画像データ再構築部１３０は、ｘ≧ｎxであるか否かを判断する。画像データ再構築部１３０は、ｘ≧ｎxではない場合、処理をステップＳ２３８に進める。また画像データ再構築部１３０は、ｘ≧ｎxである場合、処理をステップＳ２３９に進める。
【０１５３】
［ステップＳ２３８］画像データ再構築部１３０は、ｕ’（ｘ，ｙ，ｚ）におけるｘ座標を１インクリメント（ｘ＝ｘ＋１）し、処理をステップＳ２３４に進める。
［ステップＳ２３９］画像データ再構築部１３０は、ｙ≧ｎyであるか否かを判断する。画像データ再構築部１３０は、ｙ≧ｎyではない場合、処理をステップＳ２４０に進める。また画像データ再構築部１３０は、ｙ≧ｎyである場合、処理をステップＳ２４１に進める。
【０１５４】
［ステップＳ２４０］画像データ再構築部１３０は、ｕ’（ｘ，ｙ，ｚ）におけるｙ座標を１インクリメント（ｙ＝ｙ＋１）し、処理をステップＳ２３３に進める。
［ステップＳ２４１］画像データ再構築部１３０は、ｚ≧ｎzであるか否かを判断する。画像データ再構築部１３０は、ｚ≧ｎzではない場合、処理をステップＳ２４２に進める。また画像データ再構築部１３０は、ｚ≧ｎzである場合、境界判定処理を終了する。
【０１５５】
［ステップＳ２４２］画像データ再構築部１３０は、ｕ’（ｘ，ｙ，ｚ）におけるｚ座標を１インクリメント（ｚ＝ｚ＋１）し、処理をステップＳ２３２に進める。
以上のような処理を実行すると、３次元形状データにおいて再構築対象の要素内部の輝度値が１になり、その要素と要素外の部分との境界の輝度値が２になり、その要素外の部分は輝度値が０になる。
【０１５６】
図２５は、境界判定処理後の３次元形状データの一例を示す図である。図２５の上段は、境界判定処理後の３次元形状データ１１６ｂであり、図２５の下段は、生成された３次元形状データ１１６ｂの一部をｚ軸方向から観察した図である。なお、境界部分をわかりやすくするため、図２５の上段には境界部分しか示していない。また、この段階においては、ｚ軸方向には、セグメント画像データが存在する部分にしか輝度値が付与されていない。
【０１５７】
画像データ再構築部１３０は、境界判定処理が完了すると、次に補間処理を実行する。
図２６は、補間処理の手順の一例を示すフローチャートの前半である。以下、図２６に示す処理をステップ番号に沿って説明する。
【０１５８】
［ステップＳ２５１］画像データ再構築部１３０は、断層画像の枚数を計数するための変数ｊをｊ＝１と設定する。
［ステップＳ２５２］画像データ再構築部１３０は、Ｌｉｓｔ＿ｉ’［ｊ］＝Ｌｉｓｔ＿ｉ［ｊ］（ｖz／ｖ’z）と設定する。ここで、Ｌｉｓｔ＿ｉ［ｊ］はｊ番目のセグメント画像データのｚ座標である。よって、Ｌｉｓｔ＿ｉ’［ｊ］は、ｊ番目のセグメント画像データのｚ座標に対応する、バウンディングボックスにおけるｚ座標である。
【０１５９】
図２７は、補間処理を説明する図である。図２７の上段および中段に示すように、ｚ座標がＬｉｓｔ＿ｉ［ｊ＋１］である断層画像４５の各画素のデータは、３次元形状データ内のｚ座標がＬｉｓｔ＿ｉ’［ｊ＋１］の各画素に対応付けられる。また、ｚ座標がＬｉｓｔ＿ｉ［ｊ］である断層画像４６の各画素のデータは、３次元形状データ内のｚ座標がＬｉｓｔ＿ｉ’［ｊ］である各画素のデータに対応付けられる。
【０１６０】
以下、図２６の説明に戻る。
［ステップＳ２５３］画像データ再構築部１３０は、ｊ≧ｎ＿Ｌｉｓｔであるか判断する。ｎ＿Ｌｉｓｔは、断層画像の枚数である。画像データ再構築部１３０は、ｊ≧ｎ＿Ｌｉｓｔではない場合、処理をステップＳ２５４に進める。また画像データ再構築部１３０は、ｊ≧ｎ＿Ｌｉｓｔである場合、処理をステップＳ２５５に進める。
【０１６１】
［ステップＳ２５４］画像データ再構築部１３０は、次の断層画像について処理するため、ｊ＝ｊ＋１と設定し、処理をステップＳ２５２に進める。
［ステップＳ２５５］画像データ再構築部１３０は、断層画像の枚数を計数するための変数ｊをｊ＝１と設定する。
【０１６２】
［ステップＳ２５６］画像データ再構築部１３０は、ｎ＝Ｌｉｓｔ＿ｉ’［ｊ＋１］−Ｌｉｓｔ＿ｉ’［ｊ］と設定する。ｎは、ｚ座標Ｌｉｓｔ＿ｉ’［ｊ＋１］とｚ座標Ｌｉｓｔ＿ｉ’［ｊ］との間において、輝度値が設定されていないｚ座標の数である。その後、画像データ再構築部１３０は、処理を図２８のステップＳ２６１に進める。
【０１６３】
図２８は、補間処理の手順の一例を示すフローチャートの後半である。以下、図２８に示す処理をステップ番号に沿って説明する。
［ステップＳ２６１］画像データ再構築部１３０は、ｚ座標の数を計数するための変数ｋをｋ＝１と設定する。
【０１６４】
［ステップＳ２６２］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］）＞０であるか判断する。画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］）＞０である場合、処理をステップＳ２６３に進める。また画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］）＞０ではない場合、処理をステップＳ２６４に進める。
【０１６５】
［ステップＳ２６３］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝１と設定する。この処理によって、３次元形状データにおける位置ｕ’の輝度値が０から１に更新される。その後、画像データ再構築部１３０は、処理をステップＳ２６５に進める。
【０１６６】
［ステップＳ２６４］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝０と設定する。この処理では、３次元形状データにおける位置ｕ’の輝度値を０のままとする。
【０１６７】
［ステップＳ２６５］画像データ再構築部１３０は、ｋ＞（ｎ／２）であるか否かを判断する。画像データ再構築部１３０は、ｋ＞（ｎ／２）である場合、処理をステップＳ２６７に進める。また画像データ再構築部１３０は、ｋ＞（ｎ／２）ではない場合、処理をステップＳ２６６に進める。
【０１６８】
［ステップＳ２６６］画像データ再構築部１３０は、ｋ＝ｋ＋１と設定し、処理をステップＳ２６２に進める。
ステップＳ２６１〜Ｓ２６５の処理においては、ｚ座標Ｌｉｓｔ＿ｉ’［ｊ］＋ｋが、ｚ座標Ｌｉｓｔ＿ｉ’［ｊ＋１］よりもｚ座標Ｌｉｓｔ＿ｉ’［ｊ］に近いため、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］）と同じ輝度値を設定している。例えば図２７の下段に示すように、Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ＝ｚAである場合には、ｚAはｚ座標Ｌｉｓｔ＿ｉ’［ｊ＋１］よりもｚ座標Ｌｉｓｔ＿ｉ’［ｊ］に近い。そのため画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］）とする。ただし画像データ再構築部１３０は、たとえＩ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］）＝２であったとしても、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝２ではなくＩ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝１と設定する。これは、断層画像に基づいて設定された境界に対してのみ輝度値２を付与するためである。
【０１６９】
以下、図２８の説明に戻る。
［ステップＳ２６７］画像データ再構築部１３０は、ｚ座標の数を計数するための変数ｋをｋ＝（ｎ／２）＋１と設定する。
【０１７０】
［ステップＳ２６８］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ＋１］）＞０であるか否かを判断する。画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ＋１］）＞０である場合、処理をステップＳ２６９に進める。また画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ＋１］）＞０ではない場合、処理をステップＳ２７０に進める。
【０１７１】
［ステップＳ２６９］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝１と設定する。この処理によって、３次元形状データにおける位置ｕ’の輝度値が０から１に更新される。その後、画像データ再構築部１３０は、処理をステップＳ２７１に進める。
【０１７２】
［ステップＳ２７０］画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝０と設定する。この処理においては、３次元形状データにおける位置ｕ’の輝度値を０のままとする。
【０１７３】
［ステップＳ２７１］画像データ再構築部１３０は、ｋ＞ｎであるか判断する。画像データ再構築部１３０は、ｋ＞ｎである場合、処理をステップＳ２７３に進める。また画像データ再構築部１３０は、ｋ＞ｎではない場合、処理をステップＳ２７２に進める。
【０１７４】
［ステップＳ２７２］画像データ再構築部１３０は、ｋ＝ｋ＋１と設定し、処理をステップＳ２６８に進める。
ステップＳ２６８〜Ｓ２７１の処理においては、ｚ座標Ｌｉｓｔ＿ｉ’［ｊ］＋ｋが、ｚ座標Ｌｉｓｔ＿ｉ’［ｊ］よりもｚ座標Ｌｉｓｔ＿ｉ’［ｊ＋１］に近いため、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ＋１］）と同じ輝度値を設定している。例えば図２７の下段に示すように、Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ＝ｚBである場合には、ｚBはｚ座標Ｌｉｓｔ＿ｉ’［ｊ］よりもｚ座標Ｌｉｓｔ＿ｉ’［ｊ＋１］に近い。そのため画像データ再構築部１３０は、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ＋１］）とする。ただし画像データ再構築部１３０は、たとえＩ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ＋１］）＝２であったとしても、Ｉ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝２ではなくＩ’（ｘ，ｙ，Ｌｉｓｔ＿ｉ’［ｊ］＋ｋ）＝１と設定する。これは、断層画像に基づいて設定された境界に対してのみ輝度値２を付与するためである。
【０１７５】
以下、図２８の説明に戻る。
［ステップＳ２７３］画像データ再構築部１３０は、ｊ＞ｎ＿Ｌｉｓｔ−１であるか否かを判断する。画像データ再構築部１３０は、ｊ＞ｎ＿Ｌｉｓｔ−１ではない場合、輝度値が未設定の格子点が存在するので、処理をステップＳ２７４に進める。また画像データ再構築部１３０は、ｊ＞ｎ＿Ｌｉｓｔ−１である場合、補間処理を終了する。
【０１７６】
［ステップＳ２７４］画像データ再構築部１３０は、ｊ＝ｊ＋１と設定し、処理をステップＳ２５６（図２６参照）に進める。
以上のように、３次元形状データにおいて心臓と心臓でない部分との境界を識別できるようにしておけば（すなわち、輝度値２を設定しておけば）、メッシュモデル変形処理の際に、変形の目標となるターゲットランドマークの設定が容易となる。
【０１７７】
図２９は、画像データ再構築処理によって生成された３次元形状データの一例を示す図である。図２９に示すように、３次元形状データ１１６ｃにおいては、ボクセルの形状が立方体になっている。
【０１７８】
＜メッシュモデル変形処理＞
次に、メッシュモデル変形処理について詳細に説明する。メッシュモデル変形処理では、メッシュ変形部１４０が、画像データ再構築処理によって生成された３次元形状データに示される心臓の形状を目標形状として、初期メッシュモデルを変形する。
【０１７９】
まず、メッシュモデル変形処理の概要について説明する。ＴＰＳＷａｒｐによる変形処理を行う場合、一般的に心臓が丸みを帯びた形状であることを考慮すれば、ソースランドマークの法線上にターゲットランドマークを設定することが有効であると考えられる。ただし、ソースランドマークの法線上にターゲットランドマークを設定し、ソースランドマークがターゲットランドマークの位置に移動するように初期メッシュモデルを変形した場合、形状が大きくゆがむ場合がある。
【０１８０】
図３０は、変形後のメッシュモデルの形状にゆがみが生じる原因を示す図である。例えば図３０の上段に示すように、ソースランドマークを初期メッシュモデル８３に配置し、ソースランドマークの法線と３次元形状データ８４に示される目標形状との交点にターゲットランドマークを配置し、ＴＰＳＷａｒｐによる変形処理を行う場合を想定する。図３０の例では、図３０の下段に示すように、法線が交差するような状況が発生すると、変形により生成されたメッシュモデル８３ａの形状には、目標形状とは異なる不自然な形状が生じている。
【０１８１】
そこでメッシュ変形部１４０は、初期メッシュモデルを少しずつ繰り返し変形することで、図３０に示すような不自然な形状となることを抑止する。
図３１は、変形後のメッシュモデルの形状のゆがみの発生を抑止した例を示す図である。図３１に示すように、メッシュ変形部１４０は、初期メッシュモデル８３の形状に配置されたソースランドマークと上記の交点とを結ぶ線分を内分する点に、ターゲットランドマークを配置し、ＴＰＳＷａｒｐによる変形処理を行う。さらにメッシュ変形部１４０は、変形処理後のメッシュモデル８３ｂの形状に対して、同様の変形処理を繰り返し行うことにより、徐々に目標形状に近付けていく。これにより、最終的に生成されたメッシュモデル８３ｃの形状に不自然な形状が生じにくくなり、また法線の方向が本来目標とすべき部分に向きやすくなる。
【０１８２】
以下、メッシュモデル変形処理の詳細な手順について説明する。
図３２は、メッシュモデル変形処理の手順の一例を示すフローチャートである。以下、図３２に示す処理をステップ番号に沿って説明する。
【０１８３】
［ステップＳ３０１］メッシュ変形部１４０は、左心室、右心室、心筋のうちの未変形の要素のなかから、変形対象の要素を選択する。
［ステップＳ３０２］メッシュ変形部１４０は、ステップＳ１０３（図８参照）で生成した初期メッシュモデルに対して、変形対象要素メッシュモデル変形処理を実行する。変形対象要素メッシュモデル変形処理の詳細は後述する（図３３参照）。
【０１８４】
［ステップＳ３０３］メッシュ変形部１４０は、左心室、右心室、心筋のすべての要素のメッシュモデルを変形したか否かを判断する。メッシュ変形部１４０は、すべての要素のメッシュモデルの変形が完了した場合、メッシュモデル変形処理を終了する。またメッシュ変形部１４０は、未変形の要素があれば、処理をステップＳ３０１に進める。
【０１８５】
次に、変形対象要素メッシュモデル変形処理の手順を詳細に説明する。
図３３は、変形対象要素メッシュモデル変形処理の手順の一例を示すフローチャートである。以下、図３３に示す処理をステップ番号に沿って説明する。
【０１８６】
［ステップＳ３１１］メッシュ変形部１４０は、変形回数をカウントするための変数ｔの初期値をｔ＝０と設定する。
［ステップＳ３１２］メッシュ変形部１４０は、変数ｔをｔ＝ｔ＋１とインクリメントすることにより変形回数をカウントするとともに、また変数ｍの初期値をｍ＝０と設定する。ｍは、処理した頂点数をカウントするための変数である。
【０１８７】
［ステップＳ３１３］メッシュ変形部１４０は、変数ｍをｍ＝ｍ＋１とインクリメントする。
［ステップＳ３１４］メッシュ変形部１４０は、変形対象要素へのランドマーク設定処理を実行する。ランドマーク設定処理の詳細は後述する（図３４参照）。
【０１８８】
［ステップＳ３１５］メッシュ変形部１４０は、変数ｍについてｍ＜Ｎであるか判断する。ここで、Ｎは初期メッシュモデルの形状における、変形対象の要素に含まれる頂点の総数である。メッシュ変形部１４０は、ｍ＜Ｎである場合、次の頂点について処理するため、処理をステップＳ３１３に進める。またメッシュ変形部１４０は、ｍ＜Ｎではない場合、処理をステップＳ３１６に進める。
【０１８９】
［ステップＳ３１６］メッシュ変形部１４０は、ステップＳ３１４で設定したソースランドマークおよびターゲットランドマークのデータに従い、ＴＰＳＷａｒｐによる変形処理を実行し、変形後の形状のデータをメモリ１０２に格納する。なおメッシュ変形部１４０は、前回の変形処理の結果がメモリ１０２に格納されている場合には、そのデータに上書きをする。なお、メッシュ変形部１４０は、初期ランドマーク生成処理において移動させたテンプレートランドマークは固定点として取り扱うため、ステップＳ３１６の変形処理では移動させない。そしてメッシュ変形部１４０は、変形処理が完了すると、メモリ１０２に格納されているソースランドマークおよびターゲットランドマークのデータを消去する。
【０１９０】
［ステップＳ３１７］メッシュ変形部１４０は、変数ｔについてｔ＜Ｔであるか判断する。メッシュ変形部１４０は、ｔ＜Ｔである場合、さらに変形処理を行うため、処理をステップＳ３１２に進める。なお、Ｔは総変形回数であり、予めユーザにより設定される（例えばＴ＝５００）。またメッシュ変形部１４０は、ｔ＜Ｔではない場合、Ｔ回の変形が終了したため、変形後の初期メッシュモデルのデータを、患者の心臓の変形対象要素の形状を表すメッシュモデルデータとして、例えばストレージ装置１０３に格納する。その後、メッシュ変形部１４０は、変形対象要素メッシュモデル変形処理を終了する。
【０１９１】
以上のようにして、変形対象要素のメッシュモデルが変形される。
次に、ランドマーク設定処理について詳細に説明する。
図３４は、ランドマーク設定処理の手順の一例を示すフローチャートである。以下、図３４に示す処理をステップ番号に沿って説明する。
【０１９２】
［ステップＳ３２１］メッシュ変形部１４０は、初期メッシュモデルのデータから、変形対象の要素に含まれる頂点ｖのうち、未選択の頂点の１つをランダムに１つ選択する。なお、ステップＳ３２１の処理においては、メッシュ変形部１４０は、メッシュ変形処理において変形処理が少なくとも１度実行されている場合には、選択した頂点ｖの位置は、変形処理後の位置である。
【０１９３】
メッシュ変形部１４０は、ステップＳ３２７で既にソースランドマークに設定された頂点に加え、初期メッシュモデル生成処理によって移動したテンプレートランドマーク（すなわち固定点）をソースランドマークとする。そしてメッシュ変形部１４０は、頂点ｖと各ソースランドマークの位置とのユークリッド距離をそれぞれ算出する。
【０１９４】
［ステップＳ３２２］メッシュ変形部１４０は、選択した頂点ｖと各ソースランドマークとのユークリッド距離のうち最小のものが閾値Ｄ以下であるか判断する。ステップＳ３２２は、頂点ｖを変形処理前の形状に均等に配置するために行われる処理である。例えばメッシュ変形部１４０は、以下の式を満たすか否かにより、ユークリッド距離が閾値Ｄ以下か否かを判断する。
【０１９５】
【数１３】
2019204263.tif 000015
【０１９６】
ここで、ｄ（ｖ、ｖi）は、点ｖと点ｖiとの間のユークリッド距離を表す。ｖiは、固定点（すなわち初期メッシュモデル生成処理によって移動したテンプレートランドマーク）または既にステップＳ３２７でソースランドマークとされている頂点である。
【０１９７】
メッシュ変形部１４０は、頂点ｖと各ソースランドマークとのユークリッド距離のうち最小のものが閾値Ｄ以下である場合、選択した頂点をソースランドマークとせずに、ランドマーク設定処理を終了する。またメッシュ変形部１４０は、頂点ｖと各ソースランドマークとのユークリッド距離のうち最小のものが閾値Ｄより大きい場合、処理をステップＳ３２３に進める。
【０１９８】
［ステップＳ３２３］メッシュ変形部１４０は、単位法線ベクトルｎ（ｖ）を算出する。ここで、ｎ（ｖ）は、頂点ｖ（∈Ｈ）での面Ｈに対する単位法線ベクトルである。単位法線ベクトルとは、長さが１の法線ベクトルをいう。なお、Ｈ（⊂Ｖ）は、変形前または変形後の現在の初期メッシュモデルのデータにより特定される形状面であり、Ｖ（⊂Ｒ3）は目標形状を表す３次元形状データにより特定されるボクセル空間である。また、Ｒ3は、実数空間を表す。
【０１９９】
［ステップＳ３２４］メッシュ変形部１４０は、選択した頂点ｖが境界上にあるか否かを判断する。例えばメッシュ変形部１４０は、以下の式を満たすか否かにより、頂点ｖが境界上にあるか否かを判断する。
【０２００】
【数１４】
2019204263.tif 000016
【０２０１】
ここで、ボクセル空間Ｖから実数空間Ｒへの写像ｆ：Ｖ→Ｒは以下のように定義される。この写像ｆにより、ボクセル空間Ｖに含まれる目標形状の３次元形状データの要素が実数空間Ｒに対応付けられる。
【０２０２】
【数１５】
2019204263.tif 000017
【０２０３】
ここで、Ｉは点ｐ（∈Ｖ）を含むボクセルの輝度値である。境界設定処理（図２４参照）により、境界のボクセルには、輝度値「２」が設定されている。従って、選択した頂点ｖについて式（１４）が満たされる場合、その頂点ｖは境界上にある。メッシュ変形部１４０は、頂点ｖが境界上にある場合、処理をステップＳ３２５に進める。またメッシュ変形部１４０は、頂点ｖが境界上にない場合、処理をステップＳ３２６に進める。
【０２０４】
［ステップＳ３２５］メッシュ変形部１４０は、頂点ｖの位置をターゲットランドマークに設定する。メッシュ変形部１４０は、その後、処理をステップＳ３２９に進める。
［ステップＳ３２６］メッシュ変形部１４０は、境界点探索処理を実行する。境界点探索処理の詳細は後述する（図３５参照）。
【０２０５】
［ステップＳ３２７］メッシュ変形部１４０は、境界点探索処理により境界点が検出されたか判断する。メッシュ変形部１４０は、境界点が検出されていない場合、次の頂点について処理するため、ランドマーク設定処理を終了する。またメッシュ変形部１４０は、境界点が検出できた場合、処理をステップＳ３２８に進める。
【０２０６】
［ステップＳ３２８］メッシュ変形部１４０は、頂点ｖと境界点ｖ＋ｋｎ（ｖ）とを結ぶ線分の内分点をターゲットランドマークに設定する。具体的には、ターゲットランドマークは以下のような点に設定される。
【０２０７】
【数１６】
2019204263.tif 000018
【０２０８】
［ステップＳ３２９］メッシュ変形部１４０は、頂点ｖをソースランドマークに設定する。メッシュ変形部１４０は、設定されたソースランドマークとターゲットランドマークのデータとのペアをメモリ１０２に格納し、ランドマーク設定処理を終了する。
【０２０９】
このようにして、ソースランドマークとターゲットランドマークとのペアが設定される。例えば頂点ｖが境界部分にある場合には、頂点ｖの位置がターゲットランドマークとなるとともに、その頂点ｖが対応するソースランドマークとなる。これにより、既に境界上にある頂点ｖについて、変形処理を行っても移動しなくなる。その結果、心臓と心臓でない部分との境界を高精度で再現できるようになる。
【０２１０】
次に、境界点探索処理について詳細に説明する。
図３５は、境界点探索処理の手順の一例を示すフローチャートである。以下、図３５に示す処理をステップ番号に沿って説明する。
【０２１１】
［ステップＳ３３１］メッシュ変形部１４０は、頂点ｖが、３次元形状データに示される目標形状の内側に存在するか判断する。例えばメッシュ変形部１４０は、以下の式を満たすか否かを判断する。
【０２１２】
【数１７】
2019204263.tif 000019
【０２１３】
ここで、頂点ｖが目標形状の内側にあるのか外側にあるのかによる、以後の境界点の探索処理の違いについて、図３６と図３７を参照して説明する。
図３６は、頂点ｖが目標形状の内側に存在する場合の一例を示す図である。図３６に示すように、メッシュモデル８５上の頂点ｖに対応するボクセル空間の輝度値ｆ（ｖ）が１である場合には、頂点ｖが目標形状８６の内側に存在する。この場合、メッシュ変形部１４０は、後述するステップＳ３３７の処理において係数ｋを１ずつインクリメントするように設定することで、目標形状の内から外へ向かう方向に境界点を探索する。
【０２１４】
図３７は、頂点ｖが目標形状の外側に存在する場合の一例を示す図である。図３７に示すように、メッシュモデル８７上の頂点ｖに対応するボクセル空間の輝度値ｆ（ｖ）が０になる場合には、頂点ｖが目標形状８８の外側に存在する。この場合、メッシュ変形部１４０は、後述するステップＳ３４４の処理において係数ｋを１ずつデクリメントするように設定することで、目標形状の外から内へ向かう方向（法線の逆方向）に境界点を探索する。
【０２１５】
図３５の説明に戻る。メッシュ変形部１４０は、頂点ｖが目標形状の内側に存在する場合、処理をステップＳ３３２に進める。またメッシュ変形部１４０は、頂点ｖが目標形状の外側に存在する場合、処理をステップＳ３３９に進める。
【０２１６】
［ステップＳ３３２］メッシュ変形部１４０は、係数ｋをｋ＝０と設定する。
［ステップＳ３３３］メッシュ変形部１４０は、境界点であるかどうかを判定する点（以下、探索点と呼ぶ）を以下のように設定する。
【０２１７】
【数１８】
2019204263.tif 000020
【０２１８】
［ステップＳ３３４］メッシュ変形部１４０は、目標形状を示す３次元形状データにより特定されるボクセル空間内に、探索点が存在するか否かを判断する。例えばメッシュ変形部１４０は、以下の式を満たすか否かを判断する。
【０２１９】
【数１９】
2019204263.tif 000021
【０２２０】
メッシュ変形部１４０は、探索点がボクセル空間内にある場合、処理をステップＳ３３５に進める。またメッシュ変形部１４０は、探索点がボクセル空間内にない場合、探索点がボクセル空間外に達したため、頂点ｖについての法線と目標形状とが交点を有さないと判断し、境界点探索処理を終了する。
【０２２１】
［ステップＳ３３５］メッシュ変形部１４０は、探索点が変形前形状を貫通したか否かを判断する。例えばメッシュ変形部１４０は、以下の式を満たすか否かを判断する。
【０２２２】
【数２０】
2019204263.tif 000022
【０２２３】
ここで、写像ｇ：Ｖ→Ｒ3は以下のように定義される。この写像ｇにより、ボクセル空間Ｖに含まれるセグメント画像データの要素が実数空間Ｒ3に対応付けられる。
【０２２４】
【数２１】
2019204263.tif 000023
【０２２５】
ここで、写像ｇの制限ｇ|Hはｎ(ｖ)になる。探索点が境界点に達する前に変形前形状を貫通するような場合には、境界点の探索を適切に行えていない可能性がある。
図３８は、探索点が境界点に達する前に変形前形状を貫通するような場合の第１の例を示す図である。目標形状９０の内側における、図３８に示すような位置に、メッシュモデル８９上の頂点ｖがある場合、頂点ｖからの法線方向に境界点を探索すると、探索点が境界点に達する前に変形前形状を貫通する。
【０２２６】
図３９は、探索点が境界点に達する前に変形前形状を貫通するような場合の第２の例を示す図である。目標形状９２の外側における、図３９に示すような位置に、メッシュモデル９１上の頂点ｖがある場合にも、頂点ｖからの法線方向に境界点を探索すると、探索点が境界点に達する前に変形前形状を貫通する。
【０２２７】
このように、頂点ｖが目標形状の内側にあるか外側にあるかにかかわらず、探索方向に境界点が存在しない場合があり得る。この場合、境界点を検出できないか、または適切でない位置に境界点を検出してしまう可能性がある。そこでメッシュ変形部１４０は、式（２０）に示すように、頂点ｖについての法線ベクトルと探索点についての法線ベクトルとの内積を算出し、内積が０より小さい（法線ベクトルのなす角が９０度より大きい）場合に、探索点が変形前形状を貫通したと判断する。
【０２２８】
図３５の説明に戻る。メッシュ変形部１４０は、探索点が変形前形状を貫通した場合、適切な境界点を設定できないので、境界点探索処理を終了する。またメッシュ変形部１４０は、探索点が変形前形状を貫通していなければ、処理をステップＳ３３６に進める。
【０２２９】
［ステップＳ３３６］メッシュ変形部１４０は、探索点に対応するボクセル空間の輝度値が２であるか否かを判断する。メッシュ変形部１４０は、探索点の輝度値が２ではない場合、処理をステップＳ３３７に進める。またメッシュ変形部１４０は、探索点の輝度値が２の場合、処理をステップＳ３３８に進める。
【０２３０】
［ステップＳ３３７］メッシュ変形部１４０は、係数ｋをｋ＝ｋ＋１とインクリメントし、処理をステップＳ３３３に進める。このように係数ｋの値を１ずつ増加させることで、頂点ｖから法線方向へ１ボクセル分ずつ探索点を移動させつつ、探索点が境界の部分に該当するか否かを判定することができる。
【０２３１】
［ステップＳ３３８］メッシュ変形部１４０は、探索点を、境界点として設定する。例えばメッシュ変形部１４０は、探索点のデータ（例えばｋの値）をメモリ１０２などの記憶装置に格納する。メッシュ変形部１４０は、その後、境界点探索処理を終了する。
【０２３２】
ステップＳ３３２〜Ｓ３３８の処理は、頂点ｖが目標形状の内側に存在する場合の処理である。これに対し、頂点ｖが目標形状の外側に存在する場合、メッシュ変形部１４０は、ステップＳ３３９〜Ｓ３４５の処理を実行する。頂点ｖが目標形状の外側に存在する場合の処理は、頂点ｖが目標形状の内側に存在する場合と、探索方向が異なるだけであり、ステップＳ３３９〜Ｓ３４３，Ｓ３４５の処理は、それぞれステップＳ３３２〜Ｓ３３６，Ｓ３３８の処理と同様である。従って、ステップＳ３３９〜３４３，Ｓ３４５の処理の詳細な説明は省略する。頂点ｖが目標形状の内側に存在する場合と異なる処理を行うのは、ステップＳ３４４である。
【０２３３】
［ステップＳ３４４］メッシュ変形部１４０は、係数ｋをｋ＝ｋ−１とデクリメントし、処理をステップＳ３４０に進める。これにより、探索点が、目標形状の外側から内側へ向かう方向（法線ベクトルの逆方向）に１ボクセル分移動される。
【０２３４】
図４０は、探索点の移動例を示す図である。メッシュモデル９３上の頂点ｖが目標形状９４の外側にある場合、係数ｋが初期値「０」から１ずつデクリメントされると、ｋは負の値となる。すると式（１８）で表される探索点は、法線ベクトルの逆方向に、少しずつ移動する。そして、探索点の移動を繰り返すことで、探索点が境界に達する。
【０２３５】
以上のような処理を実行することにより、頂点ｖについての法線と目標形状との交点のうち、輝度値が２である交点を境界点として検出することができるようになる。境界点が正しく設定できることで、メッシュ変形部１４０は、ソースランドマークが適切な位置に移動するように、初期メッシュモデルの形状を変形することができる。その結果、初期メッシュモデルの形状が、断層画像に基づく３次元形状に近付き、精度の高い３次元形状のメッシュモデルを得ることができる。また、このような変形方法であれば、処理時間が比較的短くて済むようになる。
【０２３６】
＜境界メッシュモデル生成処理＞
次に境界メッシュモデル生成処理について説明する。
図４１は、境界メッシュモデル生成処理の手順の一例を示すフローチャートである。以下、図４１に示す処理をステップ番号に沿って説明する。
【０２３７】
［ステップＳ４０１］メッシュ変形部１４０は、初期メッシュモデルを変形することで得られたメッシュモデル（変形メッシュモデル）から、境界面との境界に配置された頂点（境界頂点）を抽出する。
【０２３８】
［ステップＳ４０２］メッシュ変形部１４０は、テンプレートメッシュモデル３０に含まれる境界面メッシュモデル３３（図４参照）から、心筋面メッシュモデル３２（図４参照）との境界に配置された頂点（境界頂点）を抽出する。
【０２３９】
［ステップＳ４０３］メッシュ変形部１４０は、変形メッシュモデルから抽出した境界頂点にターゲットランドマークを設定し、テンプレートメッシュモデル３０の境界面メッシュモデル３３から抽出した境界頂点にソースランドマークを設定する。そしてメッシュ変形部１４０は、ターゲットランドマークとソースランドマークとの対からなるランドマークペアを生成する。
【０２４０】
［ステップＳ４０４］メッシュ変形部１４０は、ソースランドマークが、対応するターゲットランドマークの位置に移動するように、境界面メッシュモデル３３をＴＰＳＷａｒｐによって変形する。
【０２４１】
このようにして、境界面メッシュモデル３３を含め、患者の心臓の形状を再現したメッシュモデルが生成される。生成されたメッシュモデルを、例えばモニタ２１に表示することで、患者の心臓を視覚的に観察できる。
【０２４２】
図４２は、患者の心臓の形状を示すメッシュモデルの一例を示す図である。生成されたメッシュモデル９５は、患者の心臓を正確に再現したものである。しかも、弁輪におけるテンプレートランドマークが適切な位置に設定されたことで、不自然なゆがみのない、自然な形状が再現されている。
【０２４３】
〔その他の実施の形態〕
第２の実施の形態は、左心室、右心室、および心筋のメッシュモデルの変形例を示したが、同様にして左心房、右心房などの他の部位も変形できる。
【０２４４】
またメッシュモデルの変形手法としてＴＰＳＷａｒｐの例を示したが、他の手法で変形してもよい。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【符号の説明】
【０２４５】
１  目標点
２，２ａ  メッシュモデル
３  制御点
１０  生体モデル生成装置
１１  記憶部
１１ａ  メッシュモデルデータ
１１ｂ  目標点データ
１２  処理部
【図１】
2019204263.tif 000024
【図２】
2019204263.tif 000025
【図３】
2019204263.tif 000026
【図４】
2019204263.tif 000027
【図５】
2019204263.tif 000028
【図６】
2019204263.tif 000029
【図７】
2019204263.tif 000030
【図８】
2019204263.tif 000031
【図９】
2019204263.tif 000032
【図１０】
2019204263.tif 000033
【図１１】
2019204263.tif 000034
【図１２】
2019204263.tif 000035
【図１３】
2019204263.tif 000036
【図１４】
2019204263.tif 000037
【図１５】
2019204263.tif 000038
【図１６】
2019204263.tif 000039
【図１７】
2019204263.tif 000040
【図１８】
2019204263.tif 000041
【図１９】
2019204263.tif 000042
【図２０】
2019204263.tif 000043
【図２１】
2019204263.tif 000044
【図２２】
2019204263.tif 000045
【図２３】
2019204263.tif 000046
【図２４】
2019204263.tif 000047
【図２５】
2019204263.tif 000048
【図２６】
2019204263.tif 000049
【図２７】
2019204263.tif 000050
【図２８】
2019204263.tif 000051
【図２９】
2019204263.tif 000052
【図３０】
2019204263.tif 000053
【図３１】
2019204263.tif 000054
【図３２】
2019204263.tif 000055
【図３３】
2019204263.tif 000056
【図３４】
2019204263.tif 000057
【図３５】
2019204263.tif 000058
【図３６】
2019204263.tif 000059
【図３７】
2019204263.tif 000060
【図３８】
2019204263.tif 000061
【図３９】
2019204263.tif 000062
【図４０】
2019204263.tif 000063
【図４１】
2019204263.tif 000064
【図４２】
2019204263.tif 000065