(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-02-14
(45)【発行日】2025-02-25
(54)【発明の名称】頭部3次元モデル生成システム、プログラム及び頭部3次元モデル生成方法
(51)【国際特許分類】
A61B 5/107 20060101AFI20250217BHJP
G06T 7/55 20170101ALI20250217BHJP
【FI】
A61B5/107 110
G06T7/55
(21)【出願番号】P 2024079758
(22)【出願日】2024-05-15
【審査請求日】2024-06-12
(73)【特許権者】
【識別番号】521407050
【氏名又は名称】株式会社Berry
(74)【代理人】
【識別番号】100145713
【氏名又は名称】加藤 竜太
(74)【代理人】
【識別番号】100165157
【氏名又は名称】芝 哲央
(72)【発明者】
【氏名】中野 裕士
(72)【発明者】
【氏名】名越 優太郎
(72)【発明者】
【氏名】姜 凱元
【審査官】磯野 光司
(56)【参考文献】
【文献】米国特許出願公開第2022/0198659(US,A1)
【文献】中国特許出願公開第113850299(CN,A)
【文献】中国特許出願公開第109978920(CN,A)
【文献】特開2022-067694(JP,A)
【文献】特開2020-149140(JP,A)
【文献】BARBERO-GARCIA, Ines et al.,Fully automatic smartphone-based photogrammetric 3D modelling of infant's heads for cranial deformation analysis,ISPRS Journal of Photogrammetry and Remote Sensing,2020年08月,Vol.166,pp.268-277,ISSN: 0924-2716, DOI: 10.1016/j.isprsjprs.2020.06.013
(58)【調査した分野】(Int.Cl.,DB名)
A61B 5/107
G06T 1/00-19/20
JSTPlus/JMEDPlus/JST7580(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
対象者の頭部を撮影する撮影部と、該撮影部によって撮影された前記頭部の画像を処理する処理部と、を有する電子端末と、前記電子端末と通信可能なサーバと、を備える頭部3次元モデル生成システムであって、
前記電子端末の前記処理部は、
前記撮影部によってそれぞれ異なる方向から撮影された前記頭部の複数の画像を取得する画像取得部と、
前記画像取得部によって取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理部と、を有し、
前記サーバは、
前記フィルタリング処理部によって前記所定の条件を満たすと判定された複数の適合画像に基づいて、前記頭部の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成部と、を有
し、
前記撮影部は、シートによって覆われた状態の前記頭部を撮影し、
前記シートにおける前記頭部を覆う部分の表面には、複数のマーカが間隔を空けて形成され、
前記画像取得部は、
撮影された前記頭部の画像上における前記頭部全体が画像の中心から所定の範囲である第1検出領域内に位置し、かつ前記撮影された前記頭部の画像上における少なくとも1つのマーカが画像の中心から所定の範囲であり、前記第1検出領域よりも小さい第2検出領域内に位置するか否かを判定し、
前記マーカが画像上の前記第2検出領域内に位置すると判定した場合、前記第2検出領域内に存在する前記マーカを特定されたマーカとして特定し、その画像を特定されたマーカに対応する画像として取得し、
複数の前記マーカが前記第2検出領域内に存在する場合、画像の中心に最も近い前記マーカを、前記特定されたマーカとして取得し、
前記フィルタリング処理部は、前記特定されたマーカに対応する画像に対して適合画像であるか否かを判定する処理を実行する頭部3次元モデル生成システム。
【請求項2】
前記所定の条件は、画像のボケの程度に関する条件を含む請求項1に記載の頭部3次元モデル生成システム。
【請求項3】
前記フィルタリング処理部は、
前記画像取得部によって取得された画像をフーリエ変換して変換データを取得し、
変換された前記変換データにおける低空間周波数成分を除外した空間周波数の平均値に基づいて、前記画像のボケの程度を特定する請求項2に記載の頭部3次元モデル生成システム。
【請求項4】
前記所定の条件は、前記撮影部による前記頭部の撮影時における前記撮影部と前記頭部との間の距離に関する条件を含む請求項1に記載の頭部3次元モデル生成システム。
【請求項5】
前記フィルタリング処理部は、
前記マーカに対応する画像上での前記マーカの位置を示す位置情報と、前記撮影部に設定されている焦点距離及びイメージセンサのサイズを含むパラメータ情報と、に基づいて、前記撮影部と前記マーカとの間の距離を特定する請求項4に記載の頭部3次元モデル生成システム。
【請求項6】
前記所定の条件は、前記撮影部による前記頭部の撮影時における前記頭部に対する前記撮影部の向きに関する条件を含む請求項1に記載の頭部3次元モデル生成システム。
【請求項7】
前記フィルタリング処理部は、
前記マーカに対応する画像上での前記マーカの位置を示す位置情報と、前記撮影部に設定されている焦点距離及びイメージセンサのサイズを含むパラメータ情報と、に基づいて、前記頭部に対する前記撮影部の向きを特定する請求項6に記載の頭部3次元モデル生成システム。
【請求項8】
前記マーカは、前記頭部における位置情報と関連付けられた複数の識別マーカ
であり、
前記シートにおける前記頭部を覆う部分の表面には、複数の前記識別マーカとともに、複数の色柄が形成され
、
前記3次元モデル生成部は、予め定められた全ての前記識別マーカに対応する画像の前記適合画像の前記識別マーカと関連付けられた前記位置情報と前記色柄とに基づいて、前記3次元モデルを生成する請求項1に記載の頭部3次元モデル生成システム。
【請求項9】
前記シートの表面に形成される全ての前記色柄は、それぞれ異なる請求項8に記載の頭部3次元モデル生成システム。
【請求項10】
前記所定の条件は、前記撮影部による前記頭部の撮影時における前記撮影部と前記頭部との間の距離に関する条件と、前記撮影部による前記頭部の撮影時における前記頭部に対する前記撮影部の向きに関する条件と、を含む請求項1に記載の頭部3次元モデル生成システム。
【請求項11】
前記所定の条件は、前記画像のボケの程度に関する条件を更に含む請求項10に記載の頭部3次元モデル生成システム。
【請求項12】
前記フィルタリング処理部は、前記画像取得部によって取得された画像が前記ボケの程度に関する条件を満たすか否かを判定した後に、前記ボケの程度に関する条件を満たすと判定された画像が前記撮影部による前記頭部の撮影時における前記撮影部と前記頭部との間の距離に関する条件と、前記撮影部による前記頭部の撮影時における前記頭部に対する前記撮影部の向きに関する条件と、を満たすか否かを判定する請求項11に記載の頭部3次元モデル生成システム。
【請求項13】
前記サーバは、前記適合画像上の対象者の頭部を含む検出対象画像を検出し、前記適合画像上における前記検出対象画像以外の情報を除去する背景除去部を更に有し、
前記3次元モデル生成部は、前記背景除去部によって前記検出対象画像以外の情報が除去された複数の前記適合画像に基づいて、前記頭部の立体的な外形形状を示す3次元モデルを生成する請求項1に記載の頭部3次元モデル生成システム。
【請求項14】
それぞれ異なる方向から撮影された対象者の頭部の複数の画像を取得する画像取得工程と、
前記画像取得工程で取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理工程と、
前記フィルタリング処理工程で前記所定の条件を満たすと判定された複数の適合画像に基づいて、前記頭部の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成工程と、
をコンピュータに実行させるプログラム
であり、
前記画像取得工程では、
シートによって覆われた状態で撮影された前記頭部の画像が取得され、
前記シートにおける前記頭部を覆う部分の表面には、複数のマーカが間隔を空けて形成され、
撮影された前記頭部の画像上における前記頭部全体が画像の中心から所定の範囲である第1検出領域内に位置し、かつ前記撮影された前記頭部の画像上における少なくとも1つのマーカが画像の中心から所定の範囲であり、前記第1検出領域よりも小さい第2検出領域内に位置するか否かを判定し、
前記マーカが画像上の前記第2検出領域内に位置すると判定した場合、前記第2検出領域内に存在する前記マーカを特定されたマーカとして特定し、その画像を特定されたマーカに対応する画像として取得し、
複数の前記マーカが前記第2検出領域内に存在する場合、画像の中心に最も近い前記マーカを、前記特定されたマーカとして取得し、
前記フィルタリング処理工程では、前記特定されたマーカに対応する画像に対して適合画像であるか否かを判定する処理をコンピュータに実行させるプログラム。
【請求項15】
対象者の頭部の複数の画像に基づいて、前記頭部の立体的な外形形状を示す3次元モデルを生成するサーバとともに、前記3次元モデルを生成するための3次元モデル生成処理をコンピュータに実行させるプログラムであって、
前記3次元モデル生成処理は、
それぞれ異なる方向から撮影された対象者の頭部の複数の画像を取得する画像取得工程と、
前記画像取得工程で取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理工程と、
前記フィルタリング処理工程で所定の条件を満たすと判定された複数の適合画像を前記サーバに送信する送信工程と、を含
み、
前記画像取得工程では、
シートによって覆われた状態で撮影された前記頭部の画像が取得され、
前記シートにおける前記頭部を覆う部分の表面には、複数のマーカが間隔を空けて形成され、
撮影された前記頭部の画像上における前記頭部全体が画像の中心から所定の範囲である第1検出領域内に位置し、かつ前記撮影された前記頭部の画像上における少なくとも1つのマーカが画像の中心から所定の範囲であり、前記第1検出領域よりも小さい第2検出領域内に位置するか否かを判定し、
前記マーカが画像上の前記第2検出領域内に位置すると判定した場合、前記第2検出領域内に存在する前記マーカを特定されたマーカとして特定し、その画像を特定されたマーカに対応する画像として取得し、
複数の前記マーカが前記第2検出領域内に存在する場合、画像の中心に最も近い前記マーカを、前記特定されたマーカとして取得し、
前記フィルタリング処理工程では、前記特定されたマーカに対応する画像に対して適合画像であるか否かを判定するプログラム。
【請求項16】
コンピュータが実行する3次元モデル生成方法であって、
それぞれ異なる方向から撮影された対象者の頭部の複数の画像を取得する画像取得工程と、
前記画像取得工程で取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理工程と、
前記フィルタリング処理工程で前記所定の条件を満たすと判定された複数の適合画像に基づいて、前記頭部の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成工程と、を含
み、
前記画像取得工程では、
シートによって覆われた状態で撮影された前記頭部の画像が取得され、
前記シートにおける前記頭部を覆う部分の表面には、複数のマーカが間隔を空けて形成され、
撮影された前記頭部の画像上における前記頭部全体が画像の中心から所定の範囲である第1検出領域内に位置し、かつ前記撮影された前記頭部の画像上における少なくとも1つのマーカが画像の中心から所定の範囲であり、前記第1検出領域よりも小さい第2検出領域内に位置するか否かを判定し、
前記マーカが画像上の前記第2検出領域内に位置すると判定した場合、前記第2検出領域内に存在する前記マーカを特定されたマーカとして特定し、その画像を特定されたマーカに対応する画像として取得し、
複数の前記マーカが前記第2検出領域内に存在する場合、画像の中心に最も近い前記マーカを、前記特定されたマーカとして取得し、
前記フィルタリング処理工程では、前記特定されたマーカに対応する画像に対して適合画像であるか否かを判定する3次元モデル生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、頭部3次元モデル生成システム、プログラム及び頭部3次元モデル生成方法に関する。
【背景技術】
【0002】
従来、斜頭等の治療を要する頭蓋変形が生じた乳幼児等の対象者に対し、頭部の形状を矯正する頭蓋形状矯正ヘルメットが知られている。この種の頭蓋形状矯正ヘルメットが記載されるものとして例えば特許文献1がある。
【0003】
特許文献1には、乳児の頭部の外形に基づいて設計され、該頭部を押圧して頭蓋骨形状の矯正を行うための外装部材と、該外装部材の内面に設けられ、該外装部材による頭部への刺激を緩衝するための内装部材とを備える乳児用頭蓋骨矯正ヘルメットについて記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、頭蓋形状矯正ヘルメットは、例えば、対象者の頭部をそれぞれ異なる方向から撮影された複数の画像から頭部の立体的な外形形状を示す3次元モデルを生成し、生成された3次元モデルに基づいて製造される。この場合、正確な3次元モデルを生成するために画像から頭部の外形形状に関する正確な情報を読み取ることが重要である。しかし、被写体が乳幼児等である場合、画像の撮影時に乳幼児が動き、撮影した画像から頭部の外形形状に関する正確な情報を読み取ることが難しい場合がある。
【0006】
本発明は、静止させた状態を保つことが難しい対象者の頭部の3次元モデルを生成する場合であっても、正確な3次元モデルを生成できる頭部3次元モデル生成システム、プログラム及び頭部3次元モデル生成方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
頭部3次元モデル生成システムは、対象者の頭部を撮影する撮影部と、該撮影部によって撮影された画像を処理する処理部と、を有する電子端末と、前記電子端末と通信可能なサーバと、を備える頭部3次元モデル生成システムであって、前記電子端末の前記処理部は、前記撮影部によってそれぞれ異なる方向から撮影された前記頭部の複数の画像を取得する画像取得部と、前記画像取得部によって取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理部と、を有し、前記サーバは、前記フィルタリング処理部によって前記所定の条件を満たすと判定された複数の適合画像に基づいて、前記頭部の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成部と、を有する。
【発明の効果】
【0008】
本発明によれば、静止させた状態を保つことが難しい対象者の頭部の3次元モデルを生成する場合であっても、正確な3次元モデルを生成できる。
【図面の簡単な説明】
【0009】
【
図1】本発明の一実施形態に係る頭部3次元モデル生成システムを示す模式図である。
【
図2】本発明の一実施形態に係る頭部3次元モデル生成システムにおけるサーバのハードウェアの構成を示すブロック図である。
【
図3】本発明の一実施形態に係る頭部3次元モデル生成システムにおける電子端末のハードウェアの構成を示すブロック図である。
【
図4】頭部の撮影時における電子端末の表示部を示す模式図である。
【
図5】
図4に示す状態で電子端末の撮影部によって撮影された画像の一例を示す模式図である。
【
図6】本発明の一実施形態に係る頭部3次元モデル生成システムにおける電子端末の機能ブロックの構成を示すブロック図である。
【
図7A】被写体が静止した状態であり、ピントが合っている画像を示す図である。
【
図7B】
図7Aに示す画像をフーリエ変換して得られた変換データを示す図である。
【
図8A】被写体が静止した状態であるが、ピントが合っていない画像を示す図である。
【
図8B】
図8Aに示す画像をフーリエ変換して得られた変換データを示す図である。
【
図9A】被写体が動いている状態で撮影された画像を示す図である。
【
図9B】
図9Aに示す画像をフーリエ変換して得られた変換データを示す図である。
【
図10】頭部と撮影部との距離及び角度に関する条件についての説明図である。
【
図11】頭部と撮影部との距離に関する条件に付いての説明図である。
【
図12】本発明の一実施形態に係る頭部3次元モデル生成システムにおけるサーバの機能ブロックの構成を示すブロック図である。
【
図13】本発明の一実施形態に係る電子端末によって実行される3次元モデル生成処理の一例を示すフローチャートである。
【
図14】本発明の一実施形態に係るサーバによって実行される3次元モデル生成処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について、図面を参照しながら説明する。
図1は、本実施形態の頭部3次元モデル生成システム1と乳幼児4を示す模式図である。
【0011】
本実施形態に係る頭部3次元モデル生成システム1は、乳児及び幼児を含む乳幼児4等の対象者の頭部41の立体的な外形形状を示す3次元モデルを生成するためのシステムである。本実施形態では、頭蓋形状矯正ヘルメットを作成する場合に用いる3次元モデルの生成を例に説明する。
【0012】
頭蓋形状矯正ヘルメットについて説明する。頭蓋形状矯正ヘルメットとは、対象者としての乳幼児4の頭部41に被せることにより、頭蓋の成長に伴って頭蓋の形状が矯正されるように変形を促すものである。対象となる乳幼児4としては、例えば斜頭、短頭、長頭等の治療を要する頭蓋変形が生じた乳児や幼児等が挙げられる。斜頭とは、頭蓋が左右対称ではなく片側に傾斜している変形形状である。短頭とは、頭蓋の前後方向寸法が著しく短い変形形状である。長頭とは、頭蓋の前後方向寸法が著しく長い変形形状である。なお、対象者としては、特に限定されず、乳幼児以外であってもよく、小児であってもよく、成人であってもよい。
【0013】
頭蓋形状矯正ヘルメットは、対象者それぞれの治療目標となる理想の頭部41の3次元モデル(以下、理想3次元モデルという)に基づいて設計される。頭部41の理想3次元モデルは、個々の乳幼児4の頭部41の画像等の外形形状に関するデータを取得し、取得したデータに用いて生成された実際の頭部41の3次元モデル(以下、単に3次元モデルという)に基づいて作成される。このため、頭蓋形状矯正ヘルメットの作成において、乳幼児4の頭部41の外形形状に関する正確なデータを取得し、正確な3次元モデルを生成することが重要である。
【0014】
頭部3次元モデル生成システム1について説明する。頭部3次元モデル生成システム1は、
図1に示すように、電子端末2と、該電子端末2と通信可能なサーバ3と、を備える。
【0015】
電子端末2は、それぞれ異なる方向から撮影された頭部41の複数の画像を取得し、3次元モデルを生成するための前処理を行う装置である。電子端末2は、画像を撮影する機能及び通信機能を有している機器であれば特に限定されない。電子端末2としては、例えばスマートフォンやタブレット等が挙げられる。
【0016】
サーバ3は、電子端末2から受信した複数の画像に基づいて、3次元モデルを生成する装置である。
【0017】
サーバ3のハードウェアの構成の一例について
図2を参照しながら説明する。
図2は、頭部3次元モデル生成システム1におけるサーバ3のハードウェアの構成を示すブロック図である。
【0018】
サーバ3は、
図2に示すように、コンピュータ33と、記憶部31と、通信部32と、を含む。そして、バス334等が、これら各部を接続する。
【0019】
コンピュータ33は、プロセッサ331と、主記憶装置としてのROM(read-only memory)332及びRAM(random-access memory)333と、を含む。プロセッサ331は、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサ331は、これらのうちの複数を組み合わせたものである。また、プロセッサ331は、これらにハードウェアアクセラレーターなどを組み合わせたものであっても良い。プロセッサ331は、ROM332、RAM333又は記憶部31の一部である補助記憶装置などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、サーバ3の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサ331の回路内に組み込まれていても良い。
【0020】
記憶部31は、ハードウェア群をサーバ3として機能させるための各種プログラム、及び各種データなどの記憶領域であり、ROM、RAM、フラッシュメモリ、半導体ドライブ(SSD)又はハードディスクドライブ(HDD)などで構成することができる。具体的には、記憶部31には、本実施形態の各機能をコンピュータ33に実行させるためのプログラム、電子端末2から取得した画像、生成した頭部41の3次元モデル等が記憶される。
【0021】
通信部32は、サーバ3がネットワークを介して電子端末2や他の装置と通信を行うための処理を実行する。本実施形態の通信部32は、電子端末2とサーバ3との間で無線通信可能に構成される。
【0022】
電子端末2のハードウェアの構成の一例について
図3を参照しながら説明する。
図3は、頭部3次元モデル生成システム1における電子端末2のハードウェアの構成を示すブロック図である。
【0023】
電子端末2は、
図3に示すように、コンピュータ26と、撮影部21と、記憶部22と、通信部23と、入力部24と、表示部25と、を含む。そして、バス264等が、これら各部を接続する。
【0024】
コンピュータ26は、プロセッサ261と、主記憶装置としてのROM(read-only memory)262及びRAM(random-access memory)263と、を含む。プロセッサ261は、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサ261は、これらのうちの複数を組み合わせたものである。また、プロセッサ261は、これらにハードウェアアクセラレーターなどを組み合わせたものであっても良い。プロセッサ261は、ROM262、RAM263又は記憶部22の一部である補助記憶装置などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、電子端末2の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサの回路内に組み込まれていても良い。
【0025】
撮影部21は、被写体を撮影する装置であり、レンズ211と、調整機構212と、イメージセンサ213と、A/D変換部214と、を主に備える。
【0026】
レンズ211は、被写体を撮影するために、光を集光するレンズで構成される。レンズ211としては、例えばイメージセンサ213の受光面に被写体像を結像させるレンズや焦点距離を一定の範囲で自在に変化させるレンズ等が挙げられる。
【0027】
調整機構212は、露光時間、絞り、ISO感度、焦点距離等を調整するための機構である。
【0028】
イメージセンサ213は、行列のマトリックス状に各画素を二次元配置した受光面に被写体を結像させ、電気信号に変換する。イメージセンサ213は、例えば、CMOSイメージセンサであってもよく、CCDイメージセンサであってもよい。
【0029】
A/D変換部214は、イメージセンサ213から読み出された電気信号をデジタル信号に変換する。A/D変換部214によって変換されたデジタル信号によって画像が形成される。撮影部21によって撮像された画像は、コンピュータ26や記憶部22、表示部25等に送信される。
【0030】
記憶部22は、ハードウェア群を電子端末2として機能させるための各種プログラム、及び各種データなどの記憶領域であり、ROM、RAM、フラッシュメモリ、半導体ドライブ(SSD)又はハードディスクドライブ(HDD)などで構成することができる。具体的には、記憶部22には、本実施形態の各機能をコンピュータ26に実行させるためのプログラム、撮影部21のイメージセンサ213のサイズ、後述する識別マーカ52のサイズ及び形状、画像に対する後述する品質基準等が記憶される。
【0031】
通信部23は、電子端末2がサーバ3や他の装置と通信を行うための処理を実行する。本実施形態の通信部23は、電子端末2とサーバ3との間で無線通信可能に構成される。
【0032】
入力部24は、電気的にコンピュータ26に接続されるユーザインターフェースである。入力部24は、ボタンやディスプレイ27によって構成される。ディスプレイ27は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)や有機EL(Electro-Luminescent)ディスプレイで構成されており、ディスプレイ27の画像表示面には、ユーザによるタッチ位置を検出するタッチパネルが設けられる。ユーザがディスプレイ27の画像表示面をタッチすることで情報の入力を行うことができる。
【0033】
表示部25は、電気的にコンピュータ26に接続されるユーザインターフェースである。表示部25は、ディスプレイ27によって構成される。表示部25には、撮影部21や記憶部22、コンピュータ26等から送信された画像や種々の情報が表示される。
【0034】
本実施形態の撮影部21は、頭部41等の被写体を静止画として撮影する機能を有していてもよく、動画として撮影する機能を有していてもよく、静止画及び動画の両方で撮影する機能を有していてもよい。なお、本明細書において画像とは、静止画を意味する。
【0035】
ここで、ユーザが電子端末2を用いて乳幼児4の頭部41を撮像する様子について
図4及び
図5を参照しながら説明する。
図4は、電子端末2による乳幼児4の頭部41の撮影時における表示部25の表示画面の一例を示す模式図である。
図5は、
図4に示す状態で撮影部21によって撮影された画像の一例を示す模式図である。なお、電子端末2のユーザとしては、例えば医師や乳幼児4の保護者等が挙げられる。
【0036】
頭部41を撮影する場合、頭髪等も含めた形状が頭部41の外形形状として取得されてしまうので、頭髪を頭皮に押さえつけて頭部41の画像に対する頭髪の影響を低減するために、頭部41にキャップ5が装着される。
【0037】
キャップ5について説明する。キャップ5は、伸縮性を有し、頭部41を覆うことが可能なシート50によって構成される。本実施形態では、シート50によって覆われた状態の頭部41の画像が撮影部21によって撮影される。
【0038】
シート50の素材は、例えば再生繊維であってもよく、半合成繊維であってもよく、ナイロン、ポリウレタン、ポリエステル等の合成繊維であってもよく、これら2種類以上の繊維を混ぜ合わせた繊維等であってもよい。本実施形態のシート50は、これら何れかの素材から構成された布状の部材である。
【0039】
シート50における頭部41を覆う部分の表面51には、複数の識別マーカ52と撮影部21で識別可能な複数の色柄53が形成される。
【0040】
色柄53は、色と模様の組み合わせであり、シート50の表面51全体に亘って形成される。シート50の表面51に形成される複数の色柄53は、色と模様の組み合わせが同じものが存在してもよく、色と模様の組み合わせが同じものが存在しなくてもよい。正確な3次元モデルを生成するという点から、シート50の表面51に形成される全ての色柄53のそれぞれは、その色と模様の組み合わせが互いに異なることが好ましい。本実施形態では、シート50の表面51に形成される全ての色柄53がそれぞれ異なる。これにより、それぞれの色柄を正確に判別しやすくなる。
【0041】
本実施形態のキャップ5に形成される色柄53及び背景の色は、主に白色、肌色、桃色、赤色、水色、橙色、黄緑色、緑色等である。
図4では、白色は白色で示し、肌色は小さくかつ疎なドットで示し、桃色は小さくかつ密なドットで示し、赤色は大きくかつ密なドットで示し、水色は斜め左上方向に延びる実線のハッチングで示し、橙色は斜め右上方向に延びる破線のハッチングで示し、緑色は斜め右上方向に延びる実線のハッチングで示し、黄緑色は斜め格子のハッチングで示している。
【0042】
複数の識別マーカ52は、互いに識別可能に構成され、シート50における頭部41を覆う部分の表面51全体に亘って間隔を空けて形成される。識別マーカ52としては、例えばQRコード(登録商標)やArUcoマーカ等が挙げられる。本実施形態の識別マーカ52は、隅部を有し、その表面に電子端末2によって読み取り可能な特有のパターンが形成されるArUcoマーカである。本実施形態の識別マーカ52は、平面視で四角形状である。即ち、本実施形態の識別マーカ52は、4つの隅部を有する。複数の識別マーカ52は、その表面に黒色と白色の模様で形成されるパターンがそれぞれ異なる。
【0043】
記憶部22には、各識別マーカ52間の位置関係やシート50において各識別マーカ52が形成される位置に関する情報が記憶されている。各識別マーカ52間の位置関係としては、例えば各識別マーカ52と隣接する識別マーカ52の情報等が挙げられる。例えば、識別番号1番の識別マーカ52は、識別番号2~5番の識別マーカ52に隣接して囲まれているという情報等である。乳幼児4がキャップ5を装着し、頭部41がシート50によって覆われた状態では、各識別マーカ52が頭部41の位置情報を示すことになる。
【0044】
本実施形態では、50個の識別マーカ52がシート50の表面51に形成される。なお、シート50の表面51に形成される識別マーカ52の数は、特に限定されず、50個未満であってもよく、50個以上であってもよい。
【0045】
次に、ユーザが電子端末2を用いて乳幼児4の頭部41を撮像する場合に、表示部25に表示される各種の情報について説明する。
【0046】
本実施形態では、
図5に示すように、被写体である頭部41の全体が画像の中心Cから所定の範囲(以下、第1検出領域)A内に位置し、かつ、各識別マーカ52が画像の中心から所定の範囲(以下、第2検出領域)B内に位置する複数の画像を用いて頭部41の3次元モデルを生成する。なお、
図5では、第1検出領域Aは一点鎖線の内側の領域であり、第2検出領域Bは破線の内側の領域である。
【0047】
図4に示すように、表示部25は、撮影部21による撮影時に、撮影部21のイメージセンサ213が取得したリアルタイムの映像であるライブビュー画像を表示する。表示部25のディスプレイ27に表示されるライブビュー画像では、撮影した場合の画像における第1検出領域A内の映像のみ表示される。これにより、ユーザは、被写体である乳幼児4の頭部41全体が第1検出領域A内に収まる画像を容易に撮影できる。
【0048】
また、表示部25は、記憶部22への後述する識別マーカ画像の保存状況を示す保存表示270をディスプレイ27に表示する。表示部25には、保存表示270として、頭部41の前側の領域における識別マーカ画像の保存状況を示す前側保存表示271と、頭部41の後側の領域における識別マーカ画像の保存状況を示す後側保存表示272と、頭部41の右側の領域における識別マーカ画像の保存状況を示す右側保存表示273と、頭部41の左側の領域における識別マーカ画像の保存状況を示す左側保存表示274と、頭部41の全領域における識別マーカ画像の保存状況を示す全体保存表示275と、を表示する。全体保存表示275では、頭部41の3Dモデルが表示され、撮影して保存した識別マーカに対応する頭部41の場所がこの3Dモデルに示される。これら保存表示270により、ユーザは、頭部41の3次元モデルを生成するために撮影する必要がある画像を容易に把握できる。
【0049】
次に、頭部3次元モデル生成システム1の電子端末2による3次元モデル生成処理を行うための電子端末2の機能的構成について説明する。
図6は、電子端末2の機能的構成の一部を示す機能ブロック図である。
【0050】
電子端末2は、主にプロセッサ261によって構成され、3次元モデル生成処理を実行する処理部20を備える。処理部20は、
図6に示すように、端末側画像取得部201と、フィルタリング処理部205と、表示制御部206と、送信処理部207と、を備える。
【0051】
端末側画像取得部201は、取得部202と、画像位置判定部203と、識別マーカ検出部204と、を有する。
【0052】
取得部202は、撮影部21によって撮影された頭部41の画像を取得する処理を実行する。取得部202は、頭部41の画像とともにその頭部41の撮影時に、ユーザ又は調整機構212によって設定された露光時間、絞り、ISO感度、焦点距離等の撮影部21の各種パラメータも取得する。なお、取得部202は、撮影部21によって撮影された頭部41の動画から静止画を切り出し、その切り出した静止画を画像として取得してもよい。
【0053】
画像位置判定部203は、取得部202によって取得された画像上における乳幼児4の頭部41全体が第1検出領域A内に位置するか否かを判定する処理を実行する。画像位置判定部203は、例えば、教師あり学習を行うことによって構築された学習モデルを用いて画像上における頭部41全体が第1検出領域A内に位置するか否かを判定してもよい。教師あり学習は、例えば、キャップ5を装着した乳幼児4の頭部41が撮影された画像を入力データとし、その画像において頭部41全体が第1検出領域A内に位置するか否かの評価結果をラベルとし、入力データとラベルとの多数の組を教師データとしたものであってもよい。画像位置判定部203は、画像上における頭部41全体が第1検出領域A内に位置していないと判定した場合、その画像を廃棄する。
【0054】
識別マーカ検出部204は、頭部41全体が第1検出領域A内に位置すると判定された画像上における少なくとも1つの識別マーカ52全体が、第2検出領域B内に位置するか否かを判定する処理を実行する。例えば、識別マーカ検出部204は、撮影部21によって読み取られた識別マーカ52に関する情報に基づいて識別マーカ52及びその識別情報を検出する。そして、識別マーカ検出部204は、検出した識別マーカ52と記憶部22に記憶された第2検出領域Bに関する情報との比較結果に基づいて、検出した識別マーカ52が画像上の第2検出領域B内に位置するか否を判定する。識別マーカ検出部204は、検出した識別マーカ52が画像上の第2検出領域B内に位置すると判定した場合、その画像を検出した識別マーカ52に対応する画像(以下、識別マーカ画像という)として取得し、フィルタリング処理部205に転送する。識別マーカ検出部204は、複数の識別マーカ52が画像の第2検出領域B内に存在する場合、中心Cに最も近い識別マーカ52を特定し、その画像を特定した識別マーカ52の識別マーカ画像として取得し、フィルタリング処理部205に転送する。一方で、識別マーカ検出部204は、検出した全ての識別マーカ52が画像上の第2検出領域B内に位置していないと判定した場合、その画像を廃棄する。
【0055】
フィルタリング処理部205は、端末側画像取得部201によって取得された識別マーカ画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理を実行する。本実施形態では、フィルタリング処理部205は、端末側画像取得部201から転送された識別マーカ画像と同じ識別マーカ52の識別マーカ画像が記憶部22に保存されていない場合、フィルタリング処理を実行する。一方で、フィルタリング処理部205は、端末側画像取得部201から転送された識別マーカ画像と同じ識別マーカ52の識別マーカ画像が記憶部22に保存されている場合、その転送された画像を廃棄する。
【0056】
フィルタリング処理について説明する。フィルタリング処理における所定の条件とは、正確な3次元モデルを生成するという観点から見た画像の品質基準である。本実施形態では、画像の品質基準として、画像のボケの程度に関する条件と、撮影部21による頭部41の撮影時における撮影部21と頭部41との間の距離に関する条件と、撮影部21による頭部41の撮影時における頭部41に対する撮影部21の向きに関する条件との3つの条件を含む。本実施形態のフィルタリング処理部205は、上記3つの画像の品質基準を全て満たした場合に、識別マーカ画像を適合画像であると判定する。なお、フィルタリング処理のうち画像のボケの程度に関する品質基準を判定する処理をボケ判定処理といい、頭部41に対する撮影部21の角度に関する品質基準を判定する処理を角度判定処理といい、撮影部21と頭部41との間の距離に関する品質基準を判定する処理を距離判定処理という。
【0057】
まず、ボケ判定処理について
図7A~
図9Bを参照しながら説明する。頭部41を撮像する瞬間に、乳幼児4が頭部41を動かすと、被写体である頭部41の焦点がズレ、ピントが合っていない画像が撮像されてしまうことが多い。このようなピントが合っていない画像から頭部41の正確な外形形状のデータを取得することは困難になる。ボケ判定処理は、ボケの程度が3次元モデルの生成において許容できる範囲内である画像のみを選択するために実行される。
【0058】
ボケ判定処理では、画像をフーリエ変換して得られた変換データの空間周波数の平均値に基づいて、画像のボケの程度を特定する。具体的には、ボケ判定処理では、以下の(a)~(d)の処理がこの順で実行される。
(a)端末側画像取得部201によって取得された識別マーカ画像をフーリエ変換して変換データを取得する。変換データは、例えば、識別マーカ画像に対して水平方向にフーリエ変換した後に、垂直方向にフーリエ変換する2次元フーリエ変換を行うことで得られる。
(b)(a)で取得した変換データに対して、低空間周波数成分、即ち所定の空間周波数未満の空間周波数成分を除く処理を実行する。例えば、(b)の処理は、(a)で取得した変換データを画像の中心ほど空間周波数が低い空間周波数成分が位置するように並び替え、その並び替えた変換データの画像の中心から所定の範囲の領域(以下、マスキング領域という)Eにおける空間周波数成分を除く処理であってもよい。
(c)(b)で低空間周波数成分を除外した変換データの空間周波数の平均値を算出する。
(d)(c)で算出した空間周波数の平均値が所定の閾値(以下、ボケ判定値)以上であるか否かを判定する。
【0059】
フィルタリング処理部205は、上記(d)で空間周波数の平均値がボケ判定値以上であると判定した場合に角度判定処理に移行し、空間周波数の平均値がボケ判定値未満であると判定した場合にフィルタリング処理を中止し、判定対象であった識別マーカ画像を廃棄する。
【0060】
空間周波数と画像のボケの関係について
図7A~
図9Bを参照しながら説明する。
図7Aは被写体が静止した状態であり、ピントが合っている画像を示す図であり、
図8Aは被写体が静止した状態であるが、ピントが合っていない画像を示す図であり、
図9Aは被写体が動いている状態で撮影された画像を示す図である。
図7Bは
図7Aに示す画像をフーリエ変換して得られた変換データを示す図であり、
図8Bは8Aに示す画像をフーリエ変換して得られた変換データを示す図であり、
図9Bは
図9Aに示す画像をフーリエ変換して得られた変換データを示す図である。具体的には、
図7B、
図8B及び
図9Bは、
図7A、
図8A及び
図9Aのそれぞれの画像に対して、上記(a)で述べた2次元フーリエ変換を行い、得られた変換データを画像の中心ほど空間周波数が低い空間周波数成分が位置するように並び替えた変換データの画像である。なお、
図7B、
図8B及び
図9Bでは、白色が濃い部分である程、空間周波数が低いことを示し、黒色が濃い部分である程、空間周波数が高いことを示している。また、
図7B、
図8B及び
図9Bに示す破線の円から内側は、(b)で変換データから除かれたマスキング領域Eを示している。
【0061】
図7B、
図8B、及び
図9Bを比較すると、フーリエ変換した変換データにおける空間周波数が低いマスキング領域Eでは、3つの変換データ間で差異が少ない傾向にある。一方で、変換データにおけるマスキング領域E以外の領域は、静止した状態でありピントが合っている画像の変換データを示す
図7Bの方が、
図8B及び
図9Bと比較すると、空間周波数が高い領域が多く存在していることが確認できる。そこで、ボケ判定処理では、ピントが合っている画像と撮影時の頭部41の動き等によってピントが合っていない画像との空間周波数の差異をより明確に把握できるように、空間周波数が低いマスキング領域Eのデータを除去した上で、変換データの空間周波数を比較している。これにより、画像のボケの程度をより正確に判定することができる。
【0062】
次に、角度判定処理及び距離判定処理について
図10及び
図11を参照しながら説明する。
図10は、頭部41と撮影部21との距離及び角度に関する条件についての説明図である。
図11は、頭部41と撮影部21との距離に関する条件に付いての説明図である。
【0063】
図10において破線で示す電子端末2は、識別マーカ52におけるパターンが形成される表面に対して、撮影部21のレンズ211が対向する実線で示す電子端末2に比べて、識別マーカ52に対するレンズ211の角度が大きくずれている。このような状態で頭部41を撮影した画像では、頭部41の正確な外形形状のデータを取得することが困難となる。また、頭部41と撮影部21のレンズ211との間の距離Lが近すぎる場合や遠すぎる場合も、画像から頭部41の正確な外形形状のデータを取得することが困難となる。頭部41に対する撮影部21の角度や距離が3次元モデルの生成において許容できる範囲内である画像のみを選択するために、角度判定処理及び距離判定処理が実行される。
【0064】
角度判定処理では、以下の(e)~(h)の処理がこの順で実行される。
(e)識別マーカ52の向きを把握するために、識別マーカ52の隅部の位置情報から画像上における識別マーカ52の位置を示す位置情報uを特定する。
(f)(e)で特定した識別マーカ52の位置情報、撮影部21に設定されている焦点距離及びイメージセンサ213のサイズ等を含むパラメータ情報Kと予め設定した3次元空間座標Xを用いて、以下の式(1)により以下式(2)で示す透視変換行列Rtを算出する。
u=K×Rt×X・・・式(1)
【0065】
【0066】
(g)(f)で算出した透視変換行列Rtから識別マーカ52の向きを頭部41に対する撮影部21の向きとして推定する。具体的には、透視変換行列Rtからオブジェクトの回転に関連する部分であり、以下式(3)で示す回転行列Rを抽出し、その回転行列Rをオイラー角に変換する。
【0067】
【数2】
(h)(g)で得たオイラー角のψ、θ、φのそれぞれがそれぞれに設定された所定の閾値(以下、角度判定値)の範囲内であるか否かを判定する。
【0068】
フィルタリング処理部205は、上記(h)で得たオイラー角ψ、θ、φの全てが角度判定値の範囲内であると判定した場合に距離判定処理に移行し、オイラー角ψ、θ、φの少なくとも何れかが角度判定値の範囲外であると判定した場合にフィルタリング処理を中止し、判定対象であった識別マーカ画像を廃棄する。
【0069】
距離判定処理では、上記(e)、(f)の処理と以下の(i)~(k)の処理がこの順で実行される。数(1)
(i)(f)で算出した透視変換行列Rtの並進ベクトルtの成分、即ち以下式(4)で示す成分のノルムを以下の式(5)を用いて計算する。この計算結果は、撮影部21のレンズ211と識別マーカ52との間の実際の距離Lを意味する。
【0070】
【0071】
(j)(i)で算出した距離Lが所定の閾値(以下、距離判定値)の範囲内であるか否かを判定する。なお、
図11では、距離判定値の下限値としての距離L2と上限値としての距離L1の例を示している。
【0072】
フィルタリング処理部205は、上記(k)で算出した距離Lが距離判定値の範囲内であると判定した場合に、判定対象であった識別マーカ画像が品質基準を満たす適合画像であると判定し、その識別マーカ画像を適合画像として記憶部22に保存する。一方で、距離Lが距離判定値の範囲外であると判定した場合は、判定対象であった識別マーカ画像を廃棄する。
【0073】
表示制御部206は、適合画像の記憶部22への保存状況に応じて、表示部25の表示を制御する処理を実行する。表示制御部206は、例えば、新たな識別マーカ52の識別マーカ画像が適合画像として記憶部22に保存された場合、適合画像の保存状況を反映したものに保存表示270を変更する。また表示制御部206は、予め定められた全ての識別マーカ52の識別マーカ画像が適合画像として記憶部22に記憶された場合に、ユーザにその旨を通知する表示を表示部25に表示してもよい。
【0074】
送信処理部207は、記憶部22に保存された頭部41の複数の適合画像をサーバ3に送信する処理を実行する。送信処理部207は、記憶部22に適合画像として記憶され、予め定められた全ての識別マーカ52の識別マーカ画像をサーバ3に送信する。例えば、送信処理部207は、全ての識別マーカ52の識別マーカ画像が記憶部22に記憶された場合に、それら全ての識別マーカ52の識別マーカ画像をサーバ3に自動で送信してもよい。例えば、送信処理部207は、ユーザが入力部24を介して記憶部22内の適合画像をサーバ3に送信する操作を行った場合に、そのユーザ操作に基づいて全ての識別マーカ52に対応する画像をサーバ3に送信してもよい。
【0075】
なお、予め定められた全ての識別マーカ52とは、例えば、シート50における頭部41を覆う部分の表面51全体に亘って形成された全ての識別マーカ52であってもよい。
【0076】
画像の撮影、取得、フィルタリング処理、保存等の一連の処理が、1つの電子端末2で行われるので、例えば、画像の撮影と適合画像であるか否かの判定結果を得るまでのタイムラグが小さくなり、3次元モデルの作成に必要な多数の画像をスムーズに取得することができる。
【0077】
次に、頭部3次元モデル生成システム1のサーバ3による3次元モデル生成処理を行うためのサーバ3の機能的構成について説明する。
図12は、サーバ3の機能的構成の一部を示す機能ブロック図である。
【0078】
サーバ3は、主にプロセッサ331によって構成され、3次元モデル生成処理を実行する処理部30を備える。処理部30は、
図12に示すように、サーバ側画像取得部301と、背景処理部(背景除去部)302と、3次元モデル生成部303と、送信処理部304と、を備える。
【0079】
サーバ側画像取得部301は、通信部32を介して電子端末2から予め定められた全ての識別マーカ52の適合画像を取得する処理を実行する。
【0080】
背景処理部302は、サーバ側画像取得部301によって取得された複数の適合画像のそれぞれに対して背景除去処理を実行する。背景除去処理は、適合画像上における乳幼児4の頭部41を含む検出対象画像以外の情報を除去する処理である。検出対象画像としては、例えば乳幼児4の頭部41のみを含む画像であってもよく、顔から上の部分を含む画像であってもよく、乳幼児4の首から上の部分を含む画像でもよく、乳幼児4全体を含む画像であってもよい。例えば、背景処理部302は、機械学習等によって画像上の検出対象画像を検出する学習モデルを構築し、構築した学習モデルを用いて適合画像上の検出対象画像を検出し、検出した検出対象画像以外の情報を除去することで背景除去処理を実行してもよい。例えば、Pythonライブラリである”Rembg”や”Detectron 2”等のプログラムを利用して背景除去処理を行ってもよい。これにより、3次元モデルの生成に必要な検出対象画像以外の情報が画像から除去されるので、生成時に用いる特徴量を絞ることができ、各画像間での頭部41の重複する特徴点をより正確に検出できる。
【0081】
3次元モデル生成部303は、複数の適合画像に基づいて、頭部41の3次元モデルを生成する処理を実行する。本実施形態では、3次元モデル生成部303は、背景処理部302によって検出対象画像以外の情報が除去された複数の適合画像に基づいて、フォトグラメトリ技術を利用して頭部41の3次元モデルを生成する。具体的には、3次元モデル生成部303は、各識別マーカ52に対応する画像間で重複する特徴点を検出し、3次元的に重ね合わせていくことで3次元モデルを生成する。このとき、3次元モデル生成部303は、識別マーカ52が示す頭部41における位置情報とシート50の表面51の色柄53とに基づいて、頭部41の3次元モデルを生成する。識別マーカ52が示す位置情報を用いることで、各画像が頭部41におけるどの部分の画像であるかが把握しやすくなる。また、色柄53が同じ箇所が存在しないので、頭部41の部位に応じて特徴量の差異がより明確になり、各画像間での重複する特徴点のより正確な検出が可能となる。よって、より正確な頭部41の3次元モデルの生成が可能となる。
【0082】
送信処理部304は、3次元モデル生成部303によって生成された3次元モデルを電子端末2や他の装置に送信する処理を実行する。3次元モデルを受信した電子端末2等の装置のユーザは、生成された頭部41の3次元モデルをディスプレイ27等に表示することで確認できる。
【0083】
次に、頭部3次元モデル生成システム1の電子端末2の処理部20が実行する3次元モデル生成処理の流れの一例について
図13を参照しながら説明する。
図13は、電子端末2によって実行される3次元モデル生成処理の一例を示すフローチャートである。
【0084】
図13に示すように、ステップS11において、処理部20の取得部202は、撮影部21によって撮影された画像を取得する。このとき、取得部202は、画像とともにその画像の撮影時に撮影部21に設定されている焦点距離及びイメージセンサのサイズ等を含むパラメータ情報も取得する。
【0085】
ステップS12において、画像位置判定部203は、ステップS11で取得した画像上の頭部41全体が第1検出領域A内に位置するか否かを判定する。画像位置判定部203は、頭部41全体が第1検出領域A内に位置しないと判定した場合(ステップS12でNO)、処理をステップS11に戻す。一方で、画像位置判定部203は、頭部41全体が第1検出領域A内に位置すると判定した場合(ステップS12でYES)、処理をステップS13に移行する。
【0086】
ステップS13において、識別マーカ検出部204は、ステップS12で頭部41全体が第1検出領域A内に位置すると判定された画像上の識別マーカ52を検出する。このとき、識別マーカ検出部204は、検出した識別マーカ52の識別情報も取得する。
【0087】
ステップS14において、識別マーカ検出部204は、ステップS13で検出した少なくとも1つの識別マーカ52が第2検出領域B内に位置するか否かを判定する。識別マーカ検出部204は、検出した識別マーカ52が第2検出領域B内に位置しないと判定した場合(ステップS14でNO)、処理をステップS11に戻す。一方で、識別マーカ検出部204は、検出した識別マーカ52が第2検出領域B内に位置すると判定した場合(ステップS14でYES)、処理をステップS15に移行する。このとき、識別マーカ検出部204は、第2検出領域B内の識別マーカ52のうち画像の中心Cに最も近い識別マーカ52を特定する。
【0088】
ステップS15において、フィルタリング処理部205は、ステップS14で特定された識別マーカ52が画像の最も中心に位置する適合画像が記憶部22に保存されているか否かを判定する。フィルタリング処理部205は、識別マーカ52が画像の最も中心に位置する適合画像が記憶部22に保存済みであると判定した場合(ステップS15でYES)、処理をステップS11に戻す。一方で、フィルタリング処理部205は、識別マーカ52が画像の最も中心に位置する適合画像が記憶部22に保存されていないと判定した場合(ステップS15でNO)、処理をステップS16に移行する。
【0089】
ステップS16において、フィルタリング処理部205は、ステップS14で特定された識別マーカ52に対応する画像に対するボケ判定処理を実行する。具体的には、フィルタリング処理部205は、画像をフーリエ変換して変換データを取得し、取得した変換データから低空間周波数成分を除外した変換データの空間周波数の平均値を算出する。
【0090】
ステップS17において、フィルタリング処理部205は、ステップS16で平均値がボケ判定値未満であると判定した場合(ステップS17でNO)、処理をステップS11に戻す。一方で、フィルタリング処理部205は、ステップS16で平均値がボケ判定値以上であると判定した場合(ステップS17でYES)、画像のボケの程度は許容範囲内であると判定し、処理をステップS18に移行する。
【0091】
ステップS18において、フィルタリング処理部205は、ステップS17でボケの程度が許容範囲内(ボケ判定値以上)であると判定された画像に対する角度判定処理を実行する。具体的には、フィルタリング処理部205は、識別マーカ52の隅部の位置を検出し、検出した隅部の位置に基づいて画像上の識別マーカ52の位置情報を特定し、ステップS11で取得した撮影部21に設定されていた焦点距離及びイメージセンサ213のサイズ等のパラメータ情報に用いて透視変換行列を算出する。そして、算出した透視変換行列から回転行列を抽出してオイラー角に変換し、得られたオイラー角のψ、θ、φのそれぞれが角度判定値の範囲内であるか否かを判定する。
【0092】
ステップS19において、フィルタリング処理部205は、ステップS18でオイラー角のψ、θ、φの少なくともいずれかが角度判定値の範囲外であると判定した場合(ステップS19でNO)、処理をステップS11に戻す。一方で、フィルタリング処理部205は、ステップS18でオイラー角のψ、θ、φの全てが角度判定値の範囲内であると判定した場合(ステップS19でYES)、撮影時における識別マーカ52に対する撮影部21の角度は許容範囲内であると判定し、処理をステップS20に移行する。
【0093】
ステップS20において、フィルタリング処理部205は、ステップS19で角度が許容範囲内であると判定された画像に対する距離判定処理を実行する。具体的には、フィルタリング処理部205は、ステップS18で算出した透視変換行列から並進ベクトルの成分のノルムを上述した式(5)を用いて撮影時における撮影部21と識別マーカ52の実際の距離Lを算出する。そして、算出した距離Lが距離判定値の範囲内であるか否かを判定する。
【0094】
ステップS21において、フィルタリング処理部205は、ステップS20で距離Lが距離判定値の範囲外であると判定した場合(ステップS21でNO)、処理をステップS11に戻す。一方で、フィルタリング処理部205は、ステップS20で距離Lが距離判定値の範囲内であると判定した場合(ステップS21でYES)、撮影時の識別マーカ52と撮影部21との間の距離Lは許容範囲内であると判定し、処理をステップS22に移行する。
【0095】
ステップS22において、フィルタリング処理部205は、ステップS21で距離Lが許容範囲内であると判定された画像を適合画像であると判定し、記憶部22に保存する。
【0096】
ステップS23において、表示制御部206は、表示部25を制御して識別マーカ画像の保存状況を示す表示に、新たな識別マーカ52に対する画像が適合画像として保存されたことを反映させる。
【0097】
ステップS24において、送信処理部207は、予め定められた全ての識別マーカ52の識別マーカ画像が適合画像として記憶部22に保存されているか否かを判定する。送信処理部207は、全ての識別マーカ52の識別マーカ画像が適合画像として保存されていないと判定した場合(ステップS24でNO)、処理をステップS11に戻す。一方で、送信処理部207は、全ての識別マーカ52の識別マーカ画像が適合画像として保存されていると判定した場合(ステップS24でYES)、処理をステップS25に移行する。
【0098】
ステップS25において、送信処理部207は、記憶部22に記憶されており、今回の3次元モデルの生成対象である頭部41の適合画像の全てをサーバ3に送信する。その後、処理部20における3次元モデル生成処理を終了する。
【0099】
次に、頭部3次元モデル生成システム1のサーバ3が実行する3次元モデル生成処理の流れの一例について
図14を参照しながら説明する。
図14は、サーバ3によって実行される3次元モデル生成処理の一例を示すフローチャートである。
【0100】
図14に示すように、ステップS31において、処理部30のサーバ側画像取得部301は、ステップS25で送信された全ての適合画像を取得する。
【0101】
ステップS32において、背景処理部302は、ステップS25で取得した全ての適合画像のそれぞれに対して背景除去処理を実行する。この結果、適合画像上における検出対象画像以外の情報が除去される。
【0102】
ステップS33において、3次元モデル生成部303は、ステップS32で背景除去処理が施された適合画像に基づいて、フォトグラメトリ技術を使用した頭部41の3次元モデルを生成する処理を実行する。
【0103】
ステップS34において、3次元モデル生成部303は、ステップS33で生成された3次元モデルを保存する。その後、処理部30は3次元モデル生成処理を終了する。
【0104】
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に制限されるものではなく適宜変更が可能である。
【0105】
上記実施形態では、頭部41の撮影時に、識別マーカ52及び色柄53がシート50の表面51に形成されたキャップ5を用いていたが、識別マーカ52及び色柄53がシート50の表面51に形成されていないキャップ5を用いてもよく、識別マーカ52が形成され、色柄53の無いキャップ5を用いてもよく、色柄53が形成され、識別マーカ52が形成されていないキャップ5を用いてもよい。また、キャップ5には、識別マーカ52の代わりに識別機能を有しておらず、単に平面視で四角形状のマーカが形成されてもよい。
【0106】
上記実施形態では、フィルタリング処理部205は、フィルタリング処理としてボケ判定処理と、角度判定処理と、距離判定処理とを実行していたが、3つの処理の全てを行わず、3つの処理のうちいずれか1つ又は2つの処理を行ってもよい。即ち、複数種類のフィルタリング処理を行って適合画像を抽出し、抽出した複数の適合画像に基づいて3次元モデルを生成してもよい。これにより、より正確な頭部41の3次元モデルを生成することができる。
【0107】
上記実施形態では、フィルタリング処理部205は、ボケ判定処理、角度判定処理、距離判定処理をこの順で行っていたが、処理を行う順序は特に限定されない。例えば、ボケ判定処理、距離判定処理、角度判定処理の順でフィルタリング処理を行ってもよく、距離判定処理、ボケ判定処理、角度判定処理の順でフィルタリング処理を行ってもよく、距離判定処理、角度判定処理、ボケ判定処理の順でフィルタリング処理を行ってもよく、角度判定処理、距離判定処理、ボケ判定処理の順でフィルタリング処理を行ってもよく、角度判定処理、ボケ判定処理、距離判定処理の順でフィルタリング処理を行ってもよい。
【0108】
上記実施形態では、サーバ3は背景処理部302を有していたが、背景処理部302を具備しない構成であり、3次元モデル生成処理において背景除去処理を行わなくてもよい。またサーバ3の代わりに電子端末2が背景処理部302を有しており、電子端末2側で背景除去処理を施した適合画像をサーバ3に送信してもよい。
【0109】
上記実施形態では。電子端末2がフィルタリング処理部205を有していたが、サーバ3がフィルタリング処理部205を有していてもよい。
【0110】
上記実施形態では、端末側画像取得部201は、取得部202と画像位置判定部203と識別マーカ検出部204とを有していたが、画像位置判定部203及び識別マーカ検出部204の少なくともいずれかを具備しない構成であってもよい。
【0111】
また例えば、識別マーカ検出部204は、教師あり学習を行うことによって構築された学習モデルを用いて画像上において少なくとも1つの識別マーカ52全体が第2検出領域B内に位置するか否かを判定してもよい。この場合、教師あり学習は、例えば頭部41を覆うシート50の表面51に形成された識別マーカ52が被写体として含まれる画像を入力データとし、その画像において少なくとも1つの識別マーカ52全体が第2検出領域B内に位置するか否かの評価結果をラベルとし、入力データとラベルとの多数の組を教師データとしたものであってもよい。
【0112】
また上記実施形態では、フィルタリング処理部205は、端末側画像取得部201から転送された識別マーカ画像と同じ識別マーカ52の識別マーカ画像が記憶部22に保存されている場合、その転送された画像を廃棄していたが、その転送された画像を廃棄せずに、記憶部22のバックアップ用の記憶領域にバックアップ用として保存してもよい。
【0113】
以上説明した実施形態及び変形例によれば、以下のような効果を奏される。
【0114】
(1)頭部3次元モデル生成システム1は、乳幼児4の頭部41を撮影する撮影部21と、該撮影部21によって撮影された頭部41の画像を処理する処理部20と、を有する電子端末2と、電子端末2と通信可能なサーバ3と、を備える頭部3次元モデル生成システム1であって、電子端末2の処理部20は、撮影部21によってそれぞれ異なる方向から撮影された頭部41の複数の画像を取得する端末側画像取得部201と、端末側画像取得部201によって取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理部205と、を有し、サーバ3は、フィルタリング処理部205によって所定の条件を満たすと判定された複数の適合画像に基づいて、頭部41の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成部303と、を有する。
【0115】
これにより、静止させた状態を保つことが難しい乳幼児4の頭部41の3次元モデルを生成する場合であっても、所定の条件を満たす画像のみを用いて頭部の3次元モデルを生成するので、正確な頭部の3次元モデルを生成することができる。
【0116】
(2)(1)に記載の頭部3次元モデル生成システム1において、所定の条件は、画像のボケの程度に関する条件を含む。
【0117】
これにより、例えば、撮影する瞬間に乳幼児4が動き、頭部41の画像にボケが生じやすい状況であっても、ボケの程度に応じて3次元モデルの生成に使用する画像を取捨選択するので、より正確な頭部41の3次元モデルを生成できる。
【0118】
(3)(2)に記載の頭部3次元モデル生成システム1において、フィルタリング処理部205は、端末側画像取得部201によって取得された画像をフーリエ変換して変換データを取得し、変換された変換データにおける低空間周波数成分を除外した空間周波数の平均値に基づいて、画像のボケの程度を特定する。
【0119】
これにより、フーリエ変換を行うとともに、得られた変換データにおいて画像間の差異が確認し難い低周波数側の空間周波数成分を除いた部分のみの空間周波数成分を用いるので、ボケの程度をより正確に特定できる。
【0120】
(4)(1)に記載の頭部3次元モデル生成システム1において、所定の条件は、撮影部21による頭部41の撮影時における撮影部21と頭部41との間の距離Lに関する条件を含む。
【0121】
これにより、撮影時に静止した状態を保つことが難しい乳幼児4を様々な方向から撮影するような一定の条件で撮影することが難しい状況であっても、撮影部21と頭部41との間の距離を考慮して3次元モデルの生成に使用する画像を取捨選択するので、より正確な頭部41の3次元モデルを生成できる。
【0122】
(5)(4)に記載の頭部3次元モデル生成システム1において、撮影部21は、シートによって覆われた状態の頭部41を撮影し、シート50における頭部41を覆う部分の表面には、複数のマーカが間隔を空けて形成され、端末側画像取得部201は、マーカが中心Cから所定の範囲である第2検出領域B内に位置する画像をマーカに対応する画像として取得し、フィルタリング処理部205は、マーカに対応する画像上でのマーカの位置を示す位置情報と、撮影部21に設定されている焦点距離及びイメージセンサのサイズを含むパラメータ情報と、に基づいて、撮影部21とマーカとの間の距離を特定する。
【0123】
これにより、撮影した画像の中心C側に位置するマーカを基準に距離を算出するので、撮影部21と頭部41との距離をより正確に特定できる。
【0124】
(6)(1)に記載の頭部3次元モデル生成システム1において、所定の条件は、撮影部21による頭部41の撮影時における頭部41に対する撮影部21の向きに関する条件を含む。
【0125】
これにより、撮影時に静止した状態を保つことが難しい乳幼児4を様々な方向から撮影するような一定の条件から撮影することが難しい状況であっても、撮影部21と頭部41との間の角度を考慮して3次元モデルの生成に使用する画像を取捨選択するので、より正確な頭部41の3次元モデルを生成できる。
【0126】
(7)(1)に記載の頭部3次元モデル生成システム1において、撮影部21は、シート50によって覆われた状態の頭部41を撮影し、シート50における頭部41を覆う部分の表面には、複数のマーカが間隔を空けて形成され、端末側画像取得部201は、マーカが中心から所定の範囲である第2検出領域B内に位置する画像をマーカに対応する画像として取得し、フィルタリング処理部205は、マーカに対応する画像上でのマーカの位置を示す位置情報と、撮影部21に設定されている焦点距離及びイメージセンサのサイズを含むパラメータ情報と、に基づいて、頭部41に対する撮影部21の向きを特定する。
【0127】
これにより、撮影した画像の中心C側に位置するマーカの情報から角度を推定するので、頭部41に対する撮影部21の角度をより正確に特定できる。
【0128】
(8)(1)~(7)のいずれか1つに記載の頭部3次元モデル生成システム1において、撮影部21は、シート50によって覆われた状態の頭部41を撮影し、シート50における頭部41を覆う部分の表面には、頭部41における位置情報と関連付けられた複数の識別マーカ52が間隔を空けて形成されるとともに、複数の色柄53が形成され、端末側画像取得部201は、識別マーカ52が中心Cから所定の範囲である第2検出領域B内に位置する画像を識別マーカ52に対応する画像として取得し、フィルタリング処理部205は、端末側画像取得部201によって取得された識別マーカ52に対応する画像が適合画像であるか否かを判定し、3次元モデル生成部303は、予め定められた全ての識別マーカ52に対応する画像の適合画像の識別マーカ52と関連付けられた位置情報と色柄53とに基づいて、3次元モデルを生成する。
【0129】
これにより、識別マーカ52に関連付けられた頭部41の位置情報と色柄53の情報とを3次元モデルの生成に利用するので、複数の適合画像それぞれの位置関係をより正確に判別しやすくなり、より正確な頭部41の3次元モデルを生成できる。
【0130】
(9)(8)に記載の頭部3次元モデル生成システム1において、シート50の表面51に形成される全ての色柄53は、それぞれ異なる。
【0131】
これにより、頭部41を覆うシート50の表面51において色柄53が同じ箇所が存在しないので、頭部41の部位に応じて特徴量の差異がより明確になり、取得された画像が頭部41のうちどの部位のものであるかより正確に判別しやすくなり、より正確な頭部41の3次元モデルを生成できる。
【0132】
(10)(1)~(9)のいずれか1つに記載の頭部3次元モデル生成システム1において、所定の条件は、撮影部21による頭部41の撮影時における撮影部21と頭部41との間の距離に関する条件と、撮影部21による頭部41の撮影時における頭部41に対する撮影部21の向きに関する条件と、を含む。
【0133】
これにより、撮影時に静止した状態を保つことが難しい乳幼児4を様々な方向から撮影するような一定の条件で撮影することが難しい状況であっても、撮影部21と頭部41との間の距離と角度を考慮して3次元モデルの生成に使用する画像を取捨選択するので、より正確な頭部41の3次元モデルを生成できる。
【0134】
(11)(1)~(10)のいずれか1つに記載の頭部3次元モデル生成システム1において、所定の条件は、画像のボケの程度に関する条件を更に含む。
【0135】
これにより、ボケの程度に応じてさらに3次元モデルの生成に用いる画像を取捨選択するので、より正確な頭部の3次元モデルを生成できる。
【0136】
(12)(1)~(11)のいずれか1つに記載の頭部3次元モデル生成システム1において、フィルタリング処理部205は、端末側画像取得部201によって取得された画像がボケの程度に関する条件を満たすか否かを判定した後に、ボケの程度に関する条件を満たすと判定された画像が撮影部21による頭部41の撮影時における撮影部21と頭部41との間の距離に関する条件と、撮影部21による頭部41の撮影時における頭部41に対する撮影部21の向きに関する条件と、を満たすか否かを判定する。
【0137】
これにより、ボケの程度に応じて画像を選択した後に、距離と角度について判定するので、鮮明な画像で距離と角度を判定するので、より正確な距離と角度を特定できる。よって、より正確に距離と角度の判定を行うことができ、より正確な頭部41の3次元モデルを生成できる。
【0138】
(13)(1)~(12)のいずれか1つに記載の頭部3次元モデル生成システム1において、サーバ3は、適合画像上の乳幼児4の頭部41を含む検出対象画像を検出し、適合画像上における検出対象画像以外の情報を除去する背景処理部302を更に有し、3次元モデル生成部303は、背景処理部302によって検出対象画像以外の情報が除去された複数の適合画像に基づいて、頭部41の立体的な外形形状を示す3次元モデルを生成する。
【0139】
これにより、乳幼児4の頭部41を含む検出対象画像の情報のみ抽出された適合画像を用いるので、頭部41の3次元モデルの生成に必要な特徴量を絞り込むことができ、より正確な頭部41の3次元モデルを生成できる。
【0140】
(14)プログラムは、それぞれ異なる方向から撮影された乳幼児4の頭部41の複数の画像を取得する画像取得工程と、画像取得工程で取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理工程と、フィルタリング処理工程で所定の条件を満たすと判定された複数の適合画像に基づいて、頭部の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成工程と、コンピュータに実行させる。
【0141】
(15)プログラムは、乳幼児4の頭部41の複数の画像に基づいて、頭部41の立体的な外形形状を示す3次元モデルを生成するサーバ3とともに、3次元モデルを生成するための3次元モデル生成処理をコンピュータに実行させるプログラムであって、3次元モデル生成処理は、それぞれ異なる方向から撮影された乳幼児の頭部の複数の画像を取得する画像取得工程と、画像取得工程で取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理工程と、フィルタリング処理工程で所定の条件を満たすと判定された複数の適合画像をサーバ3に送信する送信工程と、を含む。
【0142】
(16)3次元モデル生成方法は、コンピュータが実行する方法であって、それぞれ異なる方向から撮影された乳幼児4の頭部41の複数の画像を取得する画像取得工程と、画像取得工程で取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理工程と、フィルタリング処理工程で所定の条件を満たすと判定された複数の適合画像に基づいて、頭部41の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成工程と、を含む。
【符号の説明】
【0143】
1 頭部3次元モデル生成システム
2 電子端末
3 サーバ
4 乳幼児(対象者)
20 処理部
21 撮影部
41 頭部
201 画像取得部(端末側画像取得部)
205 フィルタリング処理部
303 3次元モデル生成部
【要約】
【課題】静止させた状態を保つことが難しい対象者の頭部の3次元モデルを生成する場合であっても、正確な3次元モデルを生成できる頭部3次元モデル生成システム、プログラム及び頭部3次元モデル生成方法を提供すること。
【解決手段】頭部3次元モデル生成システム1は、頭部41を撮影する撮影部21と、撮影された頭部41の画像を処理する処理部20と、を有する電子端末2と、サーバ3と、を備え、電子端末2の処理部20は、撮影部21によってそれぞれ異なる方向から撮影された頭部41の複数の画像を取得する端末側画像取得部201と、端末側画像取得部201によって取得された画像が所定の条件を満たす適合画像であるか否かを判定するフィルタリング処理部205と、を有し、サーバ3は、複数の適合画像に基づいて、頭部41の立体的な外形形状を示す3次元モデルを生成する3次元モデル生成部303と、を有する。
【選択図】
図6