(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023069333
(43)【公開日】2023-05-18
(54)【発明の名称】データ解析装置およびデータ解析方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20230511BHJP
G01N 33/48 20060101ALI20230511BHJP
G01N 33/483 20060101ALI20230511BHJP
G01N 15/14 20060101ALI20230511BHJP
【FI】
G06T7/00 350B
G01N33/48 M
G01N33/483 C
G01N15/14 K
G01N15/14 C
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021181114
(22)【出願日】2021-11-05
(71)【出願人】
【識別番号】000001993
【氏名又は名称】株式会社島津製作所
(74)【代理人】
【識別番号】100104433
【弁理士】
【氏名又は名称】宮園 博一
(74)【代理人】
【識別番号】100202728
【弁理士】
【氏名又は名称】三森 智裕
(72)【発明者】
【氏名】澤田 隆二
(72)【発明者】
【氏名】大野 剛士
(72)【発明者】
【氏名】山本 周平
(72)【発明者】
【氏名】津島 啓晃
【テーマコード(参考)】
2G045
5L096
【Fターム(参考)】
2G045AA40
2G045CB01
2G045FA19
5L096AA06
5L096AA07
5L096BA03
5L096CA21
5L096DA01
5L096EA43
5L096FA35
5L096FA59
5L096FA64
5L096KA04
(57)【要約】
【課題】複数のスクリプトを実行する場合に、ユーザの手間を低減することが可能なデータ解析装置を提供することである。
【解決手段】この画像解析装置100(データ解析装置)は、画像取得部200(分析装置)により取得された画像データ410(分析データ)を選択する操作を受け付ける制御と、選択された画像データ410について解析を行うスクリプトを複数選択する操作を受け付ける制御と、選択された画像データ410について選択された複数のスクリプトにより並列的に解析を実行する制御と、を行う制御部10を備える。また、画像解析装置100は、制御部10による画像データ410の解析により取得された解析結果を同一画面上に表示する表示部20を備える。
【選択図】
図3
【特許請求の範囲】
【請求項1】
分析装置により取得された分析データを選択する操作を受け付ける制御と、
選択された前記分析データについて解析を行うスクリプトを複数選択する操作を受け付ける制御と、
選択された前記分析データについて選択された複数の前記スクリプトにより並列的に解析を実行する制御と、を行う制御部と、
前記制御部による前記分析データの解析により取得された解析結果を同一画面上に表示する表示部と、を備える、データ解析装置。
【請求項2】
前記制御部は、前記分析データについて解析を行うための複数の解析工程が直列的に組み合わせられた解析フローを生成する制御を行うとともに、生成された前記解析フローの前記複数の解析工程の各々において、選択された前記分析データについて選択された複数の前記スクリプトにより並列的に解析を実行するように構成されている、請求項1に記載のデータ解析装置。
【請求項3】
前記スクリプトは、前記分析データについての解析のために機械学習により生成された学習済みモデルと、前記分析データについての解析を行うために用いられる解析アルゴリズムと、を含み、
前記制御部は、選択された前記分析データについて選択された複数の前記学習済みモデルにより並列的に解析を実行するとともに、選択された前記分析データについて選択された複数の前記解析アルゴリズムにより並列的に解析を実行するように構成されている、請求項1または2に記載のデータ解析装置。
【請求項4】
前記スクリプトは、前記分析データについての解析のために機械学習により生成された学習済みモデルと、前記分析データについての解析を行うために用いられる解析アルゴリズムと、を含み、
前記制御部は、一の前記解析アルゴリズムを実行することにより得られた前記解析結果を入力データとして、前記一の解析アルゴリズムと直列的に組み合わせられる他の前記解析アルゴリズムを実行するように構成されている、請求項1~3のいずれか1項に記載のデータ解析装置。
【請求項5】
前記制御部は、前記スクリプトの各々に対して入出力の型、用途、および拡張子を含むプロパティを登録する制御を行うとともに、直列的に組み合わせられた2つの前記スクリプトのうち後の前記スクリプトの前記プロパティが前記2つのスクリプトのうち先の前記スクリプトの前記プロパティと一致する場合に、前記後のスクリプトを実行するように構成されている、請求項1~4のいずれか1項に記載のデータ解析装置。
【請求項6】
前記制御部は、選択された1以上の前記後のスクリプトのうち、前記先のスクリプトの前記プロパティと一致する前記スクリプトを実行するように構成されている、請求項5に記載のデータ解析装置。
【請求項7】
前記スクリプトは、選択された複数の前記スクリプトの各々の前記解析結果のうち少なくとも2以上の前記解析結果をまとめる処理を実行するための第1処理アルゴリズムを含む、請求項1~6のいずれか1項に記載のデータ解析装置。
【請求項8】
前記スクリプトは、2以上の前記解析結果のばらつきを解析する処理を実行するための第2処理アルゴリズムをさらに含む、請求項7に記載のデータ解析装置。
【請求項9】
前記制御部は、前記第1処理アルゴリズムおよび前記第2処理アルゴリズムを並列的に実行可能に構成されている、請求項8に記載のデータ解析装置。
【請求項10】
分析装置により取得された分析データの選択を受け付けるステップと、
前記分析データについての解析を行うスクリプトを複数選択するステップと、
選択された前記分析データについて選択された複数の前記スクリプトにより並列的に解析を実行するステップと、を備える、データ解析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ解析装置およびデータ解析方法に関する。
【背景技術】
【0002】
従来、スクリプトを用いて画像データの解析を行うデータ解析装置およびデータ解析方法が知られている(たとえば、特許文献1参照)。
【0003】
上記特許文献1には、細胞の画像を解析するための細胞画像解析装置(データ解析装置)が開示されている。ここで、細胞画像には、不純物などの除去すべき除去対象物が含まれている場合がある。上記特許文献1に記載の細胞画像解析装置では、細胞画像内における除去対象領域の場所を表したラベル画像が生成される。そして、細胞画像とラベル画像とのセットが機械学習用のデータセットとして用いられる。上記細胞画像解析装置には、上記機械学習により生成された、所定の除去対象物を識別するための複数の学習モデル(スクリプト)が登録されている。そして、登録されている複数の学習モデルの中からユーザにより選択された一の学習モデルの処理が実行される。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1では、上記のように、登録されている複数の学習モデルの中からユーザにより選択された一の学習モデル(スクリプト)の処理が実行される。この場合、複数の学習モデルの各々の解析結果を取得したい場合には、複数の学習モデルごとに個別に処理を実行させる作業が必要となる。このため、実行する学習モデル(スクリプト)の個数分、ユーザの手間が増大すると考えられる。したがって、複数のスクリプトを並列的に実行する場合に、ユーザの手間を低減することが可能なデータ解析装置およびデータ解析方法が望まれている。
【0006】
この発明は、上記のような課題を解決するためになされたものであり、この発明の1つの目的は、複数のスクリプトを実行する場合に、ユーザの手間を低減することが可能なデータ解析装置およびデータ解析方法を提供することである。
【課題を解決するための手段】
【0007】
上記目的を達成するために、この発明の第1の局面におけるデータ解析装置は、分析装置により取得された分析データを選択する操作を受け付ける制御と、選択された分析データについて解析を行うスクリプトを複数選択する操作を受け付ける制御と、選択された分析データについて選択された複数のスクリプトにより並列的に解析を実行する制御と、を行う制御部と、制御部による分析データの解析により取得された解析結果を同一画面上に表示する表示部と、を備える。なお、スクリプトとは、コンピュータが実行可能な簡易的なプログラムを意味する。また、「並列的に解析を実行」とは、「並行して解析を実行」を意味する。
【0008】
また、この発明の第2の局面におけるデータ解析方法は、分析装置により取得された分析データの選択を受け付けるステップと、分析データについての解析を行うスクリプトを複数選択するステップと、選択された分析データについて選択された複数のスクリプトにより並列的に解析を実行するステップと、を備える。
【発明の効果】
【0009】
上記第1の局面におけるデータ解析装置では、上記のように、選択された分析データについて選択された複数のスクリプトにより並列的に解析を実行する制御が行われる。これにより、一のデータに対して複数のスクリプトごとに個別に処理を実行する作業が不要となるので、ユーザの手間を低減することができる。したがって、複数のスクリプトを実行する場合に、ユーザの手間を低減することができる。また、複数のスクリプトごとに個別に処理を実行する作業を行う場合に比べて、作業時間を短縮化することができる。また、選択された分析データについて選択された複数のスクリプトにより並列的に解析を実行するステップを備える上記第2の局面におけるデータ解析方法においても、同様の効果を得ることができる。
【図面の簡単な説明】
【0010】
【
図1】一実施形態による画像解析装置の構成を示した図である。
【
図2】一実施形態による解析レシピの設定画面を示した図である。
【
図3】一実施形態による解析レシピの設定画面において選択された画像データおよびスクリプトが表示されている画面を示した図である。
【
図4】解析レシピにおけるスクリプトの組み合わせの例を示した図である。
【
図5】一実施形態による制御部による解析フローを示したフロー図である。
【
図6】一実施形態による解析レシピの一例を示した図である。
【
図7】一実施形態の第1変形例による解析レシピの一例を示した図である。
【
図8】一実施形態の第2変形例による解析レシピの一例を示した図である。
【発明を実施するための形態】
【0011】
以下、本発明を具体化した実施形態を図面に基づいて説明する。
【0012】
図1~
図6を参照して、本実施形態による画像解析装置100の構成について説明する。なお、画像解析装置100は、特許請求の範囲の「データ解析装置」の一例である。
【0013】
(画像解析装置の構成)
画像解析装置100は、制御部10と、表示部20と、を備える。また、画像解析装置100には、外部の画像取得部200により取得された画像データ等が保存される記憶部30が設けられている。記憶部30は、たとえばハードディスクまたはフラッシュメモリ等により構成されている。表示部20は、制御部10によるデータの解析により取得された解析結果を表示する。なお、画像取得部200により取得された画像データ等は、画像解析装置100の外部装置に保存されていてもよいし、記憶部30とは異なる画像解析装置100の記憶領域(たとえばキャッシュメモリ)等に保存されていてもよい。また、画像解析装置100自体に解析用の画像データを取得する機構が設けられていてもよい。なお、画像取得部200は、特許請求の範囲の「分析装置」の一例である。
【0014】
制御部10は、画像選択受付手段1、スクリプト選択受付手段2、データ解析手段3、解析レシピ生成手段4、プロパティ登録手段5、スクリプト登録手段6として機能するように構成されている。なお、制御部10において、画像選択受付手段1と、スクリプト選択受付手段2と、データ解析手段3と、解析レシピ生成手段4と、プロパティ登録手段5と、スクリプト登録手段6と、の機能は、プログラムなどのソフトウェアにより実現することが可能である。
【0015】
図2に示すように、解析レシピ生成手段4(制御部10)は、画像データ410について解析を行うための複数の解析工程が直列的に組み合わせられた解析レシピ300を生成する制御を行う。具体的には、解析レシピ300は、学習済みモデルおよび解析アルゴリズムを用いて解析処理を実行する解析処理工程(Step1)と、後述する仕上げ処理が行われる仕上げ処理工程(Step2)と、を含む。すなわち、後述するスクリプトは、画像データ410についての解析のために機械学習により生成された学習済みモデルと、画像データ410についての解析を行うために用いられる解析アルゴリズムと、後述する仕上げ処理に用いられる処理アルゴリズム(第1処理アルゴリズムおよび第2処理アルゴリズム)と、を含む。解析に不適切な画像を除外可能な学習済みモデルが選択された場合には、解析アルゴリズムによってより適切な解析を行うことが可能である。なお、解析レシピ生成手段4(制御部10)により生成された解析レシピ300は、記憶部30に保存(登録)される。また、解析レシピ300および画像データ410は、それぞれ、特許請求の範囲の「解析フロー」および「分析データ」の一例である。以下に、解析レシピ300の具体的な生成方法について説明する。
【0016】
画像選択受付手段1(制御部10)は、解析対象となる画像データ410を選択する操作を受け付ける制御を行う。具体的には、
図2に示すように、解析レシピ300の設定画面において、「テスト画像」の欄310における上欄311の「画像の選択」と表示されたボタン311aが選択されると、記憶部30に保存されている複数の画像データの中から解析対象の画像データ410を選択可能なウィンドウが表示される。また、上欄311の「画像の登録」と表示されたボタン311bが選択されると、記憶部30に保存されていない(たとえばローカルPCに保存された)画像データを解析対象の画像データ410として選択(登録)可能なウィンドウが表示される。選択が受け付けられた画像データ410は、「テスト画像」の下欄312に表示される。
図3に示す例では、細胞400が表示された画像データ410が下欄312に表示されている。
【0017】
また、「画像の登録」と表示されたボタン311bが選択され、画像データ410の選択が受け付けられた際、画像データ410の付随情報の入力が受け付けられる。そして、選択された画像データ410と入力された付随情報とが関連付けられて記憶部30に保存(登録)される。画像データ410の登録の一例として、細胞培養ウェルの画像データの登録について説明する。この場合、たとえば、付随情報として細胞の継代(培養系から培地を除去し細胞を新しい培地に移す操作)数および培養日数を入力可能とすることが考えられる。
【0018】
また、制御部10は、上記の付随情報に基づいて、複数の画像データ410を条件ごとにグルーピングする制御を行う。たとえば、制御部10は、解析対象の複数の画像データ410を、細胞の継代数が同一のグループ、培養日数が同一のグループ、および、細胞の継代数および培養日数の両方が同一のグループ等に分ける制御を行う。
【0019】
スクリプト選択受付手段2(制御部10)は、選択された画像データ410について解析を行うスクリプトを複数選択する操作を受け付ける制御を行う。たとえば、解析レシピ300の設定画面において、「解析処理」の欄320における上欄321の「+スクリプトの追加」と表示されたボタン321aが選択されると、記憶部30に保存されている複数のスクリプトの中から実行するスクリプトを選択可能なウィンドウが表示される。この際、記憶部30に登録されている学習済みモデルおよび解析アルゴリズムの中から実行するスクリプトが選択可能である。制御部10は、選択されたスクリプトを用いて画像データ410の解析を行う。そして、選択されたスクリプトの解析結果は、「解析処理」の下欄322に表示される。
【0020】
ここで、本実施形態では、スクリプト選択受付手段2(制御部10)は、選択された画像データ410について選択された複数のスクリプトにより並列的に解析を実行する制御を行う。具体的には、スクリプト選択受付手段2(制御部10)は、選択された画像データ410について選択された複数の学習済みモデルにより並列的に解析を実行するとともに、選択された画像データ410について選択された複数の解析アルゴリズムにより並列的に解析を実行する制御を行うように構成されている。詳細には、ボタン321aが選択されることにより表示されるウィンドウにおいてスクリプトAおよびスクリプトBが選択された場合、スクリプトAおよびスクリプトBの両方の選択が受け付けられる。この場合、データ解析手段3(制御部10)は、スクリプトAおよびスクリプトBを用いた解析を並列的に実行する。なお、
図3では2つのスクリプト(AおよびB)が選択される例を示しているが、1つのスクリプトのみ、または、3つ以上のスクリプトが選択される場合もある。
【0021】
具体的には、
図4(A)に示す例の解析レシピ301では、スクリプトAのみが選択されている。また、
図4(B)に示す例の解析レシピ302では、スクリプトA1~A4とスクリプトBとが並列的に組み合わされ、かつ、スクリプトA1~A4が互いに直列的に組み合わされている。
【0022】
また、本実施形態では、制御部10は、選択された2以上のスクリプトの各々の解析結果を、表示部20の同一画面に表示する制御を行うように構成されている。具体的には、解析処理工程(Step1)において選択されたスクリプトAおよびスクリプトBの各々の解析結果(データ420、データ430)は、「解析処理」の下欄322に並列的に表示される。また、後述する仕上げ処理工程(Step2)において選択された解析結果(データ450、データ460)も、解析処理工程において選択されたスクリプトの解析結果と同一画面に表示される。すなわち、解析レシピ300に含まれるスクリプトの全ての解析結果は、同一画面上に表示される。また、
図3では、データ420の一例として、細胞400と背景とを区別するための二値化処理アルゴリズムの解析結果が図示されている。また、
図3では、データ430の一例として、細胞400の特徴(たとえば粒子径や面積等)の違いによって細胞400を色分けする解析アルゴリズムの解析結果が図示されている。
【0023】
制御部10は、一の解析アルゴリズムを実行することにより得られた解析結果を入力データとして、一の解析アルゴリズムと直列的に組み合わせられる他の解析アルゴリズムを実行するように構成されている。具体的には、下欄322の「+スクリプトの処理」と表示されたボタン322aが選択されることにより、スクリプトAと直列的に組み合わされ、スクリプトAの解析結果を入力として所定の解析を行う他の1以上のスクリプトが選択可能になる。同様に、下欄322の「+スクリプトの処理」と表示されたボタン322bが選択されることにより、スクリプトBと直列的に組み合わされ、スクリプトBの解析結果を入力として所定の解析を行う他の1以上のスクリプトが選択可能になる。
【0024】
また、本実施形態では、スクリプト選択受付手段2(制御部10)は、解析レシピ300の複数の解析工程の各々において、選択された画像データ410について選択された複数のスクリプトにより並列的に解析を実行するように構成されている。すなわち、スクリプト選択受付手段2(制御部10)は、解析処理工程(Step1)だけではなく、後述する仕上げ処理工程(Step2)においても、並列的に実行可能な複数のスクリプトのの選択を受け付ける制御を行う。
【0025】
また、スクリプト登録手段6(制御部10)は、ユーザの操作に基づいて、画像解析装置100にスクリプトを追加(登録)する制御を行う。
【0026】
また、プロパティ登録手段5(制御部10)(
図1参照)は、スクリプトの各々に対して入出力の型、用途、および拡張子を含むプロパティを登録する制御を行う。具体的には、プロパティ登録手段5(制御部10)は、スクリプト登録手段6(制御部10)によりスクリプトが画像解析装置100(記憶部30)に登録される際(プラグイン時)に、ユーザの操作に基づいてスクリプトのプロパティの登録を行う。入出力の型は、たとえば、スクリプトの入出力データの次元に関する情報を含む。用途は、たとえば、スクリプトの入出力データが画像データであるかテーブルデータであるかの情報を含む。拡張子は、スクリプトの入出力データのファイル形式(たとえばcsv、jpg、およびtxt等)に関する情報を含む。
【0027】
また、プロパティ登録手段5(制御部10)(
図1参照)は、スクリプトの各々に対して入出力の型、用途、および拡張子を含むプロパティを登録する制御を行う。具体的には、プロパティ登録手段5(制御部10)は、スクリプトが画像解析装置100(記憶部30)に登録される際(プラグイン時)に、スクリプトのプロパティの登録を行う。入出力の型は、たとえば、スクリプトの入出力データの次元に関する情報を含む。用途は、たとえば、スクリプトの入出力データが画像データであるかテーブルデータであるかの情報を含む。拡張子は、スクリプトの入出力データのファイル形式(たとえばcsv、jpg、およびtxt等)に関する情報を含む。
【0028】
ここで、本実施形態では、制御部10は、直列的に組み合わせられた2つのスクリプトのうち後のスクリプトのプロパティが直列的に組み合わせられた2つのスクリプトのうち先のスクリプトのプロパティと一致する場合に、後のスクリプトを実行するように構成されている。たとえば、スクリプトAの出力データの型が2次元データであるとすると、スクリプトAと直列的に組み合わされる後のスクリプトの入力データの型が2次元データである場合に、上記後のスクリプトが実行される。また、入出力データの型ではなく、用途または拡張子に基づいて上記の制御が行われてもよいし、入出力の型、用途、および拡張子のうちの2以上に基づいて上記の制御が行われてもよい。なお、先のスクリプトと後のスクリプトとのプロパティが一致しない場合に、後のスクリプトを実行する際に警告が発せられるようにしてもよい。
【0029】
また、本実施形態では、制御部10は、選択された1以上の後のスクリプトのうち、先のスクリプトのプロパティと一致するスクリプトを実行するように構成されている。たとえば、スクリプトAと直列的に組み合わされ、並列的に実行される2つのスクリプトのうち一方のみがスクリプトAとプロパティが一致する場合に、上記一方のスクリプトのみ実行され、他方のスクリプトは実行されない。
【0030】
また、画像選択受付手段1(制御部10)により選択が受け付けられる画像データ410には、上記のプロパティが登録されている。画像選択受付手段1により選択が受け付けられた画像データ410を入力とするスクリプトは、画像データ410のプロパティと一致している場合に実行される。
【0031】
また、複数のスクリプトの各々には、解析結果(出力データ)が後述する仕上げ処理の対象か否かに関する情報が含まれている。解析処理工程における各スクリプトの解析結果のうち仕上げ処理の対象であるデータ440は、仕上げ処理の対象として一時的に保存(バッファ)されるとともに欄330に表示される。また、
図3では、簡略化のため、データ440が白抜きの画像で図示されている。
【0032】
本実施形態では、スクリプトは、スクリプト選択受付手段2(制御部10)により選択された複数のスクリプトの各々の解析結果のうち少なくとも2以上の解析結果をまとめる処理を実行するための第1処理アルゴリズムを含む。具体的には、第1処理アルゴリズムが実行されることにより、仕上げ処理の対象として一時的に保存(バッファ)された複数の解析結果がまとめられる。
【0033】
また、本実施形態では、スクリプトは、2以上の解析結果のばらつきを解析する処理を実行するための第2処理アルゴリズムを含む。具体的には、第2処理アルゴリズムが実行されることにより、仕上げ処理の対象として一時的に保存(バッファ)された複数の解析結果のばらつきが解析される。
【0034】
また、本実施形態では、制御部10は、第1処理アルゴリズムおよび第2処理アルゴリズムを並列的に実行可能に構成されているとともに、第1処理アルゴリズムおよび第2処理アルゴリズムのうちの1以上の選択を受け付けるように構成されている。具体的には、解析レシピ300の設定画面において、「仕上げ処理」の欄340における上欄341の「+スクリプトの追加」と表示されたボタン341aが選択されると、記憶部30に保存されている第1処理アルゴリズムおよび第2処理アルゴリズムを選択可能なウィンドウが表示される。たとえば第1処理アルゴリズムおよび第2処理アルゴリズムの両方が選択された場合、第1処理アルゴリズムおよび第2処理アルゴリズムが並列的に実行されるとともに、第1処理アルゴリズムおよび第2処理アルゴリズムの各々に対応した解析結果(データ450、460)が「仕上げ処理」の下欄342に表示される。なお、第1処理アルゴリズムおよび第2処理アルゴリズムの一方のみを選択することも可能である。また、
図3では、簡略化のため、データ450およびデータ460の各々が白抜きの画像で図示されている。
【0035】
(解析フロー)
次に、
図5を参照して、画像解析装置100の制御部10による解析フローを説明する。
【0036】
まず、
図5に示すように、ステップ101において、ユーザによる画像データ410の選択操作の受け付けが行われる。具体的には、
図2および
図3に示す解析レシピ300の設定画面において、「画像の選択」と表示されたボタン311aまたは「画像の登録」と表示されたボタン311bが選択されることにより、解析処理の対象となる画像データ410の選択が可能となる。
【0037】
次に、ステップ102において、選択された画像データ410が条件ごとにグルーピングされる。具体的には、制御部10は、ステップ101において選択された複数の画像データ410を、上記の細胞の継代数および培養日数等の条件ごとに複数のグループに分ける制御を行う。複数のグループの各々には、1以上の画像データが含まれる。
【0038】
次に、ステップ103では、制御部10は、ステップ102においてグルーピングされた複数のグループのうち解析処理がまだ行われていない一のグループの画像データ410をリストアップする制御を行う。
【0039】
次に、ステップ104では、制御部10は、ステップ103においてリストアップされた未解析の画像データ410のうち1つを読み込む制御を行う。
【0040】
次に、ステップ105では、データ解析手段3(制御部10)は、ステップ104において読み込まれた1つの画像データ410について、解析レシピ300に沿った処理を実行する制御を行う。解析レシピ300の一例については、
図6を参照して後述する。なお、ステップ105では、解析レシピ300のうち解析処理工程(Step1、
図3参照)のみが行われる。
【0041】
次に、ステップ106では、制御部10は、ステップ105において取得された複数のスクリプトの各々の解析結果が仕上げ処理の対象か否かを判定する。なお、制御部10は、ステップ105において複数のスクリプトの各々が実行されるごとに解析結果が仕上げ処理の対象か否かを判定する。すなわち、制御部10は、解析レシピ300に沿った処理を実行しながら仕上げ処理の対象か否かの判定を行う。仕上げ処理の対象であると判定された解析結果は、ステップ107の処理が行われる。仕上げ処理の対象ではないと判定された解析結果は、ステップ108に処理が行われる。なお、解析レシピ300における複数のスクリプトの全てが実行し終わった後に、全ての解析結果の各々について仕上げ処理の対象か否かの判定が行われてもよい。
【0042】
ステップ107では、ステップ106において仕上げ処理の対象であると判定された解析結果が一時的にキャッシュメモリ等にバッファされる。ステップ108では、ステップ106において仕上げ処理の対象ではないと判定された解析結果が記憶部30に保存(登録)される。
【0043】
次に、ステップ109では、ステップ103においてリストアップされた全ての画像データ410の解析レシピ300に沿った処理が完了されたか否かの判定が行われる。リストアップされた全ての画像データ410の解析レシピ300に沿った処理が完了されたと判定された場合は、ステップ110に進む。リストアップされた全ての画像データ410の解析レシピ300に沿った処理が完了されていないと判定された場合は、ステップ104に戻る。
【0044】
次に、ステップ110ではステップ102において条件ごとにグルーピングされた全てのグループの解析レシピ300に沿った処理が完了されたか否かの判定が行われる。全てのグループの解析レシピ300に沿った処理が完了されたと判定された場合は、ステップ111に進む。全てのグループの解析レシピ300に沿った処理が完了されていないと判定された場合は、ステップ103に戻る。
【0045】
次に、ステップ111では、仕上げ処理に指定された(ステップ107においてバッファされた)データに対して仕上げ処理が行われる。すなわち、解析レシピ300における仕上げ処理工程(Step2、
図3参照)が行われる。仕上げ処理(第1処理アルゴリズムおよび第2処理アルゴリズム)の一例については、後述する。
【0046】
そして、ステップ112において、ステップ111において取得された仕上げ処理の解析結果が記憶部30に保存(登録)される。
【0047】
(解析レシピ)
次に、
図6を参照して、解析レシピ300の一例を説明する。なお、
図6のステップ1051~1057は、
図5のステップ105に含まれる工程である。また、
図6のステップ1111~1112は、
図5のステップ111に含まれる工程である。
【0048】
まず、
図6に示すように、制御部10は、入力される画像データ410に対して、ピントがあった画像およびピントがあっていない画像の特徴を学習した学習済みモデルを適用させる。これにより、制御部10は、入力される画像データ410においてピントが合った細胞400の画像と、ピントが合っていない細胞400の画像とを、たとえば色により区別して表示する制御を行う。なお、上記とは異なる方法によって、ピントが合った細胞400の画像とピントが合っていない細胞400の画像とを区別してもよい。また、細胞400以外の被写体が表示される画像データが用いられてもよい。
【0049】
次に、ステップ1052では、ステップ1051の解析結果(出力データ)を入力データとして、フォーカス一致度評価アルゴリズムが実行される。これにより、上記入力データにおいて、細胞400が表示されている全ての領域のうちピントが合った細胞400が表示されている領域の割合が算出される。
【0050】
次に、ステップ1053では、ステップ1052の解析結果(出力データ)を入力データとして、細胞領域および背景領域を学習した学習済みモデルが適用される。これにより、上記入力データにおいて細胞領域と背景領域とが区別される。
【0051】
次に、ステップ1054では、ステップ1053の解析結果(出力データ)を入力データとして、二値化処理アルゴリズムが適用される。これにより、入力データにおける細胞領域の値および背景領域の値が、それぞれ、1および0に設定されたデータが取得される。
【0052】
次に、ステップ1054の解析結果(出力データ)を入力データとする解析アルゴリズムとして、粒子径解析アルゴリズムおよび面積率解析アルゴリズムが選択される。これにより、ステップ1055およびステップ1056において、ステップ1054における解析結果(出力データ)を入力データとして、粒子径解析アルゴリズム(ステップ1055)と細胞400の面積率解析アルゴリズム(ステップ1056)とが並列的に実行される。ステップ1055の粒子径解析アルゴリズムが実行されることにより、入力データに表示される細胞400の粒子径が算出される。ステップ1056の細胞400の面積率解析アルゴリズムが実行されることにより、入力データに表示される細胞400の面積率(たとえば、細胞400が表示される領域の全面積に対する各細胞400が占める面積率)が算出される。
【0053】
次に、ステップ1057において、ステップ1055の解析処理(出力データ)を入力データとして、頻度分布グラフ作成アルゴリズムが実行される。これにより、粒子径ごとの細胞400の個数を示すグラフが作成される。
【0054】
次に、ステップ1111において、ステップ1056の解析結果(出力データ)およびステップ1057の解析結果(出力データ)を入力データとして、グラフ作成用の第1処理アルゴリズムが実行される。具体的には、ステップ1056の処理により所定のグラフが作成されるとすると、第1処理アルゴリズムが実行されることにより、ステップ1056の処理により取得されたグラフと、ステップ1057の処理により取得されたグラフとが統合される(1つのグラフにまとめられる)。また、第1処理アルゴリズムが実行されることにより、互いに異なる条件に対応するグラフ同士や互いに異なる画像データ410のグラフ同士が統合されてもよい。
【0055】
また、ステップ1112においては、第2処理アルゴリズムが実行されることにより、互いに異なる条件に対応するデータ同士や互いに異なる画像データ410のデータ同士のばらつきが解析される。なお、上記のステップ1111およびステップ1112の処理内容については一例であり、これらに限られない。
【0056】
なお、ステップ1111の解析処理とステップ1112の解析処理とは、並列的に実行される。
【0057】
(本実施形態の効果)
本実施形態の画像解析装置100では、以下のような効果を得ることができる。
【0058】
本実施形態では、上記のように、画像解析装置100は、選択された画像データ410について選択された複数のスクリプトにより並列的に解析を実行する制御を行う制御部10を備える。これにより、一のデータに対して複数のスクリプトごとに個別に処理を実行する作業が不要となるので、ユーザの手間を低減することができる。したがって、複数のスクリプトを実行する場合に、ユーザの手間を低減することができる。また、複数のスクリプトごとに個別に処理を実行する作業を行う場合に比べて、作業時間を短縮化することができる。また、選択された複数ののスクリプトの各々の解析結果が同一画面に表示されることによって、ユーザは、選択された複数のスクリプトの各々の解析結果を同一画面上において対比することができる。
【0059】
また、本実施形態では、以下のように構成したことによって、更なる効果が得られる。
【0060】
本実施形態では、上記のように、制御部10は、画像データ410について解析を行うための複数の解析工程が直列的に組み合わせられた解析レシピ300を生成する制御を行うとともに、生成された解析レシピ300の複数の解析工程の各々において、選択された画像データ410について選択された複数のスクリプトにより並列的に解析を実行するように構成されている。これにより、複数の解析工程の各々においてスクリプトを並行して実行させることができるので、ユーザの手間をより低減することができる。
【0061】
また、本実施形態では、上記のように、スクリプトは、画像データ410についての解析のために機械学習により生成された学習済みモデルと、画像データ410についての解析を行うために用いられる解析アルゴリズムと、を含む。また、制御部10は、選択された画像データ410について選択された複数の学習済みモデルにより並列的に解析を実行するとともに、選択された画像データ410について選択された複数の解析アルゴリズムにより並列的に解析を実行するように構成されている。これにより、複数の学習済みモデルを並行して実行できるとともに複数の解析アルゴリズムを並行して実行できるので、学習済みモデルを用いた解析および解析アルゴリズムを用いた解析の各々においてユーザの手間を低減することができる。
【0062】
また、本実施形態では、上記のように、制御部10は、一の解析アルゴリズムを実行することにより得られた解析結果を入力データとして、一の解析アルゴリズムと直列的に組み合わせられる他の解析アルゴリズムを実行するように構成されている。これにより、解析アルゴリズム同士を直列的に組み合わせることにより、解析レシピ300を容易に拡張することができる。また、一のアルゴリズムと他のアルゴリズムとが1つのスクリプトとして記載されている場合と異なり、一のアルゴリズムおよび他のアルゴリズムの各々を個別に流用することができる。その結果、解析レシピ300のバリエーションおよび複数のアルゴリズムからなる処理モジュールのバリエーションの各々を容易に増加させることができる。
【0063】
また、一のアルゴリズムと他のアルゴリズムとが1つのスクリプトとして記載されている場合と異なり、一のアルゴリズムと他のアルゴリズムとを個別のスクリプトとすることにより、一のアルゴリズムおよび他のアルゴリズムの各々の解析結果を個別に取得および確認することができる。その結果、意図しない解析結果が得られた場合に、各アルゴリズムを個別に修正することができる。さらに、各アルゴリズムの解析結果に基づきデータのばらつきを解析すること、および、各データをまとめる処理を容易に行うことができる。
【0064】
また、一のアルゴリズムと他のアルゴリズムとが1つのスクリプトとして記載されている場合に比べて、スクリプトの記載量が少なくなるので、他のスクリプトと部分的に構成が類似してしまう可能性を低減することができる。その結果、他の類似するスクリプトが検索されてしまう可能性を低減することができるので、スクリプトの検索を容易化することができる。
【0065】
また、本実施形態では、上記のように、制御部10は、スクリプトの各々に対して入出力の型、用途、および拡張子を含むプロパティを登録する制御を行うとともに、直列的に組み合わせられた2つのスクリプトのうち後のスクリプトのプロパティが2つのスクリプトのうち先のスクリプトのプロパティと一致する場合に、後のスクリプトを実行するように構成されている。これにより、先のスクリプトとプロパティが異なる後のスクリプトが実行されるのを防止することができるので、後のスクリプトにより不整合が生じる解析結果が生成されるのを抑制することができる。また、ユーザは、先のスクリプトのプロパティに基づいて後のスクリプトを選択することができるので、後のスクリプトを容易に選択することができる。
【0066】
また、本実施形態では、上記のように、制御部10は、選択された1以上の後のスクリプトのうち、先のスクリプトのプロパティと一致するスクリプトを実行するように構成されている。これにより、選択された1以上の後のスクリプトのうち、先のスクリプトのプロパティと一致しないものは実行されないので、先のスクリプトのプロパティと一致しないスクリプトが実行されることに起因して制御部10の制御負荷が増加するのを防止することができる。
【0067】
また、本実施形態では、上記のように、スクリプトは、選択された複数のスクリプトの各々の解析結果のうち少なくとも2以上の解析結果をまとめる処理を実行するための第1処理アルゴリズムを含む。これにより、第1処理アルゴリズムにより、2以上の解析結果に基づいて1つの解析結果を生成することができる。その結果、ユーザは、まとめられた1つの解析結果に基づいて、2以上の解析結果の互いの相間関係を容易に把握することができる。
【0068】
また、本実施形態では、上記のように、スクリプトは、2以上の解析結果のばらつきを解析する処理を実行するための第2処理アルゴリズムをさらに含む。これにより、ユーザは、第2処理アルゴリズムの処理結果に基づいて、2以上の解析結果の互いの相間関係を容易に把握することができる。
【0069】
また、本実施形態では、上記のように、制御部10は、第1処理アルゴリズムおよび第2処理アルゴリズムを並列的に実行可能に構成されている。これにより、第1処理アルゴリズムおよび第2処理アルゴリズムを並行して実行することができるので、2以上の解析結果をまとめる処理および2以上の解析結果のばらつきの解析を個別に行う場合に比べて、ユーザの手間を低減することができる。
【0070】
また、本実施形態では、上記のように、データ解析方法は、選択された画像データ410について選択された複数のスクリプトにより並列的に解析を実行するステップを備える。これにより、一のデータに対して複数のスクリプトを並行して実行することができる。その結果、一のデータに対して複数のスクリプトごとに個別に処理を実行する作業が不要となるので、ユーザの手間を低減することが可能な画像解析方法を提供することができる。
【0071】
[変形例]
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更(変形例)が含まれる。
【0072】
たとえば、上記実施形態では、複数のスクリプト同士が直列的および並列的に組み合わされた解析レシピ300の例を示したが、本発明はこれに限られない。たとえば、複数のスクリプト同士が直列的にのみ組み合わされる解析レシピ500(
図7参照)が生成されてもよいし、複数のスクリプト同士が並列的にのみ組み合わされる解析レシピ600(
図8参照)が生成されてもよい
【0073】
また、本実施形態では、上記のように、解析アルゴリズム同士が直列的および並列的に組み合わされる例を示したが、本発明はこれに限られない。複数の解析アルゴリズムからなる解析モジュール同士が直列的および並列的に組み合わされてもよいし、上記モジュールと解析アルゴリズム(学習済みモデル)とが直列的および並列的に組み合わされてもよい。
【0074】
また、上記実施形態では、解析レシピ300に、学習済みモデルと解析アルゴリズムの両方が含まれる例を示したが、本発明はこれに限られない。たとえば、解析レシピに学習済みモデルおよび解析アルゴリズムの一方が含まれていなくてもよい。また、解析レシピに仕上げ処理が含まれていなくてもよい。
【0075】
また、上記実施形態では、学習済みモデルおよび解析アルゴリズムの両方を選択可能な解析処理工程が設けられる例を示したが、本発明はこれに限られない。学習済みモデルのみが選択可能な工程と、解析アルゴリズムのみが選択可能な工程とが、互いに直列的に組合わせられていてもよい。
【0076】
また、上記実施形態では、スクリプトが、仕上げ処理用のアルゴリズムとして、第1処理アルゴリズムおよび第2処理アルゴリズムを含む例を示したが、本発明はこれに限られない。スクリプトが、仕上げ処理用のアルゴリズムとして、第1処理アルゴリズムおよび第2処理アルゴリズム以外に2以上の処理結果に対して処理を行う処理アルゴリズムを含んでいてもよい。
【0077】
また、上記実施形態では、画像データ410を解析する画像解析装置100をデータ解析装置の例に示したが、本発明はこれに限られない。データ解析装置が、画像データ以外の分析データ(たとえばガスクロマトグラフィの分析結果等)を解析する解析装置であってもよい。
【0078】
(項目1)
分析装置により取得された分析データを選択する操作を受け付ける制御と、
選択された前記分析データについて解析を行うスクリプトを複数選択する操作を受け付ける制御と、
選択された前記分析データについて選択された複数の前記スクリプトにより並列的に解析を実行する制御と、を行う制御部と、
前記制御部による前記分析データの解析により取得された解析結果を同一画面上に表示する表示部と、を備える、データ解析装置。
【0079】
(項目2)
前記制御部は、前記分析データについて解析を行うための複数の解析工程が直列的に組み合わせられた解析フローを生成する制御を行うとともに、生成された前記解析フローの前記複数の解析工程の各々において、選択された前記分析データについて選択された複数の前記スクリプトにより並列的に解析を実行するように構成されている、項目1に記載のデータ解析装置。
【0080】
(項目3)
前記スクリプトは、前記分析データについての解析のために機械学習により生成された学習済みモデルと、前記分析データについての解析を行うために用いられる解析アルゴリズムと、を含み、
前記制御部は、選択された前記分析データについて選択された複数の前記学習済みモデルにより並列的に解析を実行するとともに、選択された前記分析データについて選択された複数の前記解析アルゴリズムにより並列的に解析を実行するように構成されている、項目1または2に記載のデータ解析装置。
【0081】
(項目4)
前記スクリプトは、前記分析データについての解析のために機械学習により生成された学習済みモデルと、前記分析データについての解析を行うために用いられる解析アルゴリズムと、を含み、
前記制御部は、一の前記解析アルゴリズムを実行することにより得られた前記解析結果を入力データとして、前記一の解析アルゴリズムと直列的に組み合わせられる他の前記解析アルゴリズムを実行するように構成されている、項目1~3のいずれか1項に記載のデータ解析装置。
【0082】
(項目5)
前記制御部は、前記スクリプトの各々に対して入出力の型、用途、および拡張子を含むプロパティを登録する制御を行うとともに、直列的に組み合わせられた2つの前記スクリプトのうち後の前記スクリプトの前記プロパティが前記2つのスクリプトのうち先の前記スクリプトの前記プロパティと一致する場合に、前記後のスクリプトを実行するように構成されている、項目1~4のいずれか1項に記載のデータ解析装置。
【0083】
(項目6)
前記制御部は、選択された1以上の前記後のスクリプトのうち、前記先のスクリプトの前記プロパティと一致する前記スクリプトを実行するように構成されている、項目5に記載のデータ解析装置。
【0084】
(項目7)
前記スクリプトは、選択された複数の前記スクリプトの各々の前記解析結果のうち少なくとも2以上の前記解析結果をまとめる処理を実行するための第1処理アルゴリズムを含む、項目1~6のいずれか1項に記載のデータ解析装置。
【0085】
(項目8)
前記スクリプトは、2以上の前記解析結果のばらつきを解析する処理を実行するための第2処理アルゴリズムをさらに含む、項目7に記載のデータ解析装置。
【0086】
(項目9)
前記制御部は、前記第1処理アルゴリズムおよび前記第2処理アルゴリズムを並列的に実行可能に構成されている、項目8に記載のデータ解析装置。
【0087】
(項目10)
分析装置により取得された分析データの選択を受け付けるステップと、
前記分析データについての解析を行うスクリプトを複数選択するステップと、
選択された前記分析データについて選択された複数の前記スクリプトにより並列的に解析を実行するステップと、を備える、データ解析方法。
【符号の説明】
【0088】
10 制御部
20 表示部
100 画像解析装置(データ解析装置)
200 画像取得部(分析装置)
300、301、302、500、600 解析レシピ(解析フロー)
410 画像データ(分析データ)