(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-30
(45)【発行日】2024-05-10
(54)【発明の名称】画像処理装置、画像処理方法、およびプログラム
(51)【国際特許分類】
G06T 7/12 20170101AFI20240501BHJP
G06T 7/00 20170101ALI20240501BHJP
A61B 6/00 20240101ALI20240501BHJP
【FI】
G06T7/12
G06T7/00 612
A61B6/00 550D
(21)【出願番号】P 2020137637
(22)【出願日】2020-08-17
【審査請求日】2023-06-05
(73)【特許権者】
【識別番号】505210115
【氏名又は名称】国立大学法人旭川医科大学
(74)【代理人】
【識別番号】100115749
【氏名又は名称】谷川 英和
(72)【発明者】
【氏名】沖崎 貴琢
(72)【発明者】
【氏名】堂下 和志
【審査官】吉田 千裕
(56)【参考文献】
【文献】特開2015-226852(JP,A)
【文献】特開2019-187862(JP,A)
【文献】特表2017-510427(JP,A)
【文献】永田 亮一ほか,胸部X線像からの胸郭境界検出法,電子情報通信学会技術研究報告 Vol.108 No.271 IEICE Technical Report,日本,2008年10月23日
【文献】尾崎 誠, 小林 富士男,胃X線画像からの高精度な胃領域輪郭線自動抽出,コンピュータ支援画像診断学会論文誌,2004年10月22日,2000, 4巻, 4号,p.31-38
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/12
G06T 7/00
A61B 6/00
(57)【特許請求の範囲】
【請求項1】
胸部透過画像が格納される画像格納部と、
前記胸部透過画像において、画素値のしきい値を利用して、連続した画素を有する左右の肺野部の候補となる領域である第一領域を検出する第一検出部と、
前記第一領域から離れる方向において画素値が増加しているエッジを検出するエッジ検出部と、
前記エッジ検出部が検出したエッジの画素を始点とし、始点となる画素近傍の予め決められた領域において取得したこの領域を2値化する境界値である最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する第二検出部と、
前記肺野部の情報を出力する出力部と、を備えた画像処理装置。
【請求項2】
前記第二検出部は、当該第二検出部が検出した輪郭の候補となる画素を、新たな始点として用いて、始点となる画素近傍の予め決められた領域において取得した最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する請求項1記載の画像処理装置。
【請求項3】
前記第二検出部は、前記始点となる画素近傍の予め決められた領域において判別分析法を用いて最適境界値を取得する請求項2記載の画像処理装置。
【請求項4】
前記第二検出部は、
前記始点となる画素に対して接する探索範囲であって、輪郭の候補となる画素を検出する方向に対して垂直方向に直線状に連続する探索範囲において、最適境界値を用いて肺野部の輪郭の候補となる画素を検出するものであり、
前記探索範囲の、始点となる画素を基準とした両端方向の広さが、当該探索範囲が設定される位置に応じて異なる請求項1から請求項3いずれか一項記載の画像処理装置。
【請求項5】
前記第二検出部は、前記第一領域である左右の肺野部の候補となる領域同士が向かい合う側とは反対側である外側において前記エッジ検出部が検出したエッジの画素のうちの、直線状につながった部分を、左右の肺野部の外側の輪郭の候補の画素とするとともに、当該部分の上端の画素、および当該部分の下端の画素を、それぞれ前記始点として用いる請求項1から請求項4いずれか一項記載の画像処理装置。
【請求項6】
前記第二検出部は、
前記第一領域である左右の肺野部の候補となる領域同士が向かい合う側とは反対側である外側において、当該左右の肺野部の候補となる領域のそれぞれについて前記エッジ検出部が検出したエッジの画素のうちの、上下方向に直線状につながった部分の上端から、上方向に最適境界値を用いて順次、近接して位置する肺野部の外側の輪郭の候補となる画素を検出し、
前記第一領域である左右の肺野部の候補となる領域の上側において前記エッジ検出部が検出したエッジの画素のうちの、左右方向に直線状につながっている部分の外側の端から、外側方向に最適境界値を用いて順次、近接して位置する肺野部の上側の輪郭の候補となる画素を検出し、
肺野部の外側の輪郭の候補となる画素と、肺野部の上側の輪郭の候補となる画素が重なる場合に、重なる画素を始点として、最適境界値を用いて順次、肺野部の内側方向に向かって肺野部の上側の輪郭の候補となる画素を検出する請求項1から請求項4いずれか一項記載の画像処理装置。
【請求項7】
前記第二検出部は、予め決められた高さにおける左右方向の画素値の分布を用いて、左右の肺に挟まれた内側の領域において左右の肺野部の領域と気管の領域を検出し、当該高さの、左右の肺野部の領域と気管の領域内の始点から、最適境界値を用いて順次、左右の肺野部の内側の輪郭の候補となる画素を検出する請求項1から請求項6いずれか一項記載の画像処理装置。
【請求項8】
前記第二検出部は、
左肺野部の内側において検出した輪郭の候補となる画素が、心臓の輪郭を示す画素を誤検出しているか判断し、
誤検出している場合に、検出した輪郭の候補となる画素のうちの予め決められた高さの画素から、内側方向において画素値が増加する画素と、下方向において画素値が増加する画素とをそれぞれ検出し、
左方向において画素値が増加する画素を始点として、最適境界値を用いて順次、上下方向に左肺の内側の輪郭の候補となる画素を検出し、
下方向において画素値が増加する画素を始点として、最適境界値を用いて順次、左右方向に、左肺の下側の輪郭の候補となる画素を検出する請求項1から請求項7いずれか一項記載の画像処理装置。
【請求項9】
前記第二検出部は、
下方向において画素値が増加する箇所を検出する場合において、検出された一の境界の上側または左肺の外側方向に、画素値が減少している箇所があるか判断し、
ある場合に、検出された境界以外の境界を用いて左肺の下側の輪郭の候補となる画素を検出する請求項8記載の画像処理装置。
【請求項10】
前記第二検出部は、
左右の肺の外側の輪郭の候補となる画素のうちの下端に位置する画素と、左右の肺の下側の輪郭の候補となる画素のうちの外側に位置する画素とについて、予め決められた領域内の画素の画素値を用いて最適境界値を取得し、
それぞれの画素の近傍の画素であって、取得した最適境界値以下の画素値を有する画素を、肺野部の画素に加える請求項1から請求項9いずれか一項記載の画像処理装置。
【請求項11】
胸部透過画像が格納される画像格納部と、第一検出部と、エッジ検出部と、第二検出部と、出力部とを用いて行われる画像処理方法であって、
前記第一検出部が、前記胸部透過画像において、画素値のしきい値を利用して、連続した画素を有する左右の肺野部の候補となる領域である第一領域を検出する第一検出ステップと、
前記エッジ検出部が、前記第一領域から離れる方向において画素値が増加しているエッジを検出するエッジ検出ステップと、
前記第二検出部が、前記エッジ検出ステップで検出したエッジの画素を始点とし、始点となる画素近傍の予め決められた領域において取得したこの領域を2値化する境界値である最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する第二検出ステップと、
前記出力部が、前記肺野部の情報を出力する出力ステップと、を備えた画像処理方法。
【請求項12】
胸部透過画像が格納される画像格納部にアクセス可能なコンピュータを、
前記胸部透過画像において、画素値のしきい値を利用して、連続した画素を有する左右の肺野部の候補となる領域である第一領域を検出する第一検出部と、
前記第一領域から離れる方向において画素値が増加しているエッジを検出するエッジ検出部と、
前記エッジ検出部が検出したエッジの画素を始点とし、始点となる画素近傍の予め決められた領域において取得したこの領域を2値化する境界値である最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する第二検出部と、
前記肺野部の情報を出力する出力部と、して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、生体に関する画像を処理する装置等に関するものである。
【背景技術】
【0002】
従来の技術として、大きな肺の領域でROI(関心領域)を完全に自動的に選択するために、胸郭と横隔膜のエッジを自動的に見つけることによって大きな肺の周辺領域が最初に特定し、次に、所定のマトリクスサイズの数多くのROIが、特定された領域の境界内を満たす格子の形で選択され、背景の不均一さが個々のROIから除去された後、重み付けエッジ勾配ヒストグラム分析によってシャープなエッジを持つROIが取り除かれる技術が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第3400008号公報(第1頁、第1図等)
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記のような従来の画像処理装置においては、胸部レントゲン画像等の胸部透過画像において、肺野部を適切に検出することができない、という課題があった。例えば、肺野部には、乳房などの軟部組織構造が重なって描出されているため、肺野部の画像上の輝度が比較的不均一であるとともに、縦隔や骨が複雑に重なり合って画像上に複雑な輝度のエッジが多数検出されてしまうことから、肺野部を適切に検出することが困難であった。
【0005】
本発明は、上記のような課題を解消するためになされたものであり、胸部透過画像において肺野部を適切に検出することができる画像処理装置等を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の画像処理装置は、胸部透過画像が格納される画像格納部と、胸部透過画像において、画素値のしきい値を利用して、連続した画素を有する左右の肺野部の候補となる領域である第一領域を検出する第一検出部と、第一領域から離れる方向において画素値が増加しているエッジを検出するエッジ検出部と、エッジ検出部が検出したエッジの画素を始点とし、始点となる画素近傍の予め決められた領域において取得したこの領域を2値化するための境界値である最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する第二検出部と、肺野部の情報を出力する出力部と、を備えた画像処理装置である。
【0007】
かかる構成により、輪郭の候補となる領域を、最適境界値を用いて取得して、胸部透過画像において肺野部を適切に検出することができる
【0008】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、第二検出部が検出した輪郭の候補となる画素を、新たな始点として用いて、始点となる画素近傍の予め決められた領域において取得した最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出するようにしてもよい。
【0009】
かかる構成により、輪郭の候補となる領域を、最適境界値を用いて順次取得して、胸部透過画像において肺野部を適切に検出することができる。
【0010】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、始点となる画素近傍の予め決められた領域において判別分析法を用いて最適境界値を取得するようにしてもよい。
【0011】
かかる構成により、輪郭の候補となる領域を、判別分析法により取得した最適境界値を用いて検出することができ、より適切に肺野部を検出することができる。
【0012】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、始点となる画素に対して接する探索範囲であって、輪郭の候補となる画素を検出する方向に対して垂直方向に直線状に連続する探索範囲において、最適境界値を用いて肺野部の輪郭の候補となる画素を検出するものであり、探索範囲の、始点となる画素を基準とした両端方向の広さが、探索範囲が設定される位置に応じて異なるようにしてもよい。
【0013】
かかる構成により、肺野部の輪郭の傾向に合わせて、適切な探索範囲から、輪郭の候補を検出して、適切に肺野部を検出することができる。
【0014】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、第一領域である左右の肺野部の候補となる領域同士が向かい合う側とは反対側である外側において前記エッジ検出部が検出したエッジの画素のうちの、直線状につながった部分を、左右の肺野部の外側の輪郭の候補の画素とするとともに、上端の画素、および下端の画素を、それぞれ始点として用いるようにしてもよい。
【0015】
かかる構成により、肺野部の外側の輪郭を適切に検出することができるとともに、エッジ検出した部分の一部を肺野部の外側の輪郭の一部として用いることで、輪郭検出の処理を高速化できる。また、肺野部の外側の、輪郭の画素であることが確からしい画素を始点として、最適境界値を用いて肺野部の外側の輪郭を検出することができ、精度良く肺野部を検出することができる。
【0016】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、第一領域である左右の肺野部の候補となる領域同士が向かい合う側とは反対側である外側において、左右の肺野部の候補となる領域のそれぞれについてエッジ検出部が検出したエッジの画素のうちの、上下方向に直線状につながった部分の上端から、上方向に最適境界値を用いて順次、近接して位置する肺野部の外側の輪郭の候補となる画素を検出し、第一領域である左右の肺野部の候補となる領域の上側においてエッジ検出部が検出したエッジの画素のうちの、左右方向に直線状につながっている部分の外側の端から、外側方向に最適境界値を用いて順次、近接して位置する肺野部の上側の輪郭の候補となる画素を検出し、肺野部の外側の輪郭の候補となる画素と、肺野部の上側の輪郭の候補となる画素が重なる場合に、重なる画素を始点として、最適境界値を用いて順次、肺野部の内側方向に向かって肺野部の上側の輪郭の候補となる画素を検出するようにしてもよい。
【0017】
かかる構成により、肺野部の上方の、輪郭の画素であることが確からしい画素を始点として、最適境界値を用いて肺野部の上方の輪郭を検出することができ、精度良く肺野部を検出することができる。
【0018】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、予め決められた高さにおける左右方向の画素値の分布を用いて、左右の肺に挟まれた内側の領域において左右の肺野部の領域と気管の領域を検出し、高さの、左右の肺野部の領域と気管の領域内の始点から、最適境界値を用いて順次、左右の肺野部の内側の輪郭の候補となる画素を検出するようにしてもよい。
【0019】
かかる構成により、気管を考慮して、肺野部の内側の輪郭を適切に検出することができ、精度良く肺野部を検出することができる。
【0020】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、左肺野部の内側において検出した輪郭の候補となる画素が、心臓の輪郭を示す画素を誤検出しているか判断し、誤検出している場合に、検出した輪郭の候補となる画素のうちの予め決められた高さの画素から、内側方向において画素値が増加する画素と、下方向において画素値が増加する画素とをそれぞれ検出し、左方向において画素値が増加する画素を始点として、最適境界値を用いて順次、上下方向に左肺の内側の輪郭の候補となる画素を検出し、下方向において画素値が増加する画素を始点として、最適境界値を用いて順次、左右方向に、左肺の下側の輪郭の候補となる画素を検出するようにしてもよい。
【0021】
かかる構成により、心臓により誤検出された輪郭を除外して、適切に左肺野部を検出することができる。
【0022】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、下方向において画素値が増加する箇所を検出する場合において、検出された一の境界の上側または左肺の外側方向に、画素値が減少している箇所があるか判断し、ある場合に、検出された境界以外の境界を用いて左肺の下側の輪郭の候補となる画素を検出するようにしてもよい。
【0023】
かかる構成により、胃の中の気泡の輪郭を、肺野部の下端の輪郭として誤検出しないようにすることができる。
【0024】
また、本発明の画像処理装置は、前記画像処理装置において、第二検出部は、左右の肺の外側の輪郭の候補となる画素のうちの下端に位置する画素と、左右の肺の下側の輪郭の候補となる画素のうちの外側に位置する画素とについて、予め決められた領域内の画素の画素値を用いて最適境界値を取得し、それぞれの画素の近傍の画素であって、取得した最適境界値以下の画素値を有する画素を、肺野部の画素に加えるようにしてもよい。
【0025】
かかる構成により、肺野部の右肋骨横隔膜角および左肋骨横隔膜角を適切に検出することができる。
【発明の効果】
【0026】
本発明による画像処理装置等によれば、胸部透過画像において肺野部を適切に検出することができる。
【図面の簡単な説明】
【0027】
【
図1】本発明の実施の形態における画像処理装置のブロック図
【
図2】同画像処理装置の動作を説明するための模式図
【
図3】同画像処理装置1の動作について説明するフローチャート
【
図4】同画像処理装置1の動作について説明するフローチャート
【
図5】同画像処理装置1の動作について説明するフローチャート
【
図6】同画像処理装置1の動作について説明するフローチャート
【
図7】同画像処理装置1の動作について説明するフローチャート
【
図8】同画像処理装置1の動作について説明するフローチャート
【
図9】同画像処理装置の具体例を説明するための、画像管理表を示す図(
図9(a))、および胸部レントゲン画像の表示例を示す図(
図9(b))
【
図15】同画像処理装置の具体例を説明するための図
【
図16】同画像処理装置の具体例を説明するための図
【
図17】同画像処理装置の具体例を説明するための図
【
図18】同画像処理装置の具体例を説明するための図
【
図19】本発明の実施の形態におけるコンピュータシステムの外観の一例を示す図
【
図20】同コンピュータシステムの構成の一例を示す図
【発明を実施するための形態】
【0028】
以下、画像処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【0029】
(実施の形態)
【0030】
図1は、本実施の形態における画像処理装置1のブロック図である。
【0031】
画像処理装置1は、画像格納部101、第一検出部102、エッジ検出部103、第二検出部104、出力部105を備える。
【0032】
画像格納部101には、1または2以上の胸部透過画像が格納される。胸部透過画像は、人体の胸部を撮影した透過画像である。胸部透過画像は、通常、胸部を正面から撮影した画像である。胸部透過画像は、例えば、胸部レントゲン(X線)画像や、胸部のMRI(magnetic resonance imaging)画像や、胸部の超音波検査画像である。ここでの胸部透過画像は、複数の画素で構成されるデジタル画像である。胸部透過画像は、通常、デジタル画像データとして画像格納部101に格納される。胸部透過画像のデータ構造やファイル形式等は問わない。胸部透過画像は、通常、グレースケール画像であるが、カラー画像であってもよい。胸部透過画像のサイズや形状、画素数、色深度等は問わない。胸部透過画像は、通常、静止画像であるが、動画像であってもよい。本実施の形態においては、主として、画像格納部101に格納される胸部透過画像が、256階調グレースケールの胸部レントゲン画像である場合について説明する。グレースケール画像である場合、通常、画素値や、明度や輝度を表す値となる。胸部レントゲン画像は、例えば、画像処理時の計算量を削減するためには、128×128ピクセル程度の画像であることが好ましいが、サイズはこれに限定されるものではない。例えば、画像サイズが大きい場合、必要に応じてリサイズすることで画素数を削減してもよい。
【0033】
画像格納部101に格納される1または2以上の胸部透過画像は、予め決められた1または2以上の画像処理が行われた画像であってもよい。1または2以上の画像処理は、例えば、標準化処理や、縦横比の変更、画素数の変更等である。また、カラー画像をグレースケール画像に変換する処理や、レベル補正やコントラストを補正する処理等の画質に関する処理、および画像の傾き等を補正する処理等であってもよい。
【0034】
画像格納部101には、例えば、画像受付部(図示せず)が受け付けた1または2以上の胸部透過画像が蓄積される。画像格納部101への胸部透過画像の蓄積は、例えば、画像受付部が受け付けた胸部透過画像の一時記憶であってもよい。ただし、胸部透過画像が画像格納部101にどのように蓄積されるかは問わない。画像格納部101には、例えば、他の装置で撮影されて蓄積された胸部透過画像が格納されていてもよい。
【0035】
画像格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
【0036】
第一検出部102は、画像格納部101に格納されている胸部透過画像において、画素値のしきい値を利用して、第一領域を検出する。第一領域は、連続した画素を有する左右の肺野部の候補となる領域である第一領域は、通常、左の肺野部の候補となる領域と、右の肺野部の候補となる領域との2つの領域で構成される。第一領域を検出することは、例えば、第一領域の輪郭の情報(例えば、輪郭の画素の座標群)を取得することであってもよく、第一領域内の複数の画素の位置情報(例えば、座標群)を取得することであってもよい。なお、以下、第一領域のうちの、右肺野部の候補となる領域を右肺野部の第一領域と呼び、左肺野部の候補となる領域を、左肺野部の第一領域と呼ぶ場合がある。
【0037】
第一検出部102が第一領域を検出する際に用いるしきい値は、例えば、複数の胸部透過画像に関係なく固定された値であってもよく、複数の胸部透過画像ごとに応じて設定される値であってもよい。第一検出部102が第一領域を検出する際に利用するしきい値は、通常は一つである。ただし、右肺野部の第一領域と、左肺野部の第一領域とを、それぞれ、異なる一つの閾値で検出してもよい。また、例えば、胸部透過画像内の第一領域の検出を行う位置等に応じて、異なるしきい値を用いてもよい。
【0038】
通常の胸部レントゲン画像等の胸部透過画像においては、肺野部の画素の画素値は、生体の他の部分の画素に対して比較的に画素値が小さくなるため、例えば、第一検出部102は、画素値がしきい値より小さい連続する画素を、肺野部の画素として検出する。連続する画素とは、例えば、画素同士の辺が隣り合う、または接することでつながっている複数の画素群である。ここでは、例えば、角のみで接している画素同士は、連続する画素とは考えないようにする。ただし、このような画素も連続する画素を考えるようにしてもよい。
【0039】
第一検出部102は、例えば、胸部透過画像内の左右の肺野部内に設定されるそれぞれの始点から、しきい値を用いて各始点にそれぞれ連続する画素を検出することで、左右の肺野部の候補となる第一領域を検出する。第一検出部102は、例えば、各始点にそれぞれ連続するしきい値以下の画素値を有する画素を検出する。第一検出部102は、例えば、胸部透過画像内の、通常の胸部透過画像であれば左の肺野部と右の肺野部とがそれぞれ存在する可能性が非常に高い位置にそれぞれ設定される予め決められた形状およびサイズを有する領域である2つの第一検索領域内の、それぞれの最も画素値の低い画素を、胸部透過画像内の左の肺野部内と右肺野部内とのそれぞれの始点に設定する。予め決められた形状およびサイズを有する領域は、例えば、予め決められた矩形の領域である。左肺野部の始点を設定するための領域と、右肺野部の始点を設定するための領域との形状およびサイズは同じであってもよく、異なっていてもよい。例えば、第一検出部102は、胸部透過画像内の、x座標が、画像全体の25~37.5%の範囲内であり、y座標が画像全体の25~50%の範囲内となる矩形領域から、最も画素値の低い画素を、右肺野部の第一領域を検出する始点に設定し、胸部透過画像内の、x座標が、画像全体の62.5~75%の範囲内であり、y座標が画像全体の25~50%の範囲内となる矩形領域から、最も画素値の低い画素を、左肺野部の第一領域を検出する始点に設定する。ただし、この範囲は、一例であり、始点を設定するための範囲は、この範囲に限定されるものではない。
【0040】
本実施の形態においては、x座標およびy座標の原点は、生体を正面から撮影した胸部透過画像の左上隅とし、原点から右方向がx軸の正方向であり、原点から下方向がy軸の正方向であるとする。生体を正面から撮影した胸部透過画像においては、被写体の右肺野部が左側に位置し、左肺野部が右側に位置している。
【0041】
なお、第一検出部102が左右の肺野部の候補となる第一領域を検出する際に利用する胸部透過画像内の左右の肺野部内のそれぞれの始点を胸部透過画像内に設定する処理は、上記の処理に限定されるものではない。例えば、胸部透過画像内の、通常の胸部透過画像であれば左の肺野部と右の肺野部とがそれぞれ存在する可能性が非常に高い位置を、左の肺野部内と右肺野部内とのそれぞれの始点に設定してもよい。また、例えば、図示しない受付部が、ユーザが目視や画素値等を参照して決定した左右の肺野部内のそれぞれの始点を指定する情報(例えば、座標値)を、数値入力や、胸部透過画像内でポインタ等により指定する操作を介して、受け付けてもよい。
【0042】
第一検出部102が検出する第一領域は、肺野部内の画素のみで構成される領域であることが好ましい。第一検出部102は、このような第一領域が検出できるような領域検出の処理を行うことが好ましい。例えば、このような領域検出をおこなうために、第一検出部102は、例えば、Watershedアルゴリズムを用いて、左右の肺野部にそれぞれ設定した上記の始点から、左右の肺野部の候補となる第一領域をそれぞれ検出する。Watershedアルゴリズムとは、領域の始点を画像の輝度値の局所最小値に設定し、しきい値を利用して始点を含む領域を隣接画素へ広げていくことにより、最終的な領域を検出するアルゴリズムである。Watershedアルゴリズムについては、以下の非特許文献を参照されたい。非特許文献1「芝井 貴生、上野 義人、"画像検索用改良 Watershed アルゴリズムを用いた領域分割法"、[online]、FIT(情報科学技術フォーラム)2003、[令和2年6月10日検索]、インターネット<URL:https://www.ieice.org/publications/conference-FIT-DVDs/FIT2003/pdf/D/D_014.pdf>」、非特許文献2「"Watershedアルゴリズムを使った画像の領域分割"、[online]、[令和2年6月10日検索]、インターネット<URL:http://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/OpenCV/html/py_tutorials/py_imgproc/py_watershed/py_watershed.html>」。Watershedアルゴリズムを用いた第一領域の検出処理の例については、後述する。
【0043】
なお、第一検出部102が、始点から第一領域を検出する処理は、Watershedアルゴリズムを利用した処理に限定されるものではなく、例えば、できる限り肺野部以外の領域を含まないように、左右の肺野部を大まかに検出できる処理であれば、上記以外の処理を用いてもよい。例えば、第一検出部102は、いわゆるPタイル法や、モード法、大津の2値化とも呼ばれる判別分析法を行って第一領域を検出してもよい。また、ここでは、始点を利用して第一領域を検出したが、第一検出部102は、始点を利用せずに第一領域を検出してもよい。その場合、始点を設定する処理は省略してよい。
【0044】
なお、第一検出部102は、第一領域を検出する処理の前に、予め決められた1または2以上の画像処理を行ってもよい。1または2以上の画像処理は、例えば、標準化処理や、縦横比の変更、画素数の変更等である。また、カラー画像をグレースケール画像に変換する処理や、レベル補正やコントラストを補正する処理等の画質に関する処理、および画像の傾き等を補正する処理等であってもよい。また、1または2以上の画像処理は、胸部透過画像全体に生じている輝度のグラデーションを除去する処理であってもよい。例えば、通常は、被写体である人体の胸や背中を、左右均等にイメージングプレートに隙間の無いように接するようにし、そのまま静止した状態を数秒保持している状態で、胸部レントゲン画像等の胸部透過画像の撮影が行われるが、被写体によっては、痛みや認知症、あるいは年齢的な問題でこの指示が守れず、人体の胸部の左右のいずれか一方や、上下のいずれか一方がイメージングプレートから浮いたまま撮影が行われてしまう場合がある。このような場合、人体の左右のいずれか一方や上下のいずれか一方とイメージングプレートとの間に空気が入ることで、左右方向や上下方向において全体的に輝度のグラデーションがついた胸部透過画像が得られる場合がある。このような上下左右方向にグラデーションがかかっている画像から、肺野部を検出した場合、多くの場合、左右の肺野部の一方が大きく、他方が小さく検出されることが多く、その後の処理で肺野部の正しい輪郭検出ができない場合がある。このため、このような胸部透過画像の全体的な輝度のグラデーションを除去する処理を行うことで、肺野部の正しい輪郭検出処理が可能となる。なお、このようなグラデーションを除去する処理の一例については後述する。なお、このようなグラデーションをどのように除去するかは問わない。
【0045】
また、第一検出部102は、胸部透過画像内において、肺野部の輪郭を検出する際に誤検出の原因となり得る部分を検出して、検出した部分を、誤検出が生じないような画素等に置き換えたり、削除したり、検出対象から除外する処理等を行うようにしてもよい。
【0046】
第一検出部102は、上記のように始点となる画素に連続する画素を検出した後、検出した画素で構成される領域の輪郭を補正するための画像処理を行ってもよい。この画像処理は、例えば、輪郭のジャギーを軽減したり第一領域内に生じる第一領域以外の領域を削除したりするためのモルフォロジー処理や、輪郭をなめらかにするスムージング処理である。
【0047】
エッジ検出部103は、第一領域から離れる方向において画素値が増加しているエッジを検出する。例えば、エッジ検出部103は、第一検出部102が胸部透過画像において検出した右肺野部の第一領域の上下左右のうちの1以上の方向、および左肺野部の第一領域の上下左右のうちの1以上の方向において、それぞれ、画素値が増加しているエッジを検出する。エッジ検出部103は、例えば、左肺野部の第一領域と、右肺野部の第一領域とのそれぞれの外側においてエッジを検出する。また、エッジ検出部103は、例えば、左肺野部の第一領域と、右肺野部の第一領域とのそれぞれの上側においてエッジを検出する。また、エッジ検出部103は、例えば、左肺野部の第一領域と、右肺野部の第一領域とのそれぞれの下側においてエッジを検出する。例えば、エッジ検出部103は、右肺野部の第一領域と左肺野部の第一領域の、外側、上側、および下側において、それぞれエッジを検出する。
【0048】
なお、ここでは、エッジ検出部103が、例えば、左肺野部の第一領域と、右肺野部の第一領域とのそれぞれの内側方向においてエッジを検出しない場合について説明するが、内側方向においてもエッジを検出するようにしてもよい。
【0049】
右肺野部の第一領域および左肺野部の第一領域の外側においてエッジを検出する、ということは、例えば、これらの第一領域の外側方向や外側の領域においてエッジを検出することである。かかることは、左右の肺野部の第一領域の上側や、下側や、内側においてエッジを検出する場合についても同様である。また、かかることは、後述するような第一領域の外側等において輪郭を検出する場合についても同様である。
【0050】
なお、左右の肺野部の第一領域の外側とは、左右の肺野部の候補となる領域(即ち、左右の肺野部の第一領域)同士が向かい合う側とは反対側である。例えば、右肺野部の外側とは、右肺野部の、左肺野部とは反対側の部分であり、左肺野部の外側とは、左肺野部の、右肺野部とは反対側の部分である。左肺野部の第一領域の外側方向とは、例えば、左肺野部の第一領域に対して、右肺野部とは反対側となる方向であり、右肺野部の第一領域の外側方向とは、例えば、右肺野部の第一領域に対して、左肺野部とは反対側となる方向である。左肺野部の第一領域の外側方向のエッジは、例えば、正面から撮影した胸部透過画像において、左肺野部の第一領域の右方向に位置するエッジである。右肺野部の第一領域の外側方向のエッジは、例えば、正面から撮影した胸部透過画像において、右肺野部の第一領域の左方向に位置するエッジである。
【0051】
また、右肺野部の内側とは、右肺野部の、左肺野部側の部分であり、左肺野部の内側とは、左肺野部の、右肺野部側の部分である。左肺野部の第一領域の内側方向とは、例えば、左肺野部の第一領域に対して、右肺野部側となる方向であり、右肺野部の第一領域の外側方向とは、例えば、右肺野部の第一領域に対して、左肺野部側となる方向である。ここでの内側とは、例えば、左肺野部と、右肺野部とに挟まれた部分と考えてもよく、左肺野部の第一領域と、右肺野部の第一領域とに挟まれた領域と考えてもよい。なお、右肺野部の第一領域および左肺野部の第一領域の内側方向におけるエッジや、後述する輪郭の候補の検出は、例えば、右肺野部の第一領域と、左肺野部の第一領域との間で行われることが好ましい。
【0052】
エッジを検出する、ということは、エッジに接する画素のうちの第一領域側の画素を検出することであってもよく、エッジに接する画素のうちの第一領域側でない画素を検出することであってもよく、エッジを挟んで両側に位置する画素を検出することであってもよい。ここでは、エッジの検出が、エッジに接する画素のうちの第一領域側でない画素の検出である場合を例に挙げて説明する。
【0053】
エッジ検出部103は、例えば、右肺野部の候補となる第一領域と、左肺野部の候補となる第一領域との上下左右のそれぞれの方向において、隣り合う2つの画素であって、第一領域から遠いほうの画素の画素値が、第一領域側の画素の画素値よりも大きい2つの画素がなす境界を、エッジとして検出する。例えば、エッジ検出部103は、第一検出部102が検出した第一領域である左右の肺野部の候補を構成する画素から、上下左右方向、好ましくは上下方向および外側方向に向かってそれぞれ画素値を調査し、各方向において、第一領域側に隣り合う画素に対して増加している画素値を有する画素を検出し、検出した画素のうちの、第一領域側に隣り合う画素に対する画素値の増加量が、上位n位(nは1以上の整数)以内となる画素を、エッジの画素の候補として検出する。nの値は、1より大きい値であることが好ましい。例えば、エッジ検出部103は、各方向において、第一領域側に隣り合う画素に対する画素値の増加量が、上位2位以内となる画素を、エッジの画素の候補として検出する。エッジの候補の画素は、例えば、左右の肺野部の候補となる第一領域のそれぞれに対して検出される。
【0054】
なお、ここで説明した第一領域の外側において、エッジの候補を検出する処理は一例であり、第一領域の上下左右の方向において、エッジの候補を検出する処理は、上記の処理に限定されるものではない。また、エッジを検出する方向も、上記のような方向に限定されるものではない。例えば、例えばエッジの検出を、外側方向にのみ行うようにしてもよい。
【0055】
第二検出部104は、エッジ検出部103が検出したエッジの画素を始点とし、始点となる画素近傍の予め決められた領域において取得した最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する。
【0056】
また、第二検出部104は、第二検出部104が検出した輪郭の候補となる画素を、新たな始点として用いて、上記と同様に、始点となる画素近傍の予め決められた領域において取得した最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出してもよい。
【0057】
始点となる画素近傍の予め決められた領域とは、始点となる画素の近傍の、始点となる画素に対して予め決められた位置関係となる位置に設定される領域である。この領域は、例えば、始点となる画素に対して、動的に設定される領域である。この領域は、例えば、始点となる画素を含む領域、または始点となる画素に接する領域である。この領域は、例えば、2以上の画素、好ましくは3以上の画素、より好ましくは4以上の画素を有する領域である。この領域は、例えば、始点となる画素を中心に含む領域であって、始点となる画素の周囲の画素を有する領域であってもよく、始点となる画素に対して、輪郭の候補となる画素を検出する方向において接する領域であって、輪郭の候補となる画素を検出する方向に対して垂直方向に直線状に連続する複数の画素を有する領域であってもよい。
【0058】
最適境界値とは、始点となる画素近傍の予め決められた領域を2値化するための境界値である。最適境界値とは、例えば、領域内の画像を最適に2値化するための境界値である。境界値は、例えば、画像内の明暗部の境界となる画素値である。境界値はしきい値と考えてもよい最適境界値は、始点となる画素近傍の予め決められた領域内の複数の画素の画素値を用いて決定される境界値である。最適境界値は、例えば、始点となる画素近傍の予め決められた領域内の複数の画素の画素値を用いて動的に決定される境界値であり、例えば、領域内の複数の画素の画素値について統計処理を用いて取得される境界値である。統計処理は、例えば、平均や、分散等である。なお、ここでの領域を2値化するための境界値とは、例えば、2値化することが可能な境界値を意味するものであり、領域を、境界値を用いて2値化する必要はない。例えば、最適境界値を用いて、肺野部の輪郭の候補の画素を検出することから、最適境界値は、輪郭境界値等と考えてもよい。
【0059】
ここでは、説明の便宜上、エッジの画素を、エッジの外側に隣接する画素と考えた場合について説明するが、エッジの内側(第一領域側)の画素と考えてもよい。
【0060】
なお、第二検出部102は、例えば、エッジ検出部103が第一領域に対して一の方向において検出したエッジの候補が一つである場合、このエッジの候補を、一の方向において検出されたエッジとして決定し、後述する処理等に利用する。また、第二検出部102は、エッジ検出部103が第一領域に対して一の方向において検出したエッジの候補が複数である場合、この複数のエッジの候補が検出された行(または列)に隣接する行(または列)において既に決定したエッジに対する距離が最も近いエッジの候補を、一の方向において検出されたエッジとして決定し、これを後述する処理等に利用する。既に決定したエッジとは、例えば、隣接する行(または列)において検出されたエッジの候補が一つのみである場合には、このエッジの候補であってもよく、隣接する行(または列)において検出された複数のエッジの候補の中から、同様の処理により決定されたエッジの候補であってもよい。
【0061】
以下、具体的に説明すると、例えば、第二検出部102は、エッジ検出部103が右肺野部の第一領域の左方向において検出したエッジの候補の中から、エッジの候補が一つだけ検出された行(x軸方向に延びる画素群)のエッジの候補を一つ選択して、このエッジの候補をこの行の第一領域の左方向のエッジとして決定するとともに、この行の一つ上の行において右肺野部の第一領域の左方向において複数のエッジの候補が検出されている場合、この複数のエッジの候補のうちの、一つ下の行で既に確定したエッジからの距離が最も短いエッジの候補を、この行の右肺野部の第一領域の左方向のエッジとして決定する。なお、この行の一つ上の行において右肺野部の第一領域の左方向において一つのエッジの候補のみ検出されている場合、このエッジの候補を、この行の右肺野部の第一領域の左方向のエッジとして決定する。同様にして、新たに決定されたエッジを用いて、これよりも上方向の行において検出された第一領域の左方向のエッジの候補の中から、順次、エッジを決定していく。
【0062】
また、同様に、上記の最初に決定されたエッジから、このエッジを含む行の一つ下の行において右肺野部の第一領域の左方向において複数のエッジの候補が検出されている場合、この複数のエッジの候補のうちの、一つ下の行で既に確定したエッジからの距離が最も短いエッジの候補を、この行の右肺野部の第一領域の左方向のエッジとして決定する。なお、この行の一つ下の行において右肺野部の第一領域の左方向において一つのエッジの候補のみ検出されている場合、このエッジの候補を、この行の右肺野部の第一領域の左方向のエッジとして決定する。同様にして、新たに決定されたエッジを用いて、これよりも下方向の行において検出された第一領域の左方向のエッジの候補の中から、順次、エッジを決定していく。
【0063】
このようにして、エッジ検出部103が右肺野部の第一領域の左方向においてエッジの候補から、第二検出部102は、エッジを決定する。
【0064】
なお、ここでは、右肺野部の第一領域の左方向において検出されたエッジの候補の中から、エッジを決定する処理の具体例について説明したが、かかる処理は、他の方向において、エッジの候補の中から、エッジを決定する処理についても同様に利用可能である。なお、上下方向において、検出されたエッジの候補の中から、エッジを決定する場合においては、上記の処理の行は、列と読み替え、一つ上や下の行は、一つ左や右の行と適宜読み替えるようにすればよい。
【0065】
なお、エッジ検出部103が第一領域の一の方向において検出したエッジの候補から、第二検出部102がエッジを決定する処理は上記の処理に限定されるものではなく、例えば、第二検出部102は、一の方向において複数のエッジの候補が検出された場合に、第一領域に最も近いエッジの候補を、その後の処理等に利用するエッジとして決定するようにしてもよい。
【0066】
第二検出部104は、例えば、始点となる画素近傍の予め決められた領域において判別分析法を用いて最適境界値を取得し、取得した最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出する。例えば、第二検出部104は、始点となる画素に対して、予め決められた方向において肺野部の輪郭の候補となる画素を検出する。予め決められた方向は、例えば、始点となる画素の位置に応じて決定される。第二検出部104は、例えば、始点となる画素に対して接する探索範囲であって、輪郭の候補となる画素を検出する方向に対して垂直な行または列に設定される探索範囲において、最適境界値を用いて肺野部の輪郭の候補となる画素を検出する。判別分析法を用いた最適境界値の取得や、探索範囲の設定、輪郭候補の検出については後述する。例えば、第二検出部104が検出する輪郭の候補の画素の中から、最終的に、左右の肺野部の輪郭の画素が決定される。
【0067】
第二検出部104は、例えば、エッジ検出部103が検出したエッジを利用して、エッジから判別分析法を用いて肺野部の輪郭の候補となる画素を延伸することにより、肺野部の輪郭を検出する。第二検出部104は、例えば、エッジ検出部103が検出したエッジの画素のうちの、肺野部の輪郭の候補となる画素の端に位置する画素を始点として、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出する。そして、検出した輪郭の候補となる画素と、エッジの画素のうちの、肺野部の輪郭の候補となる画素とを有する肺野部の輪郭を検出する。
【0068】
第二検出部104は、エッジ検出部103が検出したエッジの1以上の部分も、肺野部の輪郭の候補の一部として採用してもよい。第二検出部104は、例えば、右肺野部の第一領域と左肺野部の第一領域とのそれぞれの外側においてエッジ検出部103が検出したエッジの画素のうちの、上下方向に直線状につながった部分を、それぞれ肺野部の輪郭の候補の画素として用いてもよい。ここでの、エッジ検出部103が検出したエッジの画素は、エッジ検出部103が検出したエッジの候補の中から、第二検出部104が上述したような処理により決定したエッジの画素であってもよい。
【0069】
第二検出部104が、上下方向に直線状につながった部分をどのように検出するかは問わない。例えば、第二検出部104は、エッジ検出部103が検出した各エッジの画素を起点として、y座標が起点側となるエッジの画素から1ピクセルだけ離れたエッジの画素であって、起点側となるエッジの画素に対するx座標の値が、所定の値の範囲内(例えば、±2ピクセルの範囲内)に収まるようなエッジの画素を、直線状に連続した画素として、上下方向において順次検出し、順次検出した直線状に連続したエッジの画素から、その上下方向の長さが最も長い連続したエッジの画素を、直線状につながった部分として検出するようにしてもよい。
【0070】
また、第二検出部104は、エッジ検出部103が一の方向において、検出したエッジの候補の画素のうちの、第二検出部104が上述したような処理により決定したエッジの画素のすべてのうちの、上下端近傍を除いた部分を、直線状につながった部分の画素に決定してもよい。例えば、肺野部の外側の輪郭は、上端側は、内側に向かって曲がっており、エッジ検出が難しく、また、下端側は、乳房や、腸の中の空気等の変動要因が多く存在しており、エッジが誤検出される可能性が高いことから、上下端近傍を除外することで、エッジ検出した部分から、このような曲がっている部分を除外することができる。
【0071】
ここでの上下端近傍を除いた部分とは、例えば、一の方向において検出されたすべてのエッジの画素のうちの、予め決められた比率の上端側の画素および予め決められた比率の下端側の画素を除いた部分である。それぞれの予め決められた比率は、例えば、15%から35%までの範囲の値であり、好ましくは20%から30%までの範囲の値であり、より好ましくは25%である。ここでの比率は、例えば、エッジが検出された部分の長さの比率であってもよく、エッジの画素数の比率であってもよい。なお、予め決められた比率の画素を除く代わりに、予め決められた画素数の画素を上下端から除くようにしてもよい。なお、上記の比率や、除去する画素数は、右肺野部の第一領域と、左肺野部の第一領域とで異なっていてもよく、同じであってもよい。
【0072】
また、例えば、以下の具体例のような処理により、直線状に連続したエッジの画素を検出してもよい。まず、第二検出部104は、エッジ検出部103が一の方向において、検出したエッジの候補の画素のうちの、第二検出部104が上述したような処理により決定したエッジの画素のすべてのうちの、上下端近傍を除いた部分の新たな上下端の画素を検出する。ここでの上下端近傍を除いた部分は、例えば、上記の上下端近傍を除いた部分と同様の部分である。そして、これらを、直線状につながった部分の候補の画素に決定する。
【0073】
次に、新たな上端のエッジの画素に対して、判断の対象となる一つ下の行のエッジの画素(例えば、y座標が1ピクセル大きい画素)の一の方向の距離(例えば、x座標の値)が、予め決められた範囲内(例えば、x座標が±2ピクセルの範囲内)に収まるか判断する。予め決められた範囲内に収まる場合、判断の対象となるエッジの画素を直線状につながった部分の候補の画素に決定し、収まらない場合、候補の画素に決定しない。次に、この判断結果に関係なく、新たな上端のエッジの画素の一つ下の行のエッジの画素に対して、上記と同様に、判断の対象となる一つ下の行のエッジの画素(例えば、y座標が1ピクセル大きい画素)の一の方向の距離(例えば、x座標の値)が、予め決められた範囲内(例えば、±2ピクセルの範囲内)に収まるか判断し、収まる場合は、この一つ下の行のエッジの画素を、直線状につながった部分の候補の画素に決定し、収まらない場合、候補の画素に決定しない。同様の処理を、直前の判断結果に関係なく、直前の判断の対象となったエッジの画素の一つ下の行の画素について順次行う。ここでの処理は、上記の新たな下端のエッジの画素が上記のような判断の対象となるまで行われる。
【0074】
また、第二検出部104は、新たな下端のエッジの画素に対して、判断の対象となる一つ上の行のエッジの画素(例えば、y座標が1ピクセル小さい画素)の一の方向の距離(例えば、x座標の値)が、予め決められた範囲内(例えば、x座標が±2ピクセルの範囲内)に収まるか判断する。予め決められた範囲内に収まる場合、判断の対象となるエッジの画素を直線状につながった部分の候補の画素に決定し、収まらない場合、候補の画素に決定しない。次に、この判断結果に関係なく、新たな下端のエッジの画素の一つ上の行のエッジの画素に対して、上記と同様に、判断の対象となる一つ上の行のエッジの画素(例えば、y座標が1ピクセル小さい画素)の一の方向の距離(例えば、x座標の値)が、予め決められた範囲内(例えば、±2ピクセルの範囲内)に収まるか判断し、収まる場合は、この一つ上の行のエッジの画素を、直線状につながった部分の候補の画素に決定し、収まらない場合、候補の画素に決定しない。同様の処理を、直前の判断結果に関係なく、直前の判断の対象となったエッジの画素の一つ上の行の画素について順次行う。ここでの処理は、上記の新たな上端のエッジの画素が上記のような判断の対象となるまで行われる。
【0075】
そして、上記で下方向に向かって順次行われた処理において、候補の画素として検出された画素と、上方向に向かって順次行われた処理において、候補の画素として検出された画素とのうちの、重複する画素を、エッジ検出部103が検出したエッジの画素のうちの、上下方向に直線状につながった部分として検出する。なお、上記で説明した、一の方向の距離についての予め決められた値の範囲は、上記で示した2ピクセル等の値の範囲に限定されるものではない。また、検出した重複する複数の画素が連続していない場合、線形補間等を行って接続したものを、直線状につながった画素として利用するようにしてもよい。
【0076】
なお、以下、本実施の形態においては、第二検出部104は、エッジ検出部103が左右の肺野部の外側において検出したエッジの画素のすべてのうちの、上下端近傍を除いた部分を、直線状につながった部分の画素として利用する場合を主として例に挙げて説明する。
【0077】
第二検出部104は、例えば、右肺野部の第一領域と、左肺野部の第一領域とのそれぞれの上側および下側においてエッジ検出部103が検出したエッジの画素のうちの、左右方向につながった部分を、それぞれ肺野部の輪郭の候補の一部として用いてもよく、用いなくてもよい。ここでの左右方向につながった部分を検出する処理は、例えば、上記の上下方向に直線状につながった部分を検出する処理と同様の処理であって、上記の処理の説明において、上および下を、左および右、x座標をy座標、y座標をx座標等と読み替えた処理により実現可能である。なお、上記の処理で説明した、一の方向の距離についての予め決められた値の範囲は、この場合においては、上記の値の一例である2ピクセルよりも大きい値であることが好ましく、例えば、3ピクセルであることが好ましいが、この値の範囲に限定されるものではない。
【0078】
また、この場合、左右の肺野部の第一領域のそれぞれの上側および下側においてエッジ検出部103が検出したエッジの画素のうちの、左右端近傍を除いた部分は、例えば、上側および下側において検出されたエッジの画素のうちの、予め決められた比率の右端側の画素および予め決められた比率の左端側の画素を除いた部分である。それぞれの予め決められた比率は、例えば、15%から35%までの範囲の値であり、好ましくは20%から30%までの範囲の値であり、より好ましくは25%である。ここでの比率は、例えば、左右につながったエッジが検出された部分の長さの比率であってもよく、エッジの画素数の比率であってもよい。なお、予め決められた比率の画素を除く代わりに、予め決められた画素数の画素を左右端から除くようにしてもよい。なお、上記の比率や、除去する画素数は、右肺野部の第一領域と、左肺野部の第一領域とで異なっていてもよく、同じであってもよい。
【0079】
なお、以下、本実施の形態においては、第二検出部104は、エッジ検出部103が左右の肺野部の上側において検出したエッジの画素のすべてのうちの、左右端近傍を除いた部分を、つながった部分の画素として利用する場合を例に挙げて説明する。
【0080】
第二検出部104は、例えば、右肺野部の第一領域と、左肺野部の第一領域とのそれぞれの上側および下側においてエッジ検出部103が検出したエッジの画素のうちの、左右方向につながった部分を、それぞれ肺野部の輪郭の候補の一部として用いてもよい。
【0081】
以下、第二検出部104が、肺野部の輪郭の候補となる画素を検出する処理の例について、肺野部の輪郭の候補となる画素を検出する場所ごとに説明する。
【0082】
(1)右肺野部の外側の上方向への輪郭の候補検出
第二検出部104は、右肺野部の第一領域の外側においてエッジ検出部103が検出したエッジの画素のうちの、直線状につながった部分を、左右の肺野部の外側の輪郭の候補の画素とするとともに、直線状につながった部分の上端の画素と、直線状につながった部分の下端の画素とを、それぞれ始点として用いて、右肺野部の外側の輪郭の候補となる画素を検出する。第二検出部104は、例えば、右肺野部の第一領域の外側においてエッジ検出部103が検出した上下方向の伸びるエッジの画素のうちの上下方向に直線状につながったエッジの画素の、上下端近傍を除いた部分の上下の端に位置する画素をそれぞれ始点として、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出する。例えば、第二検出部104は、上端近傍を除いて残った画素のうちの上端となる画素から上方向に向かって判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出する。また、例えば、第二検出部104は、下端近傍を除いて残った画素のうちの下端となる画素から下方向に向かって判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出する。なお、上下方向に直線状につながったエッジの画素のうちの、上下端近傍を除いた部分は、右肺野部の輪郭の候補の一部として用いられる。例えば、通常、肺野部の外側の輪郭は、エッジ検出では精度良く検出できないことから、検出されたエッジの上下方向につながった部分の上下の端は、輪郭の候補から除外し、この除外して残った部分の上下の端から、輪郭の候補の画素を検出する。
【0083】
(1-2)右肺野部の外側の上方向への輪郭の候補検出
以下、判別分析法を用いて、始点となる画素から、近接して位置する肺野部の輪郭の候補となる画素を順次検出する処理について、右肺野部の第一領域の外側のエッジの画素(すなわち、正面から撮影された胸部透過画像の右肺野部の第一領域の左側に検出された縦方向に伸びるエッジの画素)の上端近傍を除いた部分の上端となる画素を始点として、上方向に輪郭の候補となる画素を検出する処理を例に挙げて説明する。
【0084】
図2(a)および
図2(b)は、判別分析法を用いて、右肺野部の第一領域の外側において、始点となる画素から上方向に輪郭となる画素を順次検出して、輪郭を上方向に延伸する処理を説明するための、生体透過画像の、始点となる画素21の周辺の画素の配列を示す模式図であり、各画素内には、それぞれの画素値を示している。ここでは、説明の便宜上、画素を長方形で表している。
【0085】
まず、第二検出部104は、
図2(a)に示すように、始点となる画素21を中心とした矩形領域22内の複数の画素について、それぞれの画素値を取得する。この矩形領域22が、上述した始点となる画素近傍の予め決められた領域に相当する。ここでは一例として、始点となる画素21を中心とした7×7画素について、それぞれの画素値を取得する。7×7画素は、
図2(a)の領域22内の画素である。なお、ここでは、矩形領域22が正方形である場合について説明するが、矩形形状は正方形でなくてもよい。また、矩形領域22の画素数は問わない。例えば、矩形領域は、5×5画素の領域であってもよい。また、この領域は、矩形形状でなくてもよく、例えば、楕円形状やひし形形状等であってもよい。なお、かかることは、上方向以外の方向において、輪郭となる画素を検出する場合においても同様である。
【0086】
次に、第二検出部104は、取得した矩形領域22の画素値(ここでは、7×7画素の画素値)を用いて、最適境界値を取得する。例えば、第二検出部104は、取得した矩形領域22の画素値を用いて、判別分析法を行って、最適境界値を取得する。判別分析法とは、グレースケール画像において、分離度が最大となる画素値のしきい値を求め、自動的に二値化を行う手法である。判別分析法は、大津の二値化とも呼ばれる。第二検出部104は、例えば、7×7画素の画素値を用いて、判別分析法を行うことにより、分離度が最大となるしきい値を最適境界値として取得する。
図2(a)のような画素の配列において取得した最適境界値は、「186」であったとする。判別分析法については、以下の非特許文献を参照されたい。非特許文献4「"判別分析法(大津の二値化)画像処理ソリューション"、[online]、[令和2年6月9日検索]、インターネット<URL:https://imagingsolution.blog.fc2.com/blog-entry-113.html>」。
【0087】
そして、輪郭の候補となる画素を検出する方向に対して垂直方向に直線状に連続する複数の画素を有する探索範囲23において、最適境界値を用いて肺野部の輪郭の候補となる画素を検出する。の例えば、第二検出部104は、始点となる画素21に対して接する探索範囲であって、輪郭の候補となる画素を検出する方向に対して垂直な行又は列に設定される探索範囲23において、最適境界値を用いて肺野部の輪郭の候補となる画素を検出する。
【0088】
ここでは、始点となる画素の上方向において、右肺野部の第一領域の外側の輪郭の画素を検出するため、始点となる画素の上方向に
図2(b)に示すように、始点となる画素21の1ピクセル上の画素の行、すなわち上方向に隣接する行に設定される予め決められた広さの探索範囲23内において、左のピクセルの画素値が最適境界値以上であって、右のピクセルの画素値が最適境界値より小さくなる隣り合う画素の境界を探索する。探索範囲23は、
図2(b)の背景を斜線で示した領域である。境界の探索を行う探索範囲の広さは、一定の値であってもよく、一定でなくてもよい。例えば、この広さは、探索範囲を設定する行の位置、具体的にはy座標ごとに予め決められた広さであってもよい。また、探索範囲を設定する行のy座標の値を引数として予め決められた関数等により決定される広さであってもよい。
【0089】
なお、探索範囲の、始点となる画素を基準とした両端方向の広さ(言い換えれば、始点となる画素を基準とした探索を行う方向に対して垂直な方向の長さ)は、探索範囲が設定される位置に応じて異なるようにすることが好ましい。探索範囲が設定される位置とは、輪郭の候補となる画素を検出する方向における位置であり、例えば、上方向に検索を行う場合、探索方向が設定される高さ方向の位置、ここではy座標である。ただし、始点となる画素を基準とした両端方向の広さ(言い換えれば、始点となる画素を基準とした探索を行う方向に対して垂直な方向の長さ)は、同じであってもよい。例えば、上方向に利確の候補となる画素を検出する場合、始点となる画素のx座標が、横方向に伸びる探索範囲の中心のx座標と一致してもよく、一致しなくてもよい。
【0090】
例えば、通常、胸部透過画像において右肺野部の外側部分の上方は、ゆるやかに内側方向、すなわち右方向にカーブしており、右肺野部の輪郭は、1ピクセル下の位置よりも右側に存在する可能性が高いため、この境界を探索する探索範囲23は、始点となる画素21よりも右方向の範囲が、始点となる画素21よりも左方向の範囲が広くなるような範囲とすることが好ましい。すなわち、始点となる画素21の横方向の位置が、中心よりも左側に位置するような範囲であることが好ましい。例えば、ここでは、x座標の範囲が、始点となる画素21のx座標を左方向に1ピクセル移動させたx座標から、始点となる画素21のx座標を右方向に5ピクセル移動させたx座標までの範囲となる探索範囲23内の画素において境界を探索する。
【0091】
ここでは、画素値が「209」である画素24と、画素値が「179」である画素25の境界が、左のピクセルの画素値が最適境界値以上であって、右のピクセルの画素値が最適境界値より小さくなる隣り合う画素の境界として検出されたとする。このため、この境界の外側の画素24を、輪郭の画素の候補として採用する。
【0092】
輪郭の画素の候補が新たに採用された場合、新たに採用された画素を、上記の始点の画素21の代わりの始点の画素として用いて、同様に、上方向に向かって、輪郭の候補の画素の検出を行う。これを繰り返すことにより、右肺野部の輪郭の候補となる画素が延伸される。上方向への輪郭の候補の画素の検出は、例えば、胸部透過画像の上端に達するまで行われる。ただし、終了条件はこれに限定されるものではない。なお、始点となる画素21が、胸部透過画像の上端から、3ピクセル以内となった場合のように、画素21に対して、7×7の矩形領域22が設定できない場合、画素21を中心とした7×7の矩形領域内に収まるすべての画素で構成される矩形領域22を7×7の矩形領域22の代わりに設定すればよい。例えば、第二検出部104は、画素21が、胸部透過画像の上端の画素である場合、この画素21を上辺の左右の中心とした横7ピクセル、高さ4ピクセルの矩形領域22を、7×7の矩形領域の代わりに設定する。また、例えば、第二検出部104は、画素21が、胸部透過画像の上左隅の画素である場合、この画素21を上辺の左端の画素とした横4ピクセル、高さ4ピクセルの矩形領域22を、7×7の矩形領域の代わりに設定する。なお、かかることは、画素21が、胸部透過画像の上端の画素となる場合や、画素21が、胸部透過画像の上左隅以外の4隅の画素となる場合においても同様である。
【0093】
なお、始点の1ピクセル上の行の、境界を探索する探索範囲内に候補が見つからない場合には、この境界を探索する探索範囲内の画素において、判別分析法を行い、最適境界値を更新し、この最適境界値を用いて、上記と同様に、境界を探索する範囲内において境界を探索して輪郭の候補の画素を検出する。つまり、この場合、輪郭の候補となる画素を検出する方向に対して垂直方向に直線状に連続する複数の画素を有する探索範囲が、最適境界値を取得するための、上述したような始点となる画素近傍の予め決められた領域として用いられる。これでも候補の画素が検出されない場合には、候補なしとして、さらに1ピクセル上の行において(すなわち、探索するy座標を更に1ピクセル小さくして)、輪郭の画素の候補を検出する。このとき、最適境界値を取得するための7×7画素の範囲等を設定するための始点の画素としては、直前の輪郭の候補の画素の検出に用いた始点の画素の1ピクセル上の画素を用いる。
【0094】
なお、上記のように、境界の探索を行う範囲は、始点となる画素に隣接する位置であって、始点となる画素の位置に対して、境界が存在する可能性が高い部分の探索範囲が広くなるような位置に、設定されることが好ましい。ここでの境界が存在する可能性が高い部分は、例えば、境界を探索する範囲を設定する位置における一般的な(言い換えれば典型的な)肺野部の形状に応じて決定され、始点となる画素に対する探索する範囲の始点となる画素に対する配置も、この一般的な肺野部の形状に応じて決定されることが好ましい。かかることは、始点となる画素の位置に対して、上方向に境界の探索を行う範囲を設定する場合に限定されるものではなく、始点となる画素の位置に対して、下方向や、左右方向(例えば、外側方向や内側方向)に境界の探索を行う範囲を設定する場合においても適用可能である。例えば、左右方向の境界の探索を行う場合、後述するように、始点となる画素に左右方向に隣接する画素の列に対して境界を探索する範囲を設定するが、この場合も、上下方向に連続する画素を有する探索範囲を、始点となる画素に隣接する位置であって、始点となる画素の位置に対して、境界が存在する可能性が高い部分の探索範囲が広くなるような位置に、設定されることが好ましい。例えば、境界が始点となる画素の上方向に境界が存在する可能性が高い場合、始点となる画素に対して上方向の範囲を、下方向の範囲よりも広く設定し、例えば、境界が始点となる画素の下方向に境界が存在する可能性が高い場合、始点となる画素に対して下方向の範囲を、上方向の範囲よりも広く設定することが好ましい。
【0095】
なお、どのようにして、始点となる画素の位置に対して、境界が存在する可能性が高い部分の探索範囲が広くなるように、境界の探索を行う範囲を設定するかは問わない。例えば、始点となる画素に隣接する行において境界の探索範囲を設定する場合において、境界を探索する際の始点となる画素を基準とした左右(例えば、外側方向および内側方向)の広さ(例えば、左右の画素数や、始点となる画素と、左右の端の画素とのx座標の差の絶対値)は、境界を探索する行のy座標の値や値の範囲により予め指定されているようにしてもよく、y座標の値を引数とした関数等で定義されていてもよい。例えば、始点となる画素のx座標をXとした場合、始点について決定される画素を探索する範囲のx座標の範囲を(X-α)から(X+β)までの範囲に指定する情報を、境界を探索する行のy座標の値毎に予め用意しておくように、一のy座標の行において境界を検出する場合に、この一のy座標に対応する探索する範囲のx座標の範囲を(X-α)から(X+β)の範囲に指定する情報を取得し、取得した情報のXに、始点となる画素のx座標を代入することで、境界を探索する範囲を決定するようにしてもよい。なお、αおよびβは、対応するy座標毎に決められている定数であり、0以上の整数である。αおよびβは、y座標が異なる場合において、異なる値であってもよく、同じ値であってもよい。かかることは、例えば、始点となる画素に隣接する列において境界の探索範囲を設定する場合においても同様である。この場合、上記の左右方向を適宜、上下方向に読み替え、x座標をy座標に、また、y座標をx座標に読み替えるようにすればよい。
【0096】
また、上記の境界の探索範囲の広さを、左右または上下で異なる広さとすることは、エッジの始点となる画素について、探索範囲を設定する場合に限定されるものではなく、第二検出部104が判別分析法を用いて検出した肺野部の輪郭の候補の画素を、新たな始点の画素として新たな輪郭を探索する場合においても同様である。
【0097】
(1-2)右肺野部の外側の下方向への輪郭の候補検出
なお、右の肺野部の第一領域のそれぞれの外側においてエッジ検出部103が検出した上下方向の伸びるエッジの画素のうちの、下端近傍を除いた肺野部の輪郭の候補となる部分の端に位置する画素を始点として、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を下方向に向かって検出する場合も、上記と同様の処理により行われる。ただし、この場合、例えば、始点の画素は、下端の画素とし、輪郭の候補となる画素を探索する範囲は、始点となる画素の1ピクセル下の画素の行に設定し、輪郭の候補が見つからない場合は、さらに一つ下の行において輪郭の候補の画素を検出するようにし、この時、最適境界値を取得するための7×7の範囲等を設定するための始点の画素としては、直前の輪郭の候補の画素の検出に用いた始点の画素の1ピクセル下の画素を用いるようにする。下方向への輪郭の候補の画素の検出は、例えば、上述した上方向への輪郭の候補となる画素を検出する処理と同様の処理を、上下を反転して行うことで実現可能である。なお、下方向への輪郭の候補の画素の検出は、例えば、胸部透過画像の下端に達するまで行われる。ただし、終了条件はこれに限定されるものではない。
【0098】
(2)左肺野部の外側の輪郭の候補検出
また、第二検出部104は、例えば、左の肺野部の第一領域の外側においてエッジ検出部103が検出した上下方向の伸びるエッジの画素についても、上記と同様に、上下端近傍を除いた部分の上の端に位置する画素を始点として上方向に、また下の端に位置する画素を始点として下方向に、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出して、左肺野部の輪郭の候補となる画素を上下に延伸する。例えば、上記で説明した処理と同様の処理を、左右を反転して行うことで、左肺野部の外側の輪郭の候補を検出することができる。
【0099】
(3)左右の肺野部の下側の輪郭の候補検出
【0100】
第二検出部104は、例えば、左右の肺野部の第一領域のそれぞれの下側においてエッジ検出部103が検出したエッジの画素のうちの、左右方向につながった部分の左右の端に位置する画素をそれぞれ始点として、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出する。例えば、通常、肺野部の下側の輪郭は、左右の端の近傍も含めてエッジ検出により精度よく検出できる場合が多いことから、ここでは、検出されたエッジの左右方向につながった部分の左右の端から、輪郭の候補の画素を検出するとともに、この部分を、そのまま輪郭の候補としても採用する。
【0101】
例えば、第二検出部104は、左右の肺野部の第一領域のそれぞれの下側に検出されたエッジの画素の左右方向につながった部分の外側(すなわち、右肺野部の第一領域の下側に検出されたエッジの左側、および左肺野部の第一領域の下側に検出されたエッジの右側)となる画素を始点とし、この始点となる画素から、左右の肺野部の第一領域の外側方向に向かって、上記と同様に判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出する。例えば、外側の端の始点となる画素を中心とした7×7画素等の矩形領域内の複数の画素について、それぞれの画素値を取得し、取得した矩形領域の画素値(ここでは、7×7画素の画素値)を用いて、判別分析法を行って、最適境界値を取得する。
【0102】
そして、始点となる画素に対して、輪郭の候補となる画素を検出する方向(ここでは外側方向)に対して垂直方向に直線状に連続する複数の画素を有する探索領域において、輪郭の候補となる画素を探索する。具体的には、始点となる画素の外側方向において、始点となる画素の1ピクセル外側の画素の列、すなわち外側方向に隣接する画素の列において、下側のピクセルの画素値が最適境界値以上であって、上側のピクセルの画素値が最適境界値より小さくなる隣り合う画素の境界を探索し、探索した境界に隣接する画素のうちの、肺野部の第一領域から離れた画素を、輪郭の候補の画素として採用する。
【0103】
輪郭の候補となる画素の探索は、例えば、外側方向に隣接する画素の列のうちの、始点となる画素に隣接する予め決められた広さの範囲内の画素について行われる。境界の探索を行う範囲の広さは、一定の値であってもよく、一定でなくてもよい。例えば、この広さは、探索を行う列のx座標ごとに予め決められた広さであってもよい。また、探索を行う列のx座標の値を引数として予め決められた関数等により決定される広さであってもよい。この探索範囲は、上記と同様に、始点となる画素を基準とした両端方向の広さが、この探索範囲が設定され位置に応じて異なる範囲であることが好ましい。例えば、この探索範囲は、始点となる画素に隣接する位置であって、始点となる画素の位置に対して、境界が存在する可能性が高い部分の探索範囲が広くなるような位置に、設定されることが好ましい。例えば、境界の探索を行う範囲は、縦方向(すなわち高さ方向)の中心となる位置が、始点となる画素の縦方向の位置と同じとなる範囲であってもよく、縦方向の中心となる位置が、始点となる画素の縦方向の位置と異なる範囲であってもよい。つまり、始点となる画素のy座標が、探索を行う縦方向に伸びる範囲の中心のy座標と一致してもよく、一致しなくてもよい。
【0104】
なお、左右の肺野部の下側の外側寄りの輪郭は、通常、下方向に曲がっているため、左右の肺野部の下側の外側方向において輪郭の候補を検出する場合に始点となる画素の外側の列に設定する境界を検出する範囲は、始点となる画素よりも下側の範囲の広さが、上側の範囲の広さよりも広くなるように設定することが好ましい。
【0105】
輪郭の画素の候補が新たに採用された場合、新たに採用された画素を、上記の始点の画素の代わりの新たな始点の画素として用いて、上記同様に、外側方向に向かって、輪郭の候補の画素の検出を行う。これを繰り返すことにより、肺野部の下側の輪郭の候補となる画素が延伸される。左右の肺野部の第一領域の下側における外側方向への輪郭の候補の画素の検出は、例えば、左右の肺野部の外側に上記で検出された輪郭の候補に達するまで行われる。ただし、終了条件は、上記に限定されるものではない。
【0106】
なお、始点の1ピクセル外側の列の、境界を探索する範囲内に候補が見つからない場合には、この境界を探索する範囲内の画素において、判別分析法を行い、最適境界値を更新し、この最適境界値を用いて、上記と同様に、境界を探索する範囲内において境界を探索して輪郭の候補の画素を検出する。これでも候補の画素が検出されない場合には、候補なしとして、さらに1ピクセル外側の列において(すなわち、探索するx座標を更に1ピクセル小さくして)、輪郭の画素の候補を検出する。このとき、最適境界値を取得するための7×7画素の範囲等を設定するための始点の画素としては、直前の輪郭の候補の画素の検出に用いた始点の画素の1ピクセル外側の画素を用いる。
【0107】
また、第二検出部104は、左右の肺野部の第一領域のそれぞれの下側に検出されたエッジの画素の左右につながっている部分の内側の端となる画素を始点とし、この始点となる画素から左右の肺野部の第一領域の内側方向に向かって、上記と同様に判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出して、左右の肺野部の下側の輪郭の候補となる画素を左右の肺野部の第一領域の内側方向に延伸する。この場合、例えば、上記で説明した処理において、外側を内側に反転した処理を行うことで、左右の肺野部の下側の内側の輪郭の候補を検出することができる。左右の肺野部の下側の内側方向への輪郭の候補の画素の検出は、例えば、x座標が反対側の肺野部の第一領域のx座標に達するまで行われる。
【0108】
なお、上記においては、左右の肺野部の下側に検出されたエッジの左右の両端をそれぞれ始点として、判別分析法を用いて左右に輪郭の候補の画素を順次検出していくようにしたが、左右の肺野部の下側に検出されたエッジの画素のうちの、左右の端近傍を除いた部分(例えば、左右の25%をそれぞれ除いた部分)の左右の端に位置する画素をそれぞれ始点として、判別分析法を用いて順次、近接して位置する肺野部の下側の輪郭の候補となる画素を検出するようにしてもよい。
【0109】
(4)左右の肺野部の上側の輪郭の候補検出
第二検出部104は、例えば、左右の肺野部の第一領域のそれぞれの上側においてエッジ検出部103が検出した、左右方向につながっている部分を検出し、この部分の外側の端に位置する画素を始点として、判別分析法を用いて順次、外側方向に向かって、近接して位置する肺野部の輪郭の候補となる画素を検出する。この輪郭の候補となる画素を順次検出する処理は、上記の左右の肺野部の下部において、始点となる画素から外側方向に輪郭の候補となる画素を順次検出して延伸する処理と同様であるため、ここでは詳細な説明は省略する。
【0110】
左右の肺野部の第一領域の上側の外側方向に輪郭の候補となる画素を検出する処理は、例えば、輪郭の画素を探索するため設定される上下方向に伸びる探索領域が、上記で検出された左右の肺野部の第一領域の外側に検出された輪郭の候補となる画素のうちの最も外側に位置する画素と、x座標が一致するまで行われる。ただし、これらの処理の終了条件は、上記に限定されるものではない。例えば、外側方向に輪郭の候補となる画素を検出する処理は、例えば、検出した輪郭となる画素が、左右の肺野部の輪郭の候補の画素と一致した場合に、終了するようにしてもよい。
【0111】
左右の肺野部の上側において、外側方向に輪郭の候補となる画素を検出する処理を行った場合において、左右の肺野部の上側において検出した輪郭の候補となる画素が、左右の肺野部の外側において検出した輪郭の候補となる画素と一致した場合、第二検出部104は、一致した画素のうちの一つを始点の画素として、左右の肺野部の内側方向に向かって、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出して、左右の肺野部の上側の輪郭の候補となる画素を、それぞれ内側方向に延伸する。一致した画素のうちの一つは、例えば、一致する画素のうちの、最も内側のx座標を持つ画素であるが、それ以外の画素でもよい。この場合、直前に検出した左右の肺野部の上側の輪郭の候補となる画素は、上記で一致すると判断された画素を除いて、輪郭の候補の画素としては利用しないようにする。
【0112】
なお、左右の肺野部の上側において検出した輪郭の候補となる画素の少なくとも一方が、左右の肺野部の外側において検出した輪郭の候補となる画素と一致しない場合、一致しない肺野部の第一領域の上方において上記で検出されたエッジの画素の左右方向につながっている部分の内側の端に位置する画素を始点として、判別分析法を用いて順次、内側方向に向かって、近接して位置する肺野部の輪郭の候補となる画素を検出する。そして、一致しない肺野部の第一領域の上側のエッジの画素の左右方向につながっている部分と、この部分の端から外側方向および内側方向に延伸した肺野部の上側の輪郭の候補となる画素とを、一致しない肺野部の上側の輪郭の候補の画素として採用する。
【0113】
肺野部の上側の輪郭は上に凸のカーブを描き、また、近くには鎖骨や肩甲骨、首の周囲の空気等があり、画像が複雑であるため、エッジ検出部103によるエッジの検出が正確に行えない場合があり、この結果、肺野部の上側の輪郭を、エッジの画素から、判別分析法を利用して延伸するだけでは、正確に検出できない場合がある。しかし、上記のように、肺野部の上側において外側方向に検出した輪郭の候補の画素と、同じ肺野部の外側でエッジの画素から判別分析法を利用してそれぞれ検出した輪郭の候補の画素が重なる位置を新たな始点として、判別分析法を利用して上側の輪郭の候補を検出することで、重なる画素は、正確に輪郭が検出できている場所である可能性が高く、この画素から、判別分析法を用いて上側の輪郭の候補を新たに検出することで、精度良く、上側の輪郭の候補を検出することが可能となる。
【0114】
なお、左右の肺野部の上側の、内側方向への輪郭の候補となる画素を検出する処理は、例えば、始点の画素のx座標が、反対側の肺野部の第一領域のx座標に達するまで行われる。ただし、これらの処理の終了条件は、上記に限定されるものではない。
【0115】
(5)左右の肺野部の内側の輪郭の候補検出
【0116】
左右の肺野部に挟まれた肺野部の内側の領域においては、気管や心臓等が存在するため、エッジ検出等で肺野部の輪郭の一部を検出することが困難であることが多い。このため、左右の肺野部の内側において、輪郭の候補を検出する場合、まず、左右の肺野部の上部を通る予め決められた高さの行を構成する複数の画素であって、左右の肺野部の外側において検出された輪郭の候補となる画素で挟まれた領域内の画素の画素値の分布を取得する。例えば、上記の処理により、第二検出部104が左右の肺野部の外側においてそれぞれ検出した輪郭の候補となる画素の上端に位置する画素のうちの高さの低い方の画素(すなわち、y座標の値が小さい画素)の高さの行や、その画素から予め決められた高さ(例えば、数ピクセル程度の高さ)だけ高さが低い行の、左右の肺野部の外側に検出された輪郭の候補の画素間における画素値の分布(すなわち横方向の画素値の分布)を、胸部透過画像から取得する。なお、ここでの外側の輪郭の候補の画素の上端は、例えば、第二検出部104が一の肺野部について検出した外側の輪郭の候補の画素のうちの、同じ肺野部の上側において検出した輪郭の候補の画素と重なる部分や、重なる画素よりも1画素分だけ高さが低い位置に検出された外部の輪郭の候補となる画素である。ただし、これに限定されるものではない。
【0117】
そして、取得した横方向の画素値の分布を用いて、画素値の平均値を取得し、横方向の画素の分布において、画素値が平均値以上である連続する画素の領域と、平均値未満である連続する画素の領域とを検出する。なお、ここでは、平均値を用いたが、平均値の代わりに、中央値や、中心値等の代表値を用いてもよい。通常このように領域に分けた場合、平均値未満の長さが長い2つの領域が両側に検出され、この2つの長い領域に挟まれた領域内に、画素値が平均値以上である画素の領域に挟まれた長さが短い画素値が平均値未満の画素の一つの領域が検出される。通常、両側の平均値未満の長さが長い2つの領域は、肺野部に相当する領域であり、これらに挟まれた領域内に位置する短い画素値が平均値未満の画素の一つの領域は、気管に相当する領域である。
【0118】
そして、第二検出部104が上記のように右肺野部の上側において検出した輪郭の候補の画素うちの、上記の横方向の画素値の分布において両側に検出された平均値未満の領域のうちの右肺野部に相当する領域(すなわち、左側の領域)に対し、中心側に隣接する平均値以上の画素値を有する連続した複数の画素で構成される領域内に位置する画素を始点とし、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を下方向に向かって検出する。これにより検出される輪郭の候補の画素は、右肺野部の内側の輪郭の候補の画素である。この処理は、肺野部の外側において、下方向の輪郭の候補の画素を順次検出する処理と同様である。この処理は、右肺野部の下側に検出された輪郭の候補となる画素のいずれかに達するまで行われる。
【0119】
同様に、第二検出部104が上記のように左肺野部の上側において検出した輪郭の候補の画素うちの、上記の横方向の画素値の分布において両側に検出された平均値未満の領域のうちの左肺野部に相当する領域(すなわち、左側の領域)に対し、中心側に隣接する平均値以上の画素値を有する連続した複数の画素で構成される領域内に位置する画素を始点とし、判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を下方向に向かって検出する。これにより検出される輪郭の候補の画素は、左肺野部の内側の輪郭の候補の画素である。この処理は、肺野部の外側において、下方向の輪郭の候補の画素を順次検出する処理と同様である。この処理は、例えば、左肺野部の下側に検出された輪郭の候補となる画素のいずれかに達するまで行われる。
【0120】
なお、上記の横方向の分布において、外側の2つの画素値が平均値未満の大きな領域の間に、複数の平均値未満の画素値が連続した領域が複数検出される場合があるが、この場合も、上記の横方向の画素値の分布において、両側に位置する画素値が平均値未満の画素の領域である肺野部に相当する領域に隣接する画素値が平均値以上の連続した画素で構成される領域内に位置する上側で検出された輪郭の候補となる画素を始点として、上記と同様の処理を行うようにすればよい。また、複数の平均値以下の領域が検出される場合、複数の平均値以下の画素値の連続が検出される場合があるが、その場合は、第一の閾値以上の長さの領域であって、肺野の画素を検出可能な閾値以下の画素値を有する画素を含む領域を、両側の肺と想定し、その間にある第二の閾値以下の長さの短い領域を気管と想定し、肺や領域の上側において検出された輪郭の候補となる画素のうちの、気管と両側の肺に挟まれた領域に位置する画素を始点の画素と考えて、下方向に向かって輪郭の候補の画素を順次検出するようにする。第一の閾値は、例えば、胸部透過画像の横幅の15-20%の長さであることが好ましく、18-19%であることが好ましく、ここでは、例えば、24ピクセルを用いている。第二の閾値は、第一の閾値よりも短い長さである。
【0121】
ここで、左肺野部の内側で輪郭の候補の画素を上記のように検出した場合において、内側の下端側に、心臓が白く写っていることにより、左肺野部の内側の下端部側の輪郭の候補や、左肺野部の下端の内側近傍の部分の輪郭の候補を検出する代わりに、心臓の輪郭を検出してしまうことがある。このため、上記で検出した左肺野部の内側の輪郭の候補の、y座標の小さい部分と、大きい部分とのx座標の差が予め決められたしきい値以上異なっている場合には、以下の、左肺野部の内側の下端側の輪郭の候補および下側の内側近傍の輪郭の候補を検出する処理を行う。このしきい値は、例えば、8から12ピクセルが好ましく、10ピクセルが最も好ましい。ただし、しきい値はこれらの値に限定されるものではない。なお、上記の判断の代わりに、単に、左肺野部の内側の輪郭の候補の、y座標が異なる2つの画素の、x座標の差の最大値が、予め決められたしきい値以上(例えば、10ピクセル以上)異なっているか判断し、しきい値以上異なる場合に、以下の処理を行うようにしてもよい。
【0122】
まず、上記で検出した左肺野部の内側の輪郭の候補の画素のうちの、下端から予め決められた高さだけ上方の高さの画素から、左肺野部の第一領域の内側の方向(例えば、左方向)に向かって画素値を評価し、左肺内側の肺輪郭を検出する。予め決められた高さは、例えば、2から10ピクセルの範囲の値であり、好ましくは、5ピクセルである。具体的には、予め決められた画素だけ上方の高さの画素から内側方向に向かって、画素値が上昇する境界を検出し、検出した境界の内側(すなわち右肺野部側)に接する画素を始点として、上下方向において、それぞれ、上記と同様に判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出して、左肺野部の内側の下端部側の輪郭の候補となる画素を検出する。上方向への検出は、例えば、上記で検出した左肺野部の内側の輪郭と重なった時点で終了する。
【0123】
また、上記で検出した左肺野部の内側の輪郭の候補の画素のうちの、予め決められた画素だけ上方の高さの画素から下方向に向かって、画素値が上昇する境界を検出し、検出した境界の下側に接する画素を始点として、左右方向(すなわち、内側方向および外側方向)において、それぞれ、上記と同様に判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出して、左肺野部の下側の内側近傍の輪郭の候補となる新たな画素をそれぞれ検出する。右方向への検出は、例えば、上記で検出した左肺野部の下側の輪郭と重なった時点で終了する。上記で左肺野部の内側において下方向に検出された輪郭の候補となる画素と、左肺野部の下側において左方向に検出された輪郭の候補となる画素とが交わる部分が、左肺野部の内側の輪郭の候補の下端、および左肺野部の下側の輪郭の候補の左端となる。
【0124】
なお、新たに検出された輪郭よりも左肺野部の第一領域側に検出されていた輪郭の候補の画素(例えば、上下または左右方向において、新たに検出された輪郭と、左肺野部の第一領域との間に位置していた輪郭の候補の画素)は、例えば、削除するか、輪郭の候補として使用しないようにする。
【0125】
なお、上記のように、左肺野部の下側の内側近傍の輪郭の候補を検出する処理を行う場合においては、状況によっては、胃の中の空気が誤検出の原因となる。このため、上記の処理において、下方向に向かって、画素値が上昇する境界を検出した場合に、その境界よりも情報において、上側に隣接する画素の画素値に対して、急激に減少している画素(例えば、予め決められたしきい値以上減少している画素)があるかどうか、または、検出した境界に対して、左肺野部の外側となる方向において、上記と同様に画素値が急激に減少している部分があるかどうか判断し、急激に減少している部分があれば、左肺野部の下側の輪郭ではなく、空気がある部分、すなわち胃の中の空気の部分の下側の輪郭を、画素値が上昇する境界として検出したと判断して、検出された境界に隣接する画素を輪郭の候補の画素を検出する始点に採用せず、検出された境界よりも下方において、画素値が上昇する境界を検出し、検出した境界と、上記で検出された境界との間に、画素値が急激に減少している部分がなければ、左肺野部の下側の内側近傍の輪郭の検出を行う。画素値が急激に減少している部分があれば、それよりも下方において、画素値が上昇する境界を検出する処理等を繰り返す。
【0126】
以上の操作を行うことで、左右の肺野部のそれぞれの上下左右の輪郭の候補となる複数の画素をおおよそ決定することができる。
【0127】
第二検出部104は、上記のように検出された輪郭の候補となる画素のうちの、極端に近傍のがと離れた場所にある画素(例えば、最も近い画素との距離がしきい値以上離れている画素等)を外れ値として除去することが好ましい。また、上記で検出した輪郭の候補となる画素に、画素が欠損していることにより、画素同士がつながっておらず不完全な部分がある場合には、最も近い輪郭の候補となる2つの画素から、欠損している画素の座標を算出するようにしてもよい。例えば、線形補間により2つの画素間において欠損している画素の座標を算出する。例えば、線形補間により算出された2つの画素間の座標に位置する画素を、輪郭の候補となる画素として、加えてもよい。輪郭を構成する画素の補間処理は、上記の処理に限定されるものではない。なお、通常、画素同士が辺で接している場合を、画素がつながっていると考えるが、輪郭を構成する画素については、画素同士の角が一致するよう配置されている場合も、画素がつながっていると考えてもよい。
【0128】
また、第二検出部104は、左右の肺野部についてそれぞれ検出した輪郭の候補となる画素のうちの、外側の輪郭の候補の上端の画素と、上側の輪郭の候補の外側の端となる画素と、上側の輪郭の候補の外側の端となる画素と、内側の輪郭の候補の上端の画素と、内側の輪郭の候補の下端の画素と、下側の輪郭の候補の内側の端となる画素と、下側の輪郭の候補の外側の端となる画素と、外側の輪郭の候補の下端の画素と、のそれぞれの間に関して、最も近い点同士を接続することが好ましい。例えば、近い点同士が連続していない場合、画素間を補完する画素を検出して、画素間を接続することが好ましい。また、仮に、上下左右方向おいて、2重の線状の輪郭が検出された場合には、輪郭に接する画素の画素値が、周囲の境界に接する画素の画素値に近い境界を採用する。
【0129】
例えば、このようにして、第二検出部104によって検出された左右の肺野部の輪郭の候補の画素で構成される輪郭が、左右の肺野部の輪郭であり、この輪郭内の領域が、左右の肺野部の領域となる。
【0130】
なお、上記のように判別分析法を用いて左右の肺野部の領域を検出した場合において、左右の肺野部の外側の下端部近傍の辺縁の形状が、下方向に尖らずに、丸くなってしまう場合がある。このため、これを補正する目的で、第二検出部104は、さらに、左右の肺野部の外側の輪郭の下端と、下側の輪郭の外側の端の画素をそれぞれ中心として、予め決められた領域の画素について判別分析法を行って最適境界値をそれぞれ取得し、取得した最適境界値以下の画素値を有する画素であって、それぞれの中心の画素の周辺の画素、例えば、それぞれの中心から予め決められた距離にある画素や、それぞれを中心とした所定の形状およびサイズを有する領域の画素を、それぞれの肺野部に加えるようにしてもよい。
【0131】
また、第一検出部102が検出した第一領域である左右の肺野部の候補の領域の少なくとも一部が、上記で第二検出部104が検出した左右の肺野部の輪郭内の領域に含まれていない場合、第二検出部104が誤った輪郭抽出によって肺野部の領域を過小評価している可能性があるため、第一検出部102が検出した左右の肺野部の候補の領域に、第二検出部104が検出した左右の肺野部の輪郭の候補となる画素が示す領域を加えた領域、つまり、第一検出部102が検出した左右の肺野部の候補の領域と、第二検出部104が検出した左右の肺野部の輪郭の候補となる画素が示す領域との和集合の領域を検出するようにしてもよい。
【0132】
出力部105は、第二検出部104の検出結果を示す情報を出力する。第二検出部104の検出結果を示す情報は、例えば、第二検出部104が検出した輪郭を示す情報であってもよく、第二検出部104が検出した輪郭内の領域を示す情報であってもよい。例えば、輪郭を示す情報や、輪郭内の領域を示す情報を、胸部透過画像と対応付けて(例えば、胸部透過画像のファイル名と対応付けて)出力してもよい。また、第二検出部104の検出結果を示す情報は、第二検出部104が検出した輪郭内の領域に対して着色を行った胸部透過画像の画像情報であってもよい。なお、出力部105が出力する第二検出部104の検出結果を示す情報は、第二検出部104の検出結果を示すことが可能な情報であれば、上記の処理に限定されるものではない。
【0133】
なお、ここでの出力とは、モニタへの表示、プリンタによる印刷、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。
【0134】
出力部105は、モニタや、プリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部105は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【0135】
次に、画像処理装置1の動作の一例について
図3のフローチャートを用いて説明する。
【0136】
(ステップS101)第一検出部102は、画像格納部101から胸部透過画像を読み出す。なお、第一検出部102は、読みだした胸部透過画像に対して、サイズを小さくするためのリサイズや、画像の標準化処理等の画像処理を行ってもよい。また、肺野部を検出する際の誤検出の原因となる部分に対して修正等を行ってもよい。
【0137】
(ステップS102)第一検出部102は、ステップS101で読みだした胸部透過画像において、左右の肺野部のそれぞれの候補となる領域を検出するための始点となる画素をそれぞれ検出する。
【0138】
(ステップS103)第一検出部102は、ステップS102でそれぞれ検出する始点となる画素から、それぞれの画素に連続する画素で構成される左右の肺野部の第一領域である第一領域を検出する。例えば、第一検出部102は、Watershedアルゴリズムを用いて、第一領域を検出する。なお、第一領域を検出する前に、胸部透過画像に対して、撮影時の被写体と、イメージングプレートとの距離の偏り等により生じる濃度分布等を補正するための画像補正等を行ってもよい。また、Watershedアルゴリズムにより検出された始点にそれぞれ連続する領域に対して、輪郭をなめらかにしたり、領域内に生じる穴等を塞ぐためのモルフォロジー処理等を行うようにしてもよい。
【0139】
(ステップS104)エッジ検出部103は、ステップS103で検出した左右の肺野部の第一領域のそれぞれから、上下方向および外側方向に向かってエッジの検出を行う。なお、左右の肺野部の第一領域に挟まれた内側の領域については、エッジ検出を行わってもよく、行わなくてもよい。
【0140】
(ステップS105)第二検出部104は、右肺野部の外側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については、後述する。
【0141】
(ステップS106)第二検出部104は、左肺野部の外側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については、後述する
【0142】
(ステップS107)第二検出部104は、右肺野部の下側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については後述する。
【0143】
(ステップS108)第二検出部104は、左肺野部の下側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については後述する。
【0144】
(ステップS109)第二検出部104は、右肺野部の上側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については後述する。
【0145】
(ステップS110)第二検出部104は、左肺野部の上側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については後述する。
【0146】
(ステップS111)第二検出部104は、左右の肺野部の内側の輪郭の候補となる画素の検出処理を行う。この処理の詳細については後述する。
【0147】
(ステップS112)第二検出部104は、ステップS111で検出した左肺野部の内側の輪郭の候補となる画素に、心臓の輪郭が検出されていないか判断する。検出されている場合、ステップS113に進み、検出されていない場合、ステップS114に進む。
【0148】
(ステップS113)第二検出部104は、左肺野部の内側の下方、および左肺野部の下側の内側方向において、輪郭の候補となる画素を再検出する。この処理の詳細については、後述する。
【0149】
(ステップS114)第二検出部104は、検出した輪郭の候補となる複数の画素を用いて左右の肺野部の輪郭を完成させる処理を行う。例えば、極端に離れた輪郭の候補となる画素を、輪郭の候補から除外する。また、例えば、離れている輪郭の間に画素を補間して接続する。
【0150】
(ステップS115)第二検出部104は、左右の肺野部の外側の下端部分を補正する。
【0151】
(ステップS116)出力部105は、第二検出部104が検出した肺野部の情報を出力する。例えば、第二検出部104が検出した左右の肺野部の輪郭の情報(例えば、輪郭に接している複数の画素の座標や、輪郭内の領域を示す情報(例えば、領域内の複数の画素の座標等)を出力する。そして、処理を終了する。
【0152】
なお、
図3のフローチャートにおいて、例えば、画像格納部101に格納されている複数の画像のそれぞれについて、左右の肺野部の検出を行う場合、上記のステップS101からステップS116までの処理を、検出を行いたい複数の画像に対して、それぞれ、繰り返し行うようにしてもよい。
【0153】
また、
図3のフローチャートにおいて、左の肺野部の外側において輪郭の候補の画素を検出した以降に、左の肺野部の上側において輪郭の候補の画素が検出され、左の肺野部の上側において輪郭の候補の画素が検出された以降に、左の肺野部の内側において輪郭の候補の画素が検出され、右の肺野部の外側において輪郭の候補の画素を検出した以降に、右の肺野部の上側において輪郭の候補の画素が検出され、右の肺野部の上側において輪郭の候補の画素が検出された以降に、右の肺野部の内側において輪郭の候補の画素が検出されれば、他の左右の肺野部の輪郭を検出する処理の順番等は問わない。ただし、左の肺野部の下側の輪郭は、左の肺野部の外側において輪郭の候補の画素を検出した以降に行われることが好ましく、右の肺野部の下側の輪郭は、右の肺野部の外側において輪郭の候補の画素を検出した以降に行われることが好ましい。また、終了条件等を変更することで、上記以外の処理順番で、処理を行うようにしてもよい。
【0154】
なお、
図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0155】
次に、画像処理装置1の肺野部の外側の輪郭の候補となる画素を検出する動作の一例について
図4のフローチャートを用いて説明する。この動作は、
図3のステップS105およびステップS106の動作に相当する動作である。なお、以下においては、右肺野部の外側の輪郭の候補となる画素を検出する動作を例に挙げて説明するが、例えば、以下の説明の右肺野部を左肺野部と読み替えた動作が、左肺野部の外側の輪郭の候補となる画素を検出する動作の例となる。
【0156】
(ステップS201)第二検出部104は、右肺野部の第一領域の外側に検出された複数のエッジの画素において、直線に近い形状を有する上下につながった部分を検出する。例えば、第二検出部104は、ステップS104において右肺野部の第一領域の外側に検出されたエッジの画素の上下端近傍を除いた部分(例えば、全体の画素数の25%を上下端から除いた部分)を、直線に近い形状を有する上下につながった部分として検出する。なお、ステップS104で、右肺野部の第一領域の外側において、同じy座標に複数のエッジの候補の画素が検出されている場合、上記のつながった部分を検出する前に、この複数のエッジの候補の画素から、つながった部分の検出候補となる一つのエッジの画素を決定するようにしてもよい。
【0157】
(ステップS202)第二検出部104は、ステップS201で検出したエッジの画素の座標等を、右肺野部の外側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積する。
【0158】
(ステップS203)第二検出部104は、ステップS201で検出した部分の上端の画素を始点の画素として、この始点を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。
【0159】
(ステップS204)第二検出部104は、ステップS203(または、ステップS211やステップS213等)で取得した複数の画素値を用いて、最適境界値を取得する。例えば、判別分析法を用いて、複数の画素値から最適境界値を取得する。最適境界値は、例えば、判別分析法により取得されるしきい値である。
【0160】
(ステップS205)第二検出部104は、始点の画素の一つ上の行に、右肺野部の外側の輪郭となる境界を探索するための探索範囲を設定する。この探索範囲は、例えば、始点の画素の位置を中心とした左右のそれぞれの広さが、異なるものであってもよく同じであってもよい。この左右のそれぞれの広さは、例えば、この探索範囲が設定される行のy座標と対応付けられた広さに設定される。
【0161】
(ステップS206)第二検出部104は、ステップS205で設定した探索範囲内に、外側に接する画素の画素値がステップS204で取得した最適境界値以上の値であって、その内側(すなわち右肺野部の第一領域側)に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界がある場合、ステップS207に進み、境界がない場合、ステップS208に進む。
【0162】
(ステップS207)第二検出部104は、ステップS206で検出した境界の外側に接する画素を、右肺野部の外側の輪郭の候補となる画素として検出する。例えば、この画素の座標等を、右肺野部の外側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積(例えば、追記)する。そして、ステップS212に進む。なお、ここでは、境界の外側(右肺野部の第一領域に遠い側)の画素を輪郭の候補となる画素として検出するが、境界の内側(右肺野部の第一領域に近いが側)の画素を、輪郭の候補となる画素として検出してもよい。かかることは、ステップS218等についても同様である。
【0163】
(ステップS208)第二検出部104は、直前のステップS205において設定した探索範囲内の複数の画素の画素値を用いて、判別分析法等を用いて、最適境界値を取得する。
【0164】
(ステップS209)第二検出部104は、直前のステップS205において設定した探索範囲内に、外側に接する画素の画素値がステップS208で取得した最適境界値以上の値であって、その内側(すなわち右肺野部の第一領域側)に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界が検出された場合、ステップS207に進み、ない場合、ステップS210に進む。
【0165】
(ステップS210)第二検出部104は、上方向への輪郭の候補となる画素の探索が終了か判断する。例えば、胸部透過画像の上端に達するまで輪郭の候補となる画素の探索が行われた場合に、探索を終了すると判断する。あるいは、予め決められた数以上の回数だけ連続して輪郭の候補となる画素が検出されない場合に、探索を終了すると判断する。探索を終了する場合、ステップS214に進み、終了しない場合、ステップS211に進む。
【0166】
(ステップS211)第二検出部104は、始点として用いた画素のひとつ上の画素(例えば、1ピクセル上の画素)を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS204に戻る。
【0167】
(ステップS212)第二検出部104は、上方向への輪郭の候補となる画素の探索が終了か判断する。例えば、胸部透過画像の上端まで輪郭の候補となる画素の探索が行われた場合に、探索を終了すると判断する。また、予め決められた数以上の回数だけ連続して輪郭の候補となる画素が検出されない場合に、探索を終了すると判断してもよい。探索を終了する場合、ステップS214に進み、終了しない場合、ステップS213に進む。
【0168】
(ステップS213)第二検出部104は、ステップS207で検出した外側の輪郭の候補となる画素を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS204に戻る。
【0169】
(ステップS214)第二検出部104は、ステップS202で検出した部分の下端の画素を始点の画素として、この始点を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。
【0170】
(ステップS215)第二検出部104は、ステップS214(または、ステップS220やステップS224等)で取得した複数の画素値を用いて、最適境界値を取得する。例えば、判別分析法を用いて、複数の画素値から最適境界値を取得する。
【0171】
(ステップS216)第二検出部104は、始点の画素の一つ下の行に、右肺野部の外側の輪郭となる境界を探索するための探索範囲を設定する。この探索範囲は、例えば、始点の画素の位置を中心とした左右のそれぞれの広さが、異なるものであってもよく同じであってもよい。この左右のそれぞれの広さは、例えば、この探索範囲が設定される行のy座標と対応付けられた広さに設定される。
【0172】
(ステップS217)第二検出部104は、ステップS216で設定した探索範囲内に、外側に接する画素の画素値がステップS215で取得した最適境界値以上の値であって、その内側(すなわち右肺野部の第一領域側)に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界がある場合、ステップS218に進み、境界がない場合、ステップS214に進む。
【0173】
(ステップS218)第二検出部104は、ステップS217で検出した境界の外側に接する画素を、右肺野部の外側の輪郭の候補となる画素として検出する。例えば、この画素の座標等を、右肺野部の外側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積(例えば、追記)する。そして、ステップS219に進む。
【0174】
(ステップS219)第二検出部104は、下方向への輪郭の候補となる画素の探索が終了か判断する。例えば、胸部透過画像の下端まで輪郭の候補となる画素の探索が行われた場合に、探索を終了すると判断する。あるいは、予め決められた数以上の回数だけ連続して輪郭の候補となる画素が検出されない場合に、探索を終了すると判断する。探索を終了する場合、上位の処理にリターンし、終了しない場合、ステップS220に進む。
【0175】
(ステップS220)第二検出部104は、ステップS218で検出した外側の輪郭の候補となる画素を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内の複数の画素の画素値を取得する。そして、ステップS215に戻る。
【0176】
(ステップS221)第二検出部104は、直前のステップS216において設定した探索範囲内の複数の画素の画素値を用いて、判別分析法等を用いて、最適境界値を取得する。
【0177】
(ステップS222)第二検出部104は、直前のステップS216において設定した探索範囲内に、外側に接する画素の画素値がステップS221で取得した最適境界値以上の値であって、その内側(すなわち右肺野部の第一領域側)に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界が検出された場合、ステップS218に進み、ない場合、ステップS223に進む。
【0178】
(ステップS223)第二検出部104は、下方向への輪郭の候補となる画素の探索が終了か判断する。この判断処理は、ステップS219の判断処理と同様である。探索を終了する場合、上位の処理にリターンし、終了しない場合、ステップS224に進む。
【0179】
(ステップS224)第二検出部104は、始点として用いた画素の一つ下の画素(例えば、1ピクセル上の画素)を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS215に戻る。
【0180】
なお、
図4のフローチャートにおいては、最初に上方向に輪郭の候補となる画素を探索したが、最初に下方向に輪郭の候補となる画素を探索するようにしてもよい。
【0181】
なお、
図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0182】
次に、画像処理装置1の、左右の肺野部の下側の輪郭の候補となる画素を検出する動作の一例について
図5のフローチャートを用いて説明する。この処理は、
図3のステップS107およびS108に相当する処理である。なお、以下においては、右肺野部の下側の輪郭の候補となる画素を検出する動作を例に挙げて説明するが、例えば、以下の説明の右肺野部を左肺野部、左肺野部を右肺野部等と読み替えた動作が、左肺野部の下側の輪郭の候補となる画素を検出する動作の例となる。なお、左右の肺野部の第一領域の下側において検出されたエッジの画素は、ここでは、左右の肺野部の下側の輪郭の候補となる画素の一部として利用されるものとする。例えば、このエッジの画素の座標等は、左右の肺野部の下側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積(例えば、追記)する。
【0183】
(ステップS301)第二検出部104は、右肺野部の第一領域の下側で検出されたエッジの、右肺野部の外側方向の端の画素を始点の画素として、この始点を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。なお、ステップS104で、右肺野部の第一領域の下側において、同じx座標に複数のエッジの候補の画素が検出されている場合、上記の処理の前に、この複数のエッジの候補の画素から、x座標ごとに一つのエッジの画素を決定するようにしてもよい。
【0184】
(ステップS302)第二検出部104は、ステップS301(または、ステップS307やステップS311等)で取得した複数の画素値を用いて、判別分析法等により、最適境界値を取得する。
【0185】
(ステップS303)第二検出部104は、始点の画素に対して、1画素だけ右肺野部の外側方向となる列に、右肺野部の下側の輪郭となる境界を探索するための探索範囲を設定する。この探索範囲は、例えば、始点の画素の位置を中心とした上下のそれぞれの広さが、この探索範囲が設定される行のx座標と対応付けられた広さである範囲である。
【0186】
(ステップS304)第二検出部104は、ステップS303で設定した探索範囲内に、下側に接する画素の画素値がステップS302で取得した最適境界値以上の値であって、その上側(すなわち右肺野部の第一領域側)に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界がある場合、ステップS305に進み、境界がない場合、ステップS308に進む。
【0187】
(ステップS305)第二検出部104は、ステップS304で検出した境界の下側に接する画素を、右肺野部の下側の輪郭の候補となる画素として検出する。例えば、この画素の座標等を、右肺野部の下側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積(例えば、追記)する。なお、ここでは、境界の下側(右肺野部の第一領域から離れた側)の画素を輪郭の候補となる画素として検出するが、境界の上側(右肺野部の第一領域に近い側)の画素を、輪郭の候補となる画素として検出してもよい。かかることは、ステップS316等においても同様である。
【0188】
(ステップS306)第二検出部104は、右肺野部の外側方向への輪郭の候補となる画素の探索が終了か判断する。例えば、右肺野部の外側において検出された輪郭の候補となる画素のうちの、最も外側に位置する画素とx座標が同じである列について輪郭の候補となるがその探索が行われた場合、探索を終了すると判断する。また、予め決められた数以上の回数だけ連続して輪郭の候補となる画素が検出されない場合に、探索を終了すると判断してもよい。探索を終了する場合、ステップS312に進み、終了しない場合、ステップS307に進む。
【0189】
(ステップS307)第二検出部104は、ステップS305で検出した下側の輪郭の候補となる画素を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS302に戻る。
【0190】
(ステップS308)第二検出部104は、直前のステップS303において設定した探索範囲内の複数の画素の画素値を用いて、判別分析法等を用いて、最適境界値を取得する。
【0191】
(ステップS309)第二検出部104は、直前のステップS303において設定した探索範囲内に、下側に接する画素の画素値がステップS308で取得した最適境界値以上の値であって、その上側に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界が検出された場合、ステップS305に進み、ない場合、ステップS310に進む。
【0192】
(ステップS310)第二検出部104は、右肺野部の外側方向への輪郭の候補となる画素の探索が終了か判断する。この判断処理は、例えば、ステップS306の判断処理と同様である。探索を終了する場合、ステップS312に進み、終了しない場合、ステップS311に進む。
【0193】
(ステップS311)第二検出部104は、始点として用いた画素に対して、1画素だけ右肺野部の外側方向となる画素(例えば、1ピクセルだけ外側の画素)を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS302に戻る。
【0194】
(ステップS312)第二検出部104は、右肺野部の第一領域の下側で検出されたエッジの、右肺野部の内側方向の端の画素を始点の画素として、この始点を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。
【0195】
(ステップS313)第二検出部104は、ステップS312(または、ステップS318やステップS322等)で取得した複数の画素値を用いて、判別分析法等により、最適境界値を取得する。
【0196】
(ステップS314)第二検出部104は、始点の画素に対して、1画素だけ右肺野部の内側方向となる列に、右肺野部の下側の輪郭となる境界を探索するための探索範囲を設定する。この探索範囲は、例えば、始点の画素の位置を中心とした上下のそれぞれの広さが、この探索範囲が設定される行のx座標と対応付けられた広さである範囲である。
【0197】
(ステップS315)第二検出部104は、ステップS314で設定した探索範囲内に、下側に接する画素の画素値がステップS313で取得した最適境界値以上の値であって、その上側(すなわち右肺野部の第一領域側)に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界がある場合、ステップS316に進み、境界がない場合、ステップS319に進む。
【0198】
(ステップS316)第二検出部104は、ステップS315で検出した境界の下側に接する画素を、右肺野部の下側の輪郭の候補となる画素として検出する。例えば、この画素の座標等を、右肺野部の下側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積(例えば、追記)する。
【0199】
(ステップS317)第二検出部104は、右肺野部の内側方向への輪郭の候補となる画素の探索が終了か判断する。例えば、境界の探索範囲が、左肺野部に達した場合に、探索を終了すると判断する。あるいは、予め決められた数以上の回数だけ連続して輪郭の候補となる画素が検出されない場合に、探索を終了すると判断する。探索を終了する場合、上位の処理にリターンし、終了しない場合、ステップS318に進む。
【0200】
(ステップS318)第二検出部104は、ステップS316で検出した下側の輪郭の候補となる画素を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS313に戻る。
【0201】
(ステップS319)第二検出部104は、直前のステップS314において設定した探索範囲内の複数の画素の画素値を用いて、判別分析法等を用いて、最適境界値を取得する。
【0202】
(ステップS320)第二検出部104は、直前のステップS314において設定した探索範囲内に、下側に接する画素の画素値がステップS19で取得した最適境界値以上の値であって、その上側に接する画素の画素値がこの最適境界値未満の値である境界があるか判断する。境界が検出された場合、ステップS316に進み、ない場合、ステップS321に進む。
【0203】
(ステップS321)第二検出部104は、右肺野部の内側方向への輪郭の候補となる画素の探索が終了か判断する。この判断処理は、例えば、ステップS317の判断処理と同様である。探索を終了する場合、上位の処理にリターンし、終了しない場合、ステップS322に進む。
【0204】
(ステップS322)第二検出部104は、始点として用いた画素に対して、1画素だけ右肺野部の内側方向となる画素(例えば、1ピクセルだけ外側の画素)を、新たな始点となる画素として用いて、この画素を中心とした予め決められた形状およびサイズを有する領域内(例えば、7×7画素の領域内)の複数の画素の画素値を取得する。そして、ステップS313に戻る。
【0205】
なお、
図5のフローチャートにおいては、最初に外側方向に輪郭の候補となる画素を探索したが、最初に内側方向に輪郭の候補となる画素を探索するようにしてもよい。
【0206】
なお、
図5のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0207】
次に、画像処理装置1の、左右の肺野部の上側の輪郭の候補となる画素を検出する動作の一例について
図6のフローチャートを用いて説明する。この処理は、
図3のステップS109およびS110に相当する処理である。なお、以下においては、右肺野部の上側の輪郭の候補となる画素を検出する動作を例に挙げて説明するが、例えば、以下の説明の右肺野部を左肺野部、左肺野部を右肺野部等と読み替えた動作が、左肺野部の上側の輪郭の候補となる画素を検出する動作の例となる。
【0208】
(ステップS401)第二検出部104は、右肺野部の第一領域の上側に検出された複数のエッジの画素において、左右につながった部分を検出する。例えば、右肺野部の外側および内側の端近傍を除いた部分(例えば、全体の画素数の25%を外側および内側の端近傍から除いた部分)を、左右につながった部分として検出する。なお、ステップS104で、右肺野部の第一領域の上側において、同じx座標に複数のエッジの候補の画素が検出されている場合、上記の処理の前に、この複数のエッジの候補の画素から、x座標ごとに一つのエッジの画素を決定するようにしてもよい。
【0209】
(ステップS402)第二検出部104は、ステップS401において検出した部分の、右肺野部の外側の端の画素を始点の画素として、右肺野部の外側方向に向かって、輪郭の候補の画素を順次検出する処理を行う。この処理は、最初の始点となる画素が異なる点を除けば、
図5に示した肺野部の下側の輪郭の候補となる画素を検出する処理の、ステップS301から、ステップS311までの処理と同様の処理である。この処理は、例えば、右肺野部の外側において検出された輪郭の候補となる画素のうちの、最も外側に位置する画素とx座標が同じである列について輪郭の候補となる画素の探索が行われた場合に終了する。ただし終了条件は、これに限定されない。
【0210】
(ステップS403)第二検出部104は、ステップS402で外側方向に検出された輪郭の候補となる画素に、右肺野部の外側において検出された輪郭の候補となる画素と重なる画素があるか判断する。ある場合、ステップS404に進み、ない場合、ステップS405に進む。
【0211】
(ステップS404)第二検出部104は、ステップS402で検出された重なる画素の一つ(例えば、最も上側に位置する画素)を始点として、右肺野部の内側方向(すなわち左肺野部の方向)に向かって、輪郭の候補となる画素を順次検出する処理を行う。この処理は、例えば、
図5に示した肺野部の下側の輪郭の候補となる画素を検出する処理の、ステップS312から、ステップS322までの処理と同様の処理である。ただし、最初の始点がステップS404で検出された重なる画素の一つである点等が異なる。この処理は、例えば、輪郭の候補となる画素を探索する範囲が、左肺野部の第一領域に達した時点で終了する。ただし終了条件は、これに限定されない。なお、重なる画素が検出された場合、ステップS403で外側方向において検出した輪郭の候補となる画素は、輪郭の候補から除外する。この処理が終了した場合、上位の処理にリターンする。
【0212】
(ステップS405)第二検出部104は、ステップS401において検出した部分の、右肺野部の内側の端の画素を始点の画素として、右肺野部の内側方向に向かって、輪郭の候補の画素を順次検出する処理を行う。この処理は、最初の始点となる画素が異なる点を除けば、
図5に示した肺野部の下側の輪郭の候補となる画素を検出する処理の、ステップS312から、ステップS322までの処理と同様の処理である。この処理は、例えば、右肺野部の外側において検出された輪郭の候補となる画素のうちの、この処理は、例えば、輪郭の候補となる画素を探索する範囲が、左肺野部の第一領域に達した時点で終了する。ただし終了条件は、これに限定されない。この処理が終了した場合、上位の処理にリターンする。なお、このステップS405に進む場合、ステップS401において検出した左右につながった部分の画素の座標等も、右肺野部の上側の輪郭の候補となる画素の一部を示す情報として、図示しない格納部等に蓄積(例えば、追記)する。
【0213】
なお、
図6のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0214】
次に、画像処理装置1の、左右の肺野部の内側の輪郭の候補となる画素を検出する動作の一例について
図7のフローチャートを用いて説明する。この処理は、
図3のステップS111に相当する処理である。
【0215】
(ステップS501)第二検出部104は、左右の肺野部の上部を通る予め決められた高さの行を構成する複数の画素であって、左右の肺野部の外側において検出された輪郭の候補となる画素で挟まれた領域内の画素の画素値の分布を取得する。
【0216】
(ステップS502)第二検出部104は、ステップS501で取得した画素値の分布を用いて、右肺野部の内側の輪郭の候補となる画素を検出するための始点となる画素を検出する。例えば、ステップS501で取得した画素値の分布において、画素値が、この分布が示す画素全体の代表値(例えば、平均値)以上である連続した画素の領域と、代表値未満である連続した画素の領域とを検出する。そして、代表値未満である領域から、右肺野部に相当する領域を検出し、検出した領域に対して右肺野部の中心側方向に隣接する領域であって、画素値が代表値以上である連続した画素の領域を検出する。そして、ステップS109で検出した右肺野部の上側の輪郭の候補となる画素であって、上記で検出した領域内の画素を、始点の画素として検出する。
【0217】
(ステップS503)ステップS502で検出した始点の画素から、下方向に向かって、右肺野部の内側の輪郭の候補の画素を順次検出する処理を行う。この処理は、最初の始点となる画素が異なる点等を除けば、
図4に示した肺野部の外側の輪郭の候補となる画素を検出する処理の、ステップS214からステップS224までの処理と同様の処理である。なお、この処理は、例えば、右肺領域の下側に検出された輪郭の候補となる画素の、最も下方の画素と、同じy座標まで、輪郭の候補となる画素を検出する処理が行われた場合(例えば、境界を検出する行が、最も下方の画素と、同じy座標の行となった場合)に、終了する。ただし、終了条件はこれに限定されるものではない。
【0218】
(ステップS504)第二検出部104は、ステップS501で取得した画素値の分布を用いて、左肺野部の内側の輪郭の候補となる画素を検出するための始点となる画素を検出する。例えば、ステップS501で取得した画素値の分布における、画素値が代表値未満である連続した画素の領域から、左肺野部に相当する領域を検出し、検出した領域に対して左肺野部の内側方向に隣接する領域であって、画素値が代表値以上である連続した画素の領域を検出する。そして、ステップS110で検出した左肺野部の上側の輪郭の候補となる画素であって、上記で検出した領域内の画素を、始点の画素として検出する。
【0219】
(ステップS505)第二検出部104は、ステップS504で検出した始点の画素から、下方向に向かって、左肺野部の内側の輪郭の候補の画素を順次検出する処理を行う。この処理は、最初の始点となる画素が異なる点、肺野部が左肺野部である点等を除けば、
図4に示した肺野部の外側の輪郭の候補となる画素を検出する処理の、ステップS214からステップS224までの処理と同様の処理である。なお、この処理は、例えば、左肺領域の下側に検出された輪郭の候補となる画素の、最も下方の画素と、同じy座標まで、輪郭の候補となる画素を検出する処理が行われた場合(例えば、境界を検出する行が、最も下方の画素と、同じy座標の行となった場合)に、終了する。ただし、終了条件はこれに限定されるものではない。そして輪郭の候補となる画素の検出が終了した時点で、上位の処理にリターンする。
【0220】
なお、
図7のフローチャートにおいて、右肺野部の内側の輪郭の候補を検出する処理と、左肺野部の内側の輪郭の候補を検出する処理との、どちらの処理を先に行うようにしても良い。
【0221】
なお、
図7のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0222】
次に、画像処理装置1の、左肺野部の内側の下部、および左肺野部の下側の内側部分の、輪郭の候補となる画素を再検出する動作の一例について、
図8のフローチャートを用いて説明する。
【0223】
(ステップS601)第二検出部104は、新たなエッジの画素を検出する始点となる画素を検出する。例えば、ステップS505で検出した左肺野部の内側の輪郭の候補となる画素のうちの、下端となる画素から予め決められた高さだけ上側にある画素を、新たなエッジの画素を検出する始点とする。
【0224】
(ステップS602)第二検出部104は、ステップS601で検出した始点となる画素から、右肺野部の方向に向かって、画素値が増加しているエッジを検出する。
【0225】
(ステップS603)第二検出部104は、エッジの画素(例えば、エッジに対して右肺野部側に隣接する画素)を始点として、上方向および下方向に、内側の輪郭となる画素を順次検出する。上方向に輪郭となる画素を検出する処理は、最初の始点となる画素が異なる点を除けば、
図4に示した肺野部の外側の輪郭の候補となる画素を検出する処理の、ステップS203からステップS213までの処理と同様の処理である。また、下方向に輪郭となる画素を検出する処理は、最初の始点となる画素が異なる点を除けば、
図4に示した肺野部の外側の輪郭の候補となる画素を検出する処理の、ステップS214からステップS224までの処理と同様の処理である。検出する処理は、例えば、上方向においては、探索範囲が、最初に取得した左肺野部の内側の輪郭の候補の画素と重なるまで行われ、下方向においては、最初に取得した左肺野部の下側の輪郭の候補の画素のうちの最も下側の画素と同じ高さにおいて輪郭の候補の画素が探索されるまで行われる。ただし、終了の条件は問わない。
【0226】
(ステップS604)第二検出部104は、ステップS601で検出した始点となる画素から、下方向に向かって、画素値が増加しているエッジを検出する。
【0227】
(ステップS605)第二検出部104は、ステップS604でエッジが検出された場合、そのエッジよりも上方(例えば、エッジと始点となる画素との間の領域)、または検出されたエッジの外側に、画素値が急激に減少した領域があるか判断する。例えば、しきい値以上画素値が急激に減少した領域があるか探索する。急激に減少した領域がない場合、ステップS606に進み、ある場合、ステップS608に進む。
【0228】
(ステップS606)第二検出部104は、検出したエッジの下側に接する画素を始点として、左肺野部の外側方向および内側方向に、下側の輪郭の候補となる画素を検出する処理を行う。外側方向に輪郭となる画素を検出する処理は、始点となる画素や、肺野部が異なる点を除けば、
図5に示した肺野部の下側の輪郭の候補となる画素を検出する処理の、ステップS301から、ステップS311までの処理と同様の処理である。内側方向に輪郭となる画素を検出する処理は、始点となる画素や、肺野部が異なる点を除けば、
図5に示した肺野部の下側の輪郭の候補となる画素を検出する処理の、ステップS312から、ステップS322までの処理と同様の処理である。検出する処理は、例えば、外側方向においては、探索範囲が、左肺野部の外側の輪郭の候補となる画素に達するまで行われ、内側方向においては、探索範囲が、右肺野部の第一領域に達するまで行われる。ただし、終了条件は上記に限定されるものではない。
【0229】
(ステップS607)第二検出部104は、新たな輪郭の候補となる画素によって不要となった輪郭の候補となる画素を、候補から除外する。そして、上位の処理にリターンする。
【0230】
(ステップS608)第二検出部104は、下方向に向かって、次のエッジを検出する。
【0231】
(ステップS609)第二検出部104は、検出されたエッジと直前に検出されたエッジとの間、または検出されたエッジの外側に、画素値が急激に減少した領域があるか判断する。急激に減少した領域がある場合、ステップS608に戻り、ない場合、ステップS606に進む。ステップS606では、ここで検出したエッジを利用して処理を行う。
【0232】
なお、
図8のフローチャートにおいて、上下方向に輪郭の候補を再検出する処理と、左右方向に輪郭の候補を再検出する処理とを行う順序は問わない。
【0233】
なお、
図8のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0234】
以下、本実施の形態における画像処理装置1の具体的な動作について例を上げて説明する。この具体例においては、胸部透過画像として、胸部レントゲン画像を用いる場合を例に挙げて説明する。なお、この具体例において示す画素の位置やサイズ、輪郭の位置やサイズ、領域の位置やサイズ等は、説明の便宜上のものであり、必ずしも実際の胸部レントゲン画像から、本実施の形態の処理等を行って検出された位置等を表すものではない。
【0235】
図9(a)は、画像格納部101に格納されている複数の胸部レントゲン画像を管理する画像管理表である。画像管理表は、「ファイル名」と、「画像」という属性を有している。「ファイル名」は、胸部レントゲン画像のファイル名であり、「画像」は、画像のデータである。ここでは、画像格納部101に格納されている各胸部レントゲン画像は、被検者の胸部を正面から撮影した画像であるとする。各胸部レントゲン画像は、階調値が0から255までの8ビット256階調のグレースケール画像であり、サイズは、例えば、128×128ピクセルであるとする。階調値は輝度値と考えてもよい。階調値0は黒であり、階調値255が白であるとする。
【0236】
図9(b)は、画像格納部101に格納されているファイル名が「IMG0001」である胸部レントゲン画像の表示例を示す図である。
【0237】
ユーザが、例えば、図示しない受付部等を介してファイル名が「IMG0001」である胸部レントゲン画像を処理対象に指定したとすると、第一検出部102は、ファイル名が「IMG0001」である画像データを画像格納部101から読み出す。以下、この胸部レントゲン画像を画像「IMG0001」と呼ぶ場合がある。なお、仮に、画像のサイズが128×128ピクセルが大きい場合には、計算量を削減するため、128×128ピクセルにリサイズを行う。
【0238】
第一検出部102は、読み出した画像に対して標準化処理を行う。標準化処理については公知技術であるため、ここでは詳細な説明を省略する。
【0239】
第一検出部102は、画像の端に黒や白の人工的な線がノイズとして入っている場合を想定して、端の数ピクセルを黒色で置き換える。この処理は、後のエッジ検出処理を精度よく行うための前処理と考えてもよい。
【0240】
図10(a)~
図10(d)は、左右の肺野部の第一領域を検出する処理を説明するための図である。
【0241】
第一検出部102は、読み出して、上記のような処理を行った画像「IMG0001」の、
図10(a)に示すような、右肺野部が存在する可能性が高いと考えられる予め決められた領域10R内、および左肺野部が存在する可能性が高いと考えられる予め決められた領域10L内において、それぞれ、最も画素値の低い画素を検出する(
図10(b))。例えば、領域10Rは、x座標が25~37.5%の範囲で、y座標が25~50%の範囲である領域、領域10Lは、x座標が62.5~75%の範囲で、y座標が25~50%の範囲である領域とする。領域10R内で検出された最も画素値の低い画素11Rを右肺野部の第一領域を検出する始点とし、領域10L内で検出された最も画素値の低い画素11Lを右肺野部の第一領域を検出する始点とする。なお、領域10Lおよび領域10Rは、例えば、処理対象の画像に関係なく決められた位置に設定された領域である。
【0242】
次に、Watershedアルゴリズムを利用して、画像「IMG0001」において、以下のように、始点11Rおよび始点11Lのそれぞれに連続する領域を検出する。まず、右肺野部の第一領域を検出する始点11Rからスタートして、画素値が境界値以下であり、始点11Rと連続している画素を検出する。例えば、境界値の初期設定値として、連続する画素を検出するごとに、値を1ずつ増加させていく。初期設定値の画素値は、例えば、60とする。ただし、この値に限定されない。検出した連続する画素が、胸部レントゲン画像の右上隅、左上隅、左下隅、右下隅、および左肺野部の第一領域を検出する始点11Lのいずれかに連続した場合、境界値設定を1減少させて、この境界値を、最終的な境界値に採用し、この境界値を用いて検出した始点11Rに連続した画素を検出結果として採用する。なお、始点11Lおよび始点11Rは、それぞれ始点となる画素と考えてよい。
【0243】
なお、初期設定値でも、検出した画素が、上記の右上隅、左上隅、左下隅、右下隅および始点11Rの1以上と連続する場合には、境界値の初期設定値を予め決められた値だけ減少させた値として(例えば、元の初期設定値60から20減少させた値である40として)再度、上記のような連続する画素を検出する処理を行う。
【0244】
同様の処理を行って、右肺野部の第一領域を検出する始点11Lからスタートして、画素値が境界値以下であり、始点11Lと連続している画素を検出する処理を行う。
【0245】
次に、画像を、8×8の64のエリアに分割し、それぞれのエリア内において、上記で検出した始点11Lに連続する画素および始点11Lに連続する画素の画素値の平均値を求めて、それらが均一となるようにエリアごとの画素値を補正する。
【0246】
通常の胸部レントゲン画像を撮影する場合、患者等の被検者は胸部や背中を左右均等にイメージングプレートに隙間の無いように接するようにして静止した状態を数秒保持した状態で撮影されるが、様々な状況によって、胸部や背中の一部(例えば、左右の一方)がイメージングプレートから浮いた状態で撮影が行われると、胸部や背中の一部と、イメージングプレートとの間に空気が入ることで、浮いた部分から浮いていない部分に向かって(例えば、左右方向に向かって)全体的に画素値のグラデーションが生じた画像が撮影される場合がある。このようなグラデーションがかかっている場合、左右の肺野部の片側が実際よりも大きく、反対側が実際よりも小さく映ることが多くなり、その後の処理で正しい輪郭検出ができない場合がある。このため、ここでは、エリアごとの画素値の補正を行う。
【0247】
具体的には、分割した各エリア内の始点11Lに連続する画素および始点11Lに連続する画素の画素値の平均値を各エリアの中心に配置して、エリア間において中心の値(平均値)に勾配が生じているか判断し、勾配が生じている場合には、この勾配をなくすための各エリアの補正値を取得する。勾配をなくす補正のための補正値として、まず、各エリアの上記の平均値を、同じにするための画素値の補正値を、各エリアの中心の補正値とする。さらに、各エリアの中心以外の画素の補正値としては、各エリア間の勾配の方向を利用して、エリアごとにこの勾配が打ち消されるよう(例えば、勾配の低いほうの画素に加えられる画素値が、勾配の高いほうの画素に加えられる画素値よりも大きくなるよう)に、各エリアの中心の補正値をもとに、各エリアの中心に対する距離に応じて、バイリニア法を用いて決定する。このような補正を行うことにより、最終的に、イメージプレートとの距離の勾配に応じた画素値のグラデーションが生じている画像について、このグラデーションを除去することが可能となる。
【0248】
なお、ここでは、画像を64のエリアに分割したが、分割数は64に限定されるものではない。ただし、分割数が多くなりすぎると処理に時間がかかるとともに、病変そのものが、上記のような均一化の処理によって消去されてしまう可能性があります。一方で小さすぎると均一化の効果が不十分となることが考えられることから、この具体例においては、分割数を64とすることが好ましい。
【0249】
第一検出部102は、次に、上記のように画素値を補正した画像「IMG0001」を用いて、上記と同様に、Watershedアルゴリズムを利用して、始点11Rおよび始点11Lのそれぞれに連続する領域を検出する。すなわち、始点11Rからスタートして、画素値が境界値以下であり、始点11Rと連続している画素を検出する処理と、始点11Lからスタートして、画素値が境界値以下であり、始点11Lと連続している画素を検出する処理と、を行い、始点11Rに連続する画素の領域と、始点11Lに連続する画素の領域とを検出する。
【0250】
ここで検出した2つの領域は、辺縁が不揃いであり、なめらかではなく、また、内部に、画素値が境界値以下でない画素で構成される穴が開いていたりする場合があるため、モルフォロジー変換を行う。ここでは、例えば、まず、Erosionと呼ばれる処理を3回行い、その後Dilationと呼ばれる処理を3回行う。ここでのモルフォロジー変換は、一例であり、どのようなモルフォロジー変換を行ってもよい。また、Erosion処理とDilation処理とを行う場合、それぞれの処理の回数は上記に限定されるものではない。
【0251】
第一検出部102は、
図10(c)に示すような、モルフォロジー変換が行われた始点11Rに連続する画素の領域を、右肺野部の候補となる領域、すなわち右肺野部の第一領域12Rとして取得し、モルフォロジー変換が行われた始点11Lに連続する画素の領域を、左肺野部の候補となる領域、すなわち左肺野部の第一領域12Lとして取得する。
【0252】
さらに、モルフォロジー変換を行った画像「IMG0001」に対し、肺野部の第一領域から外側に向かって画素値を比較していき、画像「IMG0001」の端から、予め決められた距離以内(例えば10ピクセル以内)であって、上記で検出された左右の肺野部の第一領域12Rおよび12Lから、予め決められた距離以上(例えば、5ピクセル以上)離れている部分で、画素値が予め決められた階調以上(例えば4階調以上)上昇しているライン状の領域を検出し、検出された場合、検出した領域を左右の白いノイズと判定して、この部分を画素値0の画素、すなわち黒い画素で置き換える。この操作によって、例えば、胸部レントゲン画像が、仮に、
図10(d)のような画像である場合に、後述する処理において、画像の右側に肺野部の輪郭ではない境界線90が検出されることを防止できる。
【0253】
なお、上記においては、画像格納部101から読み出した画像「IMG0001」に対し、標準化処理や、始点11Rおよび始点11Lに連続する画素の検出を伴う画素値の補正や、モルフォロジー処理や、画像の端の画素値が上昇しているライン状の領域を黒い画素で置き換える処理等を行うようにしたが、これらの処理の1以上を省略するようにしてもよい。また、これら以外の処理を適宜行うようにしてもよい。
【0254】
上記で取得した左右の肺野部の第一領域12Rおよび12Lを用いて、左右の肺野部の輪郭の検出を行う。なお、これ以降の処理においては、処理対象の画像「IMG0001」としては、画像格納部101が読み出し、標準化処理を行った胸部レントゲン画像を用いるものとする。つまり、上記のグラデーションを除去する処理は、第一領域の検出においてのみ利用する。
【0255】
図11(a)~
図11(c)は、左右の肺野部の輪郭の検出処理を説明するための図である。
【0256】
エッジ検出部103は、左右の肺野部の第一領域12Rおよび12Lを構成する画素をそれぞれ中心として、上下方向、および外側方向に向かって、画素の列または行に沿って直線状に画素値を調査し、それぞれのライン上で、領域12Rおよび12Lから離れる方向に向かって隣り合う画素間で画素値が増加しているエッジをすべて検出する。そして、ラインごとに検出したエッジの中から、予め決められた数以下のエッジを、エッジを挟んで隣り合う画素値の差が大きいものから順に、エッジの候補の画素として採用する。ここでは、ラインごとに、隣接する画素の画素値の差が大きい上位2つのエッジの画素を、エッジの候補の画素として採用する。なお、エッジが一つしか検出できない部分については、検出された一つのエッジの画素のみを採用する。例えば、検出した画素の座標を、図示しない格納部等に蓄積する。
【0257】
胸部レントゲン画像において、左右の肺野部の第一領域12Rおよび12Lを中心として検出したエッジの画素20は、例えば、
図11(a)の実線等で示した部分である。
【0258】
次に、上記で検出したエッジの画素のうちの右肺野部の第一領域12Rの外側において検出したエッジの画素において、一つのエッジだけが検出されたラインのエッジの画素を読み出し、この画素の一つ上の行において検出された1以上のエッジの候補の画素から、エッジの画素に最も近いエッジの候補の画素を、エッジの画素として決定する。エッジの画素を決定した後は、この決定したエッジの画素の一つ上の行において検出された1以上のエッジの候補の画素から、同様にエッジの画素を決定する。この処理を、上方向の行について繰り返し行う。また、同様の処理を、一つのエッジだけが検出されたラインのエッジの画素の下方向の行についても行う。ただし、どのように複数のエッジの画素が検出された行から、一のエッジを選択するかは上記に限定されるものではない。
【0259】
次に、上記で決定したエッジの画素のうちの右肺野部の第一領域12Rの外側において検出したエッジの画素において、上下方向に直線状につながっている部分を検出する。ここでは、検出した画素の上下端から全体の長さの25%をそれぞれ除外した部分のエッジの画素を、直線状につながっている部分として検出し、この部分を右肺野部の外側の輪郭の候補となる画素の一部として採用する。採用した画素は、例えば、
図11(b)の実線21Rで示した部分の画素である。ここでのつながっている画素とは、例えば、辺同士が隣接している画素や、角同士が一致している画素や、y座標が1ピクセル異なるとともに、x座標の差が、予め決められた範囲内である画素である。
【0260】
次に、第二検出部104は、右肺野部の外側に検出されたエッジの候補となる複数の画素の、上下方向に直線状につながっている部分の上端の画素を始点の画素として、判別分析法を用いて上方向に順次輪郭の候補となる画素を検出する処理を行う。
【0261】
具体的には、上記において
図2(a)を用いて説明したように、始点となる画素21を中心とした7×7画素について、それぞれの画素値を取得し、取得した判別分析法を行って、最適境界値を取得する。そして、始点となる画素21の上方向に隣接する行において、画素の境界を探索する探索範囲を設定する。
【0262】
図12(a)~
図12(c)は、輪郭の候補となる画素の探索範囲に関して説明するための図である。
【0263】
図12(a)は、輪郭の候補となる画素の探索範囲を設定するための情報を管理する探索範囲管理表である。探索範囲管理表は、「輪郭部位」、「探索位置」、「探索範囲」という属性を有している。「輪郭場所」は、第二検出部104が輪郭の検出を行う肺野部の部位を示す属性であり、例えば、「右肺野部外側」、「左肺野部上側」、「右肺野部下側」等の属性値を有する。「探索位置」は、輪郭の候補となる画素を探索する領域が設定される行または列の範囲を示す属性であり、探索する行の範囲は、連続する行のy座標の範囲で表され、探索する列の範囲は、連続する列のx座標の範囲で表される。「探索範囲」は、始点となる画素の位置を基準として、探索範囲を特定する式を示す属性であり、探索範囲が行に設定される部分には、始点となる画素のx座標をX1とした場合の探索範囲のx座標の範囲を表す関係式が属性値として格納されており、探索範囲が列に設定される部分には、始点となる画素のy座標をY1とした場合の探索範囲のy座標の範囲を表す関係式が属性値として格納されている。なお、a~mは定数であり、0以上の整数である。x1、y1等は胸部レントゲン画像内の座標であるとする。なお、x1<x2<x3であり、y1<y2<y3<y4であるとする。
【0264】
図12(b)は、胸部レントゲン画像において検出される一般的な左右の肺野部の輪郭75を示した図であり、
図12(c)は、その右肺野部外側の上部の一部を含む領域70の拡大模式図である。
【0265】
例えば、
図12(c)に示すように、右肺野部外側の上部においては、画素72に対して1ピクセル上の画素(y座標が1ピクセル少ない画素)のx座標は、画素72のx座標よりも大きい値となっている。つまり、画素72を始点となる画素を考えると、画素72の一つ上の行においては、画素72よりもx座標が大きい方向において、輪郭が検出される可能性が高いと考えられる。この傾向は、
図12(c)に示す領域70全体について同じであり、さらには、右肺野部75の外側の上方、例えば、y座標がy1からy2までの範囲においても同じであったとする。このため、右肺野部75の外側の上方においては、始点となる画素の一つ上の行においては、始点となる画素よりもx座標が大きい方向に輪郭が検出される可能性が高いと考えられる。このため、始点となる画素のx座標をX1とした場合において、その一つ上の行に設定する探索範囲のx座標の範囲を、X1-aからX1+b(a<b)の範囲とすることで、始点となる画素の一つ上の行において、始点よりもx座標が大きい方向の探索範囲が、始点よりもx座標が小さい方向の探索範囲より広くなるように設定できる。このように探索範囲を設定するために用意された情報が、
図12(a)の上から1行目の行に示した情報である。
【0266】
以下、探索範囲管理表を用いた探索範囲の設定について説明すると、第二検出部104は、始点となる画素21の1ピクセル上の行のy座標の値y20を取得し、
図2(a)に示した探索範囲管理表において、「輪郭部位」が現在輪郭の検出を行っている部位である「右肺野部外側」であって、「探索位置」が、始点の1ピクセル上のy座標であるy20を含むy座標の範囲であるレコード(行)を検出し、検出したレコードの「探索範囲」の値である「X1-a~X1+b」を取得する。ここでは、一例として、値aが1、値bが5であったとする。そして、始点となる画素21のx座標の値であるx20を、この「X1-a~X1+b」のX1の値として代入することで、始点となる画素21の1ピクセル上の行に設定する探索範囲である「x20-a~x20+b」を取得する。なお、y20およびx20は、特定のx座標値およびy座標値であるとする。これにより、始点となる画素21の一つ上の行には、x座標が「x20-a」から「x20+b」までの範囲の輪郭の候補となる画素の探索範囲が設定される。ここでは、a<bであるため、始点となる画素21よりも右方向の探索範囲が広く設定されていることとなり、通常の輪郭の傾向から、輪郭が存在する可能性が高いと考えられる方向の探索範囲を広く設定して、適切に輪郭の候補を検出することが可能となる。例えば、
図2(b)に示すような探索範囲23が設定される。
【0267】
第二検出部104は、上記で設定した探索範囲において、外側(つまり右肺野部の第一領域とは反対方向)の画素の画素値が最適境界値以上であって、内側(つまり右肺野部の第一領域方向)の画素の画素値が最適境界値より小さくなる隣り合う画素の境界を探索する。
【0268】
境界が探索できた場合、境界に隣接する画素値が最適境界値以上である画素を、輪郭の候補となる画素として採用する。ここでは、上記において説明したように、画素24を輪郭の候補となる画素として採用したとする。第二検出部104は、例えば、この画素の座標を、図示しない格納部に蓄積する。
【0269】
そして、新たに検出された輪郭の候補となる画素24を、上記の始点の画素21に代わる新たな始点の画素として用いて、上記と同様に、上方向に右肺野部の外側の輪郭の候補となる画素を探索する処理を繰り返す。この処理は、例えば、探索領域が胸部レントゲン画像の上端に達するまで行われる。
【0270】
なお、上記で設定した探索範囲において上記のような境界値が検出できなかった場合、設定した探索範囲内の画素の画素値を用いて判別分析法により最適境界値を取得し、取得した最適境界値で、設定した探索範囲において境界を探索し、探索した境界に隣接する最適境界値以上の画素値の画素を輪郭の候補の画素として検出する。
【0271】
また、この探索範囲について取得した最適境界値を利用しても境界が探索できない場合は、現在の始点の画素の一つ上の画素を新たな始点の画素と考えて上記の処理を行う。
【0272】
なお、探索範囲から境界値が検出できない場合とは、例えば、探索範囲内に最適境界値以上の画素がない場合や、探索範囲内に最適境界値未満の画素がない場合や、外側の画素の画素値が最適境界値以上であって、内側の画素の画素値が最適境界値より小さくなる隣り合う画素の境界が複数検出される場合等である。
【0273】
第二検出部104は、右肺野部の外側に検出されたエッジの候補となる複数の画素の、上下方向に直線状につながっている部分の下端の画素を始点の画素として、判別分析法を用いて下方向に順次輪郭の候補となる画素を検出する処理を行う。この処理は、画素の検出方向が上下逆であり、探索範囲を設定する方向が、始点となる画素の下方向である点を除けば、上記と同様の処理により行われる。
【0274】
また、同様にして、左肺野部の第一領域の外側に検出されたエッジの画素を用いて、上記と同様に、左肺野部の外側において輪郭の候補となる領域を検出する処理を行う。この処理は、上記の右肺野部の外側において輪郭の候補となる画素を検出する処理と、左右が逆である点を除けば、上記と同様の処理により行われる。なお、左肺野部の第一領域の外側に検出されたエッジの画素であって、上下方向につながっており、直線状に伸びる画素の、上下端の25%の部分を削除した部分は、
図11(b)の実線21Lで示した部分の画素となり、この画素は左肺野部の外側の輪郭の候補となる画素の一部として採用される。
【0275】
また、第二検出部104は、右肺野部の第一領域の下側に検出されたエッジの画素において、一つのエッジだけが検出されたラインのエッジの画素を読み出し、この画素の一つ左の列において検出された1以上のエッジの候補の画素から、エッジの画素に最も近いエッジの候補の画素を、エッジの画素として決定する。エッジの画素を決定した後は、この決定したエッジの画素の一つ左の列において検出された1以上のエッジの候補の画素から、同様にエッジの画素を決定する。この処理を、左方向の列について繰り返し行う。また、同様の処理を、一つのエッジだけが検出されたラインのエッジの画素の右方向の列についても行う。
【0276】
第二検出部104は、右肺野部の第一領域の下側において上記のように決定したエッジの画素について、左右方向につながっている部分を検出し、この部分を、右肺野部の下側の輪郭の候補の画素として採用する。例えば、これらの画素を、下側の輪郭の候補の画素として図示しない格納部に蓄積する。
【0277】
また、第二検出部104は、上記の左右方向につながっている部分の外側の端(言い換えれば右肺野部の第一領域の外側方向の端)の画素を始点として、判別分析法を用いて外側方向に向かって、輪郭の候補となる画素の検出する処理を行う。
【0278】
具体的には、始点となる画素を中心とした7×7画素について、それぞれの画素値を取得し、取得した判別分析法を行って、最適境界値を取得する。そして、始点となる画素の外側方向に隣接する画素の列において、画素の境界を探索する範囲を設定する。
【0279】
第二検出部104は、まず、始点となる画素の1ピクセル外側の列のx座標の値x30を取得し、
図2(a)に示した探索範囲管理表において、「輪郭部位」が、現在、輪郭の検出を行っている部位である「右肺野部下側」であって、「探索位置」が、始点の1ピクセル外側のx座標であるx30を含むx座標の範囲であるレコード(行)を検出し、検出したレコードの「探索範囲」の値である「Y1-i~Y1+j」を取得する。ここでは、一例として、値iが1、値jが5であったとする。そして、始点となる画素のy座標の値であるy30を、この「Y1-i~Y1+j」のY1の値として代入することで、始点となる画素の1ピクセル外側の行に設定する探索範囲である「y30-i~y30+j」を取得する。なお、y30およびx30は、画像「IMG0001」内のx座標値およびy座標値であるとする。これにより、始点となる画素の一つ外側の行には、y座標が「y30-i」から「y30+j」までの範囲の輪郭の候補となる画素の探索範囲が設定される。ここでは、i<jであるため、始点となる画素よりも下方向の探索範囲が広く設定されていることとなる。
図12(b)に示すように、右肺野部35の下側の輪郭の外側寄りの部分は、外側に向かって下方向に大きくカーブしていることから、右肺野部35の下側においては、外側の輪郭は、始点となる画素よりも下側に検出される可能性が高いと考えられる。このような通常の輪郭の傾向から、輪郭が存在する可能性が高いと考えられる下方向の探索範囲を広く設定して、適切に輪郭の候補を検出することが可能となる。
【0280】
第二検出部104は、上記で設定した探索範囲において、下側(つまり、右肺野部の第一領域とは反対方向)の画素の画素値が最適境界値以上であって、上側(つまり、右肺野部の第一領域方向)の画素の画素値が最適境界値より小さくなる隣り合う画素の境界を探索する。境界が探索できた場合、境界に隣接する画素値が最適境界値以上である画素を、輪郭の候補となる画素として採用する。例えば、この画素の座標を、図示しない格納部に蓄積する。
【0281】
そして、新たに検出された輪郭の候補となる画素を、上記の始点の画素に代わる新たな始点の画素として用いて、上記と同様に、外側方向に右肺野部の外側の輪郭の候補となる画素を探索する処理を繰り返す。この処理は、例えば、探索領域が、上記で右肺野部の外側方向において検出された輪郭の候補の画素に達するまで行われる。
【0282】
なお、上記で設定した探索範囲において上記のような境界値が検出できなかった場合、設定した探索範囲内の画素の画素値を用いて判別分析法により最適境界値を取得し、取得した最適境界値で、設定した探索範囲において境界を探索し、探索した境界に隣接する最適境界値以上の画素値の画素を輪郭の候補の画素として検出する。
【0283】
また、この探索範囲について取得した最適境界値を利用しても境界が探索できない場合は、現在の始点の画素の一つ外側の画素を新たな始点の画素と考えて上記の処理を行う。
【0284】
第二検出部104は、さらに、右肺野部の下側において決定されたエッジの画素の、左右方向につながっている部分の、右肺野部の第一領域の内側方向(つまり、左肺野部の第一領域の方向)の端の画素を始点の画素として、判別分析法を用いて内側方向に順次輪郭の候補となる画素を検出する処理を行う。この処理は、画素の検出方向が左右逆であり、探索範囲を設定する方向が、始点となる画素の内側方向である点を除けば、上記と同様の処理により行われる。
【0285】
また、同様にして、左肺野部の第一領域の下側に検出されたエッジの画素を用いて、上記と同様に、左肺野部の下側において輪郭の候補となる領域を検出する処理を行う。この処理は、上記の右肺野部の下側において輪郭の候補となる画素を検出する処理と、左右が逆である点を除けば、上記と同様の処理により行われる。
【0286】
次に、第二検出部104は、例えば、右肺野部の第一領域の上側においてエッジ検出部103が検出したエッジの画素において、一つのエッジだけが検出されたラインのエッジの画素を読み出し、この画素の一つ左の列において検出された1以上のエッジの候補の画素から、エッジの画素に最も近いエッジの候補の画素を、エッジの画素として決定する。エッジの画素を決定した後は、この決定したエッジの画素の一つ左の列において検出された1以上のエッジの候補の画素から、同様にエッジの画素を決定する。この処理を、左方向の列について繰り返し行う。また、同様の処理を、一つのエッジだけが検出されたラインのエッジの画素の右方向の列についても行う。
【0287】
第二検出部104は、右肺野部の第一領域の上側において上記のように決定したエッジの画素において、左右方向につながっている部分(例えば、エッジの画素が検出された部分のx軸方向の長さ全体の25%の長さを、全体の左右の端から除いた部分)を検出し、検出した部分の外側の端の画素を始点として、右肺野部の第一領域の外側方向に向かって、判別分析法を用いて順次、近接して位置する肺野部の上側の輪郭の候補となる画素を検出していく。この輪郭の候補となる画素を順次検出する処理は、上述したような肺野部の第一領域の下部において外側に向かって輪郭の候補となる画素を順次検出する処理と同様であるため、ここでは詳細な説明は省略する。
【0288】
ここで、右肺野部の第一領域の上側において外側方向に輪郭の候補となる画素を検出する処理において、上記で検出された右肺野部の外側の輪郭の候補となる画素と一致する画素(具体的には、座標が同じ画素)が検出されたとする。
【0289】
例えば、
図11(c)に示すように、右肺野部の外側の輪郭の候補となる複数の画素26Rの上方に、右肺野部の第一領域の上側において外側方向に検出された輪郭の候補となる複数の画素31と一致する複数の画素が検出されたとする。
【0290】
この場合、この一致する複数の画素31のうちの最もy座標が小さい画素(すなわち、最も高い位置に配置された画素)を始点の画素として、右肺野部の第一領域の内側方向に向かって、判別分析法を用いて順次、近接して位置する肺野部の上側の輪郭の候補となる画素を検出していく。この検出は、輪郭の候補となる画素の探索範囲が左肺野部の第一領域に達するまで行われる。そして、この一致する画素を始点として順次検出された画素が、右肺野部の上側の輪郭の候補となる画素として採用され、例えば、これらの複数の画素の座標が図示しない格納部等に蓄積される。この場合、右肺野部の第一領域12Rの上側で検出されたエッジの画素や、このエッジの画素から外側方向に検出された輪郭の候補となる画素は、右肺野部の上側の候補となる画素には採用しない。
【0291】
なお、仮に、右肺野部の上側において外側方向に検出した輪郭の候補となる画素が、右肺野部の外側において検出した輪郭の候補となる画素と一致しなかった場合、上記で検出した右肺野部の第一領域の上側においてエッジ検出部103が検出したエッジの画素のうちの左右方向につながっている部分の内側の端の画素を始点として、右肺野部の第一領域12Rの内側方向に向かって、判別分析法を用いて順次、近接して位置する肺野部の上側の輪郭の候補となる画素を検出していく。そして、上記で検出した右肺野部の第一領域の上側においてエッジ検出部103が検出したエッジの画素のうちの左右方向につながっている部分の画素と、これらの画素の端部から右肺野部の第一領域12Rの外側方向および内側方向に検出した輪郭の候補となる画素とを、右肺野部の上側の輪郭の候補となる画素として採用する。例えば、これらの複数の画素の座標が図示しない格納部等に蓄積される。
【0292】
次に、第二検出部104は、例えば、左肺野部の第一領域の上側においてエッジ検出部103が検出したエッジの画素を利用して、左肺野部の上側の輪郭の候補となる画素を検出する。この処理は、上記の右肺野部の上側の輪郭の候補となる画素を検出する処理において、右肺野部についての処理を、左肺野部についての処理に置き換えた処理と同様の処理である。なお、ここでは、エッジの画素のつながっている部分の外側の端から、外側に向かって検出した輪郭の候補となる画素が、上記で検出された左肺野部の外側の輪郭の候補となる画素と一致しなかったため、エッジの画素のつながっている部分の内側の端から、内側に向かって輪郭の候補となる画素を検出する処理も行われ、これらの画素が、左肺野部の上方の輪郭の候補となる画素として採用される。
【0293】
次に、第二検出部104は、上記のような処理により検出された右肺野部の外側の輪郭の候補となる画素の上端と、左肺野部の外側の輪郭の候補となる画素の上端とのうちの高さが低い方から予め決められた距離(例えば3ピクセル)だけ低い高さの行において、右肺野部の外側に検出された輪郭の候補となる画素と、左肺野部の外側の輪郭の候補となる画素との間の画素の画素値の分布を取得する。ここでは、右肺野部の外側の輪郭の候補となる画素の上端は、右肺野部の外側の輪郭の候補となる画素が右肺野部の上側の輪郭の候補となる画素とが交わる部分とする。交わらない場合は、最も高さの高い画素を上端とする。また、左肺野部の外側の輪郭の候補となる画素の上端は、左肺野部の上側の輪郭の候補となる画素とが交わる部分とする。なお、右肺野部の外側の輪郭の候補となる1以上の画素が、右肺野部の上側の輪郭の候補となる1以上の画素と一致する場合、ここでは、この一致するがその最も高さが低い画素を、上端の画素とする。かかることは、左肺野部についても同様である。
【0294】
図13(a)~
図13(c)は、左肺野部と右肺野部の内側の輪郭の候補を検出する処理を説明するための図である。
【0295】
ここでは、例えば、
図13(a)に示すように、右肺野部の外側の輪郭の候補となる画素の上端32Rが、左肺野部の外側の輪郭の候補となる画素の上端32Lよりも低かった(例えば、y座標値が大きかった)とすると、第二検出部104は、この上端32Rよりも、3ピクセル低い高さの列の、左肺野部の外側の輪郭と、右肺野部の外側の輪郭で挟まれた領域33において、
図13(b)に示すような画素値の分布を取得したとする。
【0296】
取得した画素値の分布から、画素値の平均値を取得し、
図13(b)に示した画素値の分布において、画素値が平均値以上である画素と、平均値未満である画素とをそれぞれ検出する。これにより、
図13(c)に示すように、平均値以上である画素が連続する領域13a~13cと、平均値未満である画素が連続する領域14aおよび14bが検出される。
【0297】
第二検出部104は、検出した平均値以上である画素が連続する領域13a~13cのうちの胸部レントゲン画像の左側の領域13aを右肺野部に相当する領域と判断し、この領域13aに対して、右肺野部の内側方向に隣接する画素値が平均値未満である領域14aの画素において、上記で右肺野部の上側の輪郭の候補として検出された画素を検出し、検出した画素を始点として、下方向に向かって判別分析法を用いて右肺野部の内側の輪郭の候補となる画素を検出する。この処理は、左右の肺野部において、エッジの画素から下方向に輪郭の候補となる画素を検出する処理と同様に行われる。この処理は、例えば、右肺野部の下側の輪郭の候補として検出された画素に探索範囲が達するまで行われる。これにより検出された画素を、右肺野部の内側の輪郭の候補となる画素として採用し、これらの画素の座標等を、図示しない格納部等に蓄積する。
【0298】
同様に、第二検出部104は、検出した平均値以上である画素が連続する領域13a~13cのうちの、胸部レントゲン画像の右側の領域13cを、左肺野部に相当する領域と判断し、この領域13cに対して、右肺野部の内側方向に隣接する画素値が平均値未満である領域14bの画素において、上記で左肺野部の上側の輪郭の候補として検出された画素を検出し、検出した画素を始点として、上記と同様に、下方向に向かって判別分析法を用いて左肺野部の内側の輪郭の候補となる画素を検出する。
【0299】
図14(a)および
図14(b)は、左肺野部の内側の下方および下側の内側方向の輪郭候補の画素を再検出する処理を説明するための図である。なお、この図の画像は、画像「IMEG0001」とは異なる画像であるとする。
【0300】
ここで、例えば、
図14(a)に示すように、左肺野部の内側に、心臓が白く写ること等により、左肺野部の内側の輪郭の候補が、この心臓の輪郭を検出したりすることによって、外側に大きく曲がってしまう場合がある。この場合、この部分の輪郭の候補となる画素を再検出することが必要となる。
【0301】
第二検出部104は、領域14b内の画素から下方向に輪郭の候補として検出した画素42において、検出された輪郭の候補となる画素のうちの、最もx座標が小さい画素のx座標の値と、最もx座標が大きい画素のx座標の値との差が、しきい値以上であるか判断する。しきい値は、ここでは、10ピクセルであるとする。ここではしきい値以上であったとする。
【0302】
しきい値以上である場合、
図14(a)に示すように、第二検出部104は、上記で検出した左肺野部の内側の輪郭の候補の画素のうちの、下端から予め決められた画素だけ上方の高さの画素として、5ピクセル上方の画素34を検出し、矢印44が示す内側方向、すなわち、右肺野部側に向かって、横方向に順番に画素値を検出して画素値が上昇する境界を検出する。そして、検出した境界の内側(すなわち右肺野部側)に接する画素を始点として、上下方向において、それぞれ、上記と同様に判別分析法を用いて順次、近接して位置する肺野部の輪郭の候補となる画素を検出して、左肺野部の内側の下端部側の輪郭の候補となる画素を検出する。上方向への検出は、例えば、探索範囲を設定するために順次更新される始点が、当初に検出した左肺野部の内側の輪郭の候補となる画素に交わった時点で終了する。下方向への検索は、例えば、探索範囲を設定するために順次更新される始点の位置が、上記で検出された左肺野部の下側の輪郭の候補となる画素のもっと低い位置の画素と同じ高さとなった時点で終了する。
【0303】
また、第二検出部104は、画素34から矢印45が示す下方向に向かって、画素値が上昇する境界36を検出する。そして、境界36が検出できた場合、画素34と、検出した境界36との間に、画素値が、上または下方向に隣り合う画素に対して予め決められたしきい値以上減少している画素があるか判断する。また、検出した境界36に隣接する画素に対して、左肺野部の外側となる方向において、上記と同様に画素値が左または右に隣り合う画素に対して予め決められたしきい値以上減少している部分があるかどうか判断する。例えば、256階調の胸部透過画像において、11階調以上の差が検出される場合に、空気を検出したと判断する。
【0304】
例えば、
図14(b)に示すような、上記の画像「IMG0001」とは異なる胸部レントゲン画像のように、左肺野部の直下に、胃の中の空気である胃泡35がある場合、この胃泡35の下側の輪郭が、上記の境界として検出される場合がある。このため、上記のように画素値がしきい値以上減少している部分を検出することで、
図14(b)に示した胃泡35の輪郭を検出して、検出した境界が、胃泡35の境界であると判断することができる。
【0305】
仮に、いずれにも画素値がしきい値以上減少している部分がなければ、第二検出部104は、この境界の下方に隣接する画素を、左右方向に輪郭の候補となる画素を検出する始点に設定するが、ここでは、画素34と検出した境界との間、および境界の外側の少なくとも一方に、画素値がしきい値以上減少している部分があったとする。第二検出部104は、検出した境界が、左肺野部の下側の輪郭ではなく、胃泡の輪郭を検出したと判断して、さらに、検出された境界よりも下方において、画素値が上昇する境界を検出する。そして、検出した境界と上記で検出された境界との間、および境界の外側に、画素値が、上記と同様にしきい値以上減少している部分があるか判断する。ここでは、いずれにも、しきい値以上減少している部分が検出できなかったとすると、第二検出部104は、この境界の下方に隣接する画素を始点として、判別分析法を用いて、左右方向に、左肺野部の下側の内側近傍の輪郭の検出を行う。なお、左肺野部の内側方向への輪郭の候補となる画素の検出は、例えば、探索範囲を設定するために順次更新される始点が、上記で検出した右肺野部の内側の輪郭の候補となる画素に交わった時点で終了する。外側方向への検出は、例えば、探索範囲を設定するために順次更新される始点の位置が、当初に検出された左肺野部の下側の輪郭の候補となる画素と交わった時点で終了する。なお、画素値がしきい値以上減少している部分があれば、さらに、それよりも下方において、画素値が上昇する境界を検出する処理等を、直前の境界との間、および検出した境界の外側において、しきい値以上画素値が減少している部分が検出されなくなるまで繰り返す。
【0306】
このようにして再検索された輪郭の候補となる画素を、これらの画素に対して左肺野部の第一領域側に位置する当初に検索された輪郭の候補となる画素の代わりに採用し、これらの当初に検索された輪郭の候補となる画素の座標等に代えて、再検索された輪郭の候補となる画素の座標等を図示しない格納部等に蓄積する。
【0307】
なお、領域14b内の画素から下方向に輪郭の候補として検出した画素において、領域14b内の始点となる画素のx座標と、検出された輪郭の候補となる画素の下端のx座標との差が、しきい値以上でない場合、領域14b内の画素から下方向に輪郭の候補として検出された画素を、左肺野部の内側の輪郭の候補となる画素として採用し、これらの画素の座標等を、図示しない格納部等に蓄積する。
【0308】
上記の画像「IMG0001」においては、領域14b内の画素から下方向に輪郭の候補として検出した画素において、領域14b内の始点となる画素のx座標と、検出された輪郭の候補となる画素の下端のx座標との差が、しきい値以上でなかったとし、この領域14b内の画素から下方向に輪郭の候補として検出された画素を、左肺野部の内側の輪郭の候補となる画素として採用されたとする。
【0309】
図15は、上記の処理により検出された輪郭の候補となる複数の画素27を示す図である。
図15において輪郭の候補となる画素27は、実線で表されている。
【0310】
上記のような処理により、
図15に示すように、左右の肺野部の外側、内側、上側、および下側の輪郭の候補となる画素を検出することができる。
【0311】
ここで、検出された輪郭の候補となる画素から、最も近い画素からの距離がしきい値以上である画素の輪郭の候補となる画素から除去する。また、これらの輪郭の候補となる画素において、画素が欠損していて隣の画素とつながっていない部分については、最も近い画素同士の座標から、欠損している部分を補間する画素の座標を算出する。
【0312】
例えば、
図16(a)に示した部分拡大図のように、輪郭の候補となる画素66と画素67とがつながっていない場合、画素66と画素67との座標等を用いて、線形補間等を行うことにより、
図16(b)に示すように、この画素66と画素67との間に、輪郭の候補となる画素68a~68cを補間する。
【0313】
さらに、左右の肺野部についてそれぞれ検出した外側の輪郭の候補となる画素の上下端、上側の輪郭の候補となる画素の左右端、内側の輪郭の候補となる画素の上下端、および下側の輪郭の候補となる画素の左右端についても、必要に応じて、最も近い端部同士の間を画素で補間してつなぐようにする。また、左右の肺野部の輪郭として、少なくとも一部に2重の輪郭が検出された場合には、周囲の境界の画素値に近いものを輪郭の画素として採用する。
【0314】
これにより、
図17(a)に示すように、左右の肺野部の輪郭39を抽出することができ、
図17(b)に示すように、輪郭でそれぞれ囲まれた左の肺野部の領域40Rおよび右の肺野部の領域40Lを検出することができる。
【0315】
さらに、上記で検出した左右の肺野部の領域40Rおよび40Lにおいて、右肋骨横隔膜角41Rおよび左肋骨横隔膜角41Lの近傍部分の、左右の肺野部の外側の輪郭の下端と、下側の輪郭の外側の端の画素をそれぞれ中心として、予め決められた領域の画素について判別分析法を行って最適境界値をそれぞれ取得し、取得した最適境界値以下の画素値を有する画素であって、それぞれの中心の画素の周辺の画素、例えば、それぞれの中心から予め決められた距離にある画素や、それぞれを中心とした所定の形状およびサイズを有する領域の画素を、それぞれの肺野部に加える。
【0316】
これにより、仮に、
図18(a)に示す画像のように、右肋骨横隔膜角41Rおよび左肋骨横隔膜角41Lの近傍部分が、丸く検出されていたとしても、
図18(b)に示す画像のように、下方向に尖った左右の肺野部の領域を検出することができる。なお、
図18の画像は、画像「IMR0001」とは異なる画像であるとする。
【0317】
そして、出力部105は、第二検出部104が検出した左右の肺野部の領域40Rおよび40Lを示す情報、例えば、それぞれの輪郭を示す情報や、それぞれの領域内の画素の座標の情報等を出力する。例えば、図示しない格納部等に、胸部レントゲン画像のファイル名「IMG0001」と対応付けて、検出した肺野部の領域を示す情報を蓄積する。
【0318】
なお、画像格納部101に格納されている他の胸部レントゲン画像について肺野部の領域を示す情報を取得する場合、他の胸部レントゲン画像について、上記の処理を繰り返すようにすればよい。
【0319】
以上、本実施の形態によれば、胸部透過画像において、肺野部を適切に検出することができる。
【0320】
なお、上記実施の形態においては、第二検出部104が、輪郭の候補となる画素を検出する際の最適境界値を取得する処理として、判別分析法を用いたが、最適境界値を取得する処理は、領域内の複数の画素から、統計処理等を利用して、2値化のための境界値を取得可能な処理であれば、判別分析法に限定されるものではなく、例えば、Pタイル法、モード法等を用いてもよい。ただし、精度良く輪郭を検出するためには、判別分析法を用いることが最も好ましい。
【0321】
また、上記実施の形態においては、第一検出部102が、始点となる画素から、Watershedアルゴリズムを用いて、第一領域を検出したが、第一領域を検出する処理は、しきい値を取得して第一領域を検出可能な処理であれば、Watershedアルゴリズムに限定されるものではなく、例えば、Pタイル法、モード法や、判別分析法等を用いてもよい。ただし精度や速度を考えた場合、Watershedアルゴリズムを用いることが好ましい。
【0322】
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【0323】
また、上記各実施の形態では、画像処理装置がスタンドアロンである場合について説明したが、画像処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
【0324】
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
【0325】
なお、上記各実施の形態における画像処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、胸部透過画像が格納される画像格納部にアクセス可能なコンピュータを、胸部透過画像において、画素値のしきい値を利用して、連続した画素を有する左右の肺野部の候補となる領域である第一領域を検出する第一検出部と、第一領域から離れる方向において画素値が増加しているエッジを検出するエッジ検出部と、エッジ検出部が検出したエッジの画素を始点とし、始点となる画素近傍の予め決められた領域において取得したこの領域を2値化する境界値である最適境界値を用いて、始点となる画素の近傍に、肺野部の輪郭の候補となる画素を検出して、肺野部を検出する第二検出部と、肺野部の情報を出力する出力部と、して機能させるためのプログラムである。
【0326】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
【0327】
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0328】
図19は、上記プログラムを実行して、上記実施の形態による画像処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
【0329】
図19において、コンピュータシステム900は、CD-ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
【0330】
図20は、コンピュータシステム900の内部構成を示す図である。
図20において、コンピュータ901は、CD-ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915と、を備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
【0331】
コンピュータシステム900に、上記実施の形態による画像処理装置等の機能を実行させるプログラムは、CD-ROM921に記憶されて、CD-ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD-ROM921、またはネットワークから直接、ロードされてもよい。
【0332】
プログラムは、コンピュータ901に、上記実施の形態による画像処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
【0333】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0334】
以上のように、本発明にかかる画像処理装置等は、胸部透過画像を処理する装置等として適しており、特に、胸部透過画像から肺野部を検出する処理を行う装置等として有用である。
【符号の説明】
【0335】
1 画像処理装置
101 画像格納部
102 第一検出部
103 エッジ検出部
104 第二検出部
105 出力部