(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022035929
(43)【公開日】2022-03-04
(54)【発明の名称】心電図データの拡張方法並びにその装置、電子機器及び媒体
(51)【国際特許分類】
A61B 5/346 20210101AFI20220225BHJP
G06N 20/00 20190101ALI20220225BHJP
【FI】
A61B5/04 312A
G06N20/00
【審査請求】有
【請求項の数】10
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2020194756
(22)【出願日】2020-11-24
(11)【特許番号】
(45)【特許公報発行日】2021-02-17
(31)【優先権主張番号】202010850174.2
(32)【優先日】2020-08-21
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】520461613
【氏名又は名称】生物島実験室
【氏名又は名称原語表記】BIOLAND LABORATORY
【住所又は居所原語表記】No.6, helix 3rd road, Guangzhou International Bio Island ,Haizhu District, Guangzhou, Guangdong, China
(71)【出願人】
【識別番号】520461624
【氏名又は名称】中山大学孫逸仙記念医院
【氏名又は名称原語表記】SUN YAT-SEN MEMORIAL HOSPITAL, SUN YAT-SEN UNIVERSITY
【住所又は居所原語表記】107 Yanjiang West Road,Yuexiu District, Guangzhou, Guangdong, China
(74)【代理人】
【識別番号】100187322
【弁理士】
【氏名又は名称】前川 直輝
(72)【発明者】
【氏名】王景峰
(72)【発明者】
【氏名】黄凱
(72)【発明者】
【氏名】陳様新
(72)【発明者】
【氏名】張玉玲
(72)【発明者】
【氏名】郭思▲路▼
(72)【発明者】
【氏名】宋日輝
(72)【発明者】
【氏名】趙宝沢
(72)【発明者】
【氏名】張恒非
【テーマコード(参考)】
4C127
【Fターム(参考)】
4C127AA02
4C127CC01
4C127GG02
(57)【要約】 (修正有)
【課題】心電図データの拡張方法並びにその装置、電子機器及び媒体を提供する。
【解決手段】心電図データ拡張方法は、心電図データを取得するステップS101と、前記心電図データを処理して複数の心拍データを取得するステップS102と、前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、拡張データを生成するステップS103とを含む。心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、機械学習のモデルを十分に訓練して、訓練済みモデルの表現を高めることができる。
【選択図】
図1
【特許請求の範囲】
【請求項1】
心電図データを取得するステップと、
前記心電図データを処理して複数の心拍データを取得するステップと、
前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するステップとを含む、ことを特徴とする心電図データの拡張方法。
【請求項2】
前記心電図データを処理して複数の心拍データを取得する前記ステップは、
前記心電図データを前処理するステップと、
前処理された心電図データに対して心拍識別を行って、複数の心拍データを取得するステップとを含む、ことを特徴とする請求項1に記載の方法。
【請求項3】
前記前処理は、
離散ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、最低レベルの近似値をゼロに設定し、離散ウェーブレット再構成によってベースライン較正後の心電図データを取得するステップを含む、ことを特徴とする請求項2に記載の方法。
【請求項4】
前記前処理は、
定常ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、詳細値に対して閾値フィルタリングを行い、定常ウェーブレット再構成によってノイズ低減後の心電図データを取得するステップを含む、ことを特徴とする請求項2または3に記載の方法。
【請求項5】
前処理された心電図データに対して心拍識別を行って複数の心拍データを取得する前記ステップは、
前処理された心電図データにおける第1誘導の誘導データに対して、定常ウェーブレット変換によってマルチレベルウェーブレット分解を行って、分解結果を取得するステップと、
前記分解結果に対して特徴識別を行って、前記第1誘導の誘導データにおけるR波の波ピークの位置を確定するステップと、
前記第1誘導の誘導データにおけるR波の波ピークの位置に基づいて、前記第1誘導及び/又は他の誘導の誘導データを複数の心拍データに分割するステップとを含む、ことを特徴とする請求項2に記載の方法。
【請求項6】
前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成する前記ステップは、
前記複数の心拍データから第1心拍データ及び第2心拍データを確定するステップと、
前記第1心拍データと第2心拍データとの少なくとも1種の誘導データが接合可能である場合、第3心拍データが生成されるように前記第1心拍データと第2心拍データとを接合するステップと、
前記第1心拍データ及び/又は第2心拍データのラベルを取得するステップと、
前記第1心拍データ及び/又は第2心拍データのラベルに基づいて、前記第3心拍データのラベルを確定し、ラベル付き第3心拍データを拡張データとして確定するステップとを含む、ことを特徴とする請求項1に記載の方法。
【請求項7】
前記第1心拍データと第2心拍データとの少なくとも1種の誘導データが接合可能である場合、第3心拍データが生成されるように前記第1心拍データと第2心拍データとを接合する前記ステップは、
誘導データの種類毎に対して、前記第1心拍データと第2心拍データとにおける当該種類の誘導データが、同じR波方向を有し且つR波後の予め設定された時間内にゼロクロス点がある条件を満たす場合、前記ゼロクロス点の位置に基づいて、前記第1心拍データと第2心拍データとにおける前記種類の誘導データを、仮心拍データの当該種類の誘導データとして接合するステップと、前記条件が満たされない場合は、前記第2心拍データの前記種類の誘導データを、仮心拍データの当該種類の誘導データとして確定するステップと、
前記仮心拍データと第2心拍データとが完全同一でない場合、前記仮心拍データを第3心拍データとして確定するステップとを含む、ことを特徴とする請求項6に記載の方法。
【請求項8】
心電図データを取得するように構成されている取得モジュールと、
前記心電図データを処理して複数の心拍データを取得するように構成されている処理モジュールと、
前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するように構成されている生成モジュールとを含む、ことを特徴とする心電図データの拡張装置。
【請求項9】
電子機器であって、メモリとプロセッサーを含み、前記メモリは、1つ又は複数のコンピュータ命令を記憶するために使用され、前記1つ又は複数のコンピュータ命令は、請求項1~7のいずれか一項に記載の方法を実現するように前記プロセッサーによって実行される、ことを特徴とする電子機器。
【請求項10】
コンピュータ命令が記憶されている読み取り可能な記憶媒体であって、このコンピュータ命令は、請求項1~7のいずれか一項に記載の方法を実現するようにプロセッサーによって実行される、ことを特徴とする読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は医療技術の分野に関し、具体的には、心電図データの拡張方法並びにその装置、電子機器及び媒体に関する。
【背景技術】
【0002】
データ拡張は、深層学習によく使用されている技巧の1つであり、主に学習用データセットを増加させ、データセットをできるだけ多様にして、訓練済みモデルの汎化能力をより強くするために使用される。実際においては、すべての拡張方式が現実の学習用データに適するわけではない。データセットの特徴に応じて、どのデータ拡張方式を使用するかを決定する必要がある。現在のデータ拡張は主に水平/垂直反転、回転、拡大縮小、クロッピング、カット、平行移動、コントラスト、色ジッター、ノイズなどを含む。
【0003】
心電図は、心電図測定装置を使用して、体表から心臓の各動きのサイクルで発生する電気活動の変化が記録されたパターンを示すものであり、各セグメントの信号には、特定の医学的意義がある。しかし、反転、回転、クロッピングなどの従来のデータ拡張方法の使用は、心電図の医学的意義を破壊し、機械学習モデルの訓練に有効な効果を果たすことができない。つまり、一般的な画像処理のデータ拡張手段は、心電信号のデータ拡張に適用することができない。
【発明の概要】
【0004】
本開示の実施例は、関連技術における問題を解決するための心電図データ拡張方法、装置、電子機器及び媒体を提供する。
【0005】
第1態様では、本開示の実施例は、心電図データの拡張方法を提供する。この方法は、
心電図データを取得するステップと、
前記心電図データを処理して複数の心拍データを取得するステップと、
前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するステップとを含む。
【0006】
第1態様を参照して、本開示の第1態様の第1実施形態では、前記心電図データを処理して複数の心拍データを取得する前記ステップは、
前記心電図データを前処理するステップと、
前処理された心電図データに対して心拍識別を行って、複数の心拍データを取得するステップとを含む。
【0007】
第1態様の第1実施形態を参照して、本開示の第1態様の第2実施形態では、前記前処理は、
離散ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、最低レベルの近似値をゼロに設定し、離散ウェーブレット再構成によってベースライン較正後の心電図データを取得するステップを含む。
【0008】
第1態様の第1実施形態又は第2実施形態を参照して、本開示の第1態様の第3実施形態では、前記前処理は、
定常ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、詳細値に対して閾値フィルタリングを行い、定常ウェーブレット再構成によってノイズ低減後の心電図データを取得するステップを含む。
【0009】
第1態様の第1実施形態を参照して、本開示の第1態様の第4実施形態では、前処理された心電図データに対して心拍識別を行って複数の心拍データを取得する前記ステップは、
前処理された心電図データにおける第1誘導の誘導データに対して、定常ウェーブレット変換によってマルチレベルウェーブレット分解を行って、分解結果を取得するステップと、
前記分解結果に対して特徴識別を行って、前記第1誘導の誘導データにおけるR波の波ピークの位置を確定するステップと、
前記第1誘導の誘導データにおけるR波の波ピークの位置に基づいて、前記第1誘導及び/又は他の誘導の誘導データを複数の心拍データに分割するステップとを含む。
【0010】
第1態様を参照して、本開示の第1態様の第5実施形態では、前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、拡張データを生成する前記ステップは、
前記複数の心拍データから第1心拍データ及び第2心拍データを確定するステップと、
前記第1心拍データと第2心拍データとのうち少なくとも1種の誘導データが接合可能である場合、第3心拍データを生成されるように前記第1心拍データと第2心拍データとを接合するステップと、
前記第1心拍データ及び/又は第2心拍データのラベルを取得するステップと、
前記第1心拍データ及び/又は第2心拍データのラベルに基づいて、前記第3心拍データのラベルを確定し、ラベル付き第3心拍データを拡張データとして確定するステップとを含む。
【0011】
第1態様の第5実施形態を参照して、本開示の第1態様の第6実施形態では、前記第1心拍データと第2心拍データとのうち少なくとも1種の誘導データが接合可能である場合、第3心拍データを生成されるように前記第1心拍データと第2心拍データとを接合する前記ステップは、
誘導データの種類毎に対して、前記第1心拍データと第2心拍データとにおける当該種類の誘導データが、同じR波方向を有し且つR波後の予め設定された時間内にゼロクロス点がある条件を満たす場合、前記ゼロクロス点の位置に基づいて、前記第1心拍データと第2心拍データとにおける前記種類の誘導データを、仮心拍データの当該種類の誘導データとして接合するステップと、前記条件が満たされない場合は、前記第2心拍データの前記種類の誘導データを、仮心拍データの当該種類の誘導データとして確定するステップと、
前記仮心拍データと第2心拍データとが完全同一でない場合、前記仮心拍データを第3心拍データとして確定するステップとを含む。
【0012】
第2態様では、本開示の実施例は、心電図データ拡張装置を提供する。この装置は、
心電図データを取得するように構成されている取得モジュールと、
前記心電図データを処理して複数の心拍データを取得するように構成されている処理モジュールと、
前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するように構成されている生成モジュールとを含む。
【0013】
第3態様では、本開示の実施例は電子機器を提供する。この電子機器は、メモリとプロセッサーを含む。前記メモリは、1つ又は複数のコンピュータ命令を記憶するために使用され、前記1つ又は複数のコンピュータ命令は、第1態様及び第1態様の第1~第6実施形態のいずれかに記載の方法を実現するように前記プロセッサーによって実行される。
【0014】
第4態様では、本開示の実施例は、コンピュータ命令が記憶されているコンピュータ読み取り可能な記憶媒体を提供する。このコンピュータ命令は、第1態様及び第1態様の第1~第6実施形態のいずれかに記載の方法を実現するようにプロセッサーによって実行される。
【0015】
本開示の実施例によって提供される技術的解決策によれば、心電図データを取得し、前記心電図データを処理して複数の心拍データを取得し、前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成することによって、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルのパフォーマンスを高めることができる。
【0016】
上記の一般的な説明および以下の詳細な説明は、例示的かつ説明的なものにすぎず、本開示を限定するものではないことを理解されたい。
【図面の簡単な説明】
【0017】
添付の図面を参照しながら、以下の非限定的な実施形態を詳細に説明することにより、本開示の他の特徴、目的及び利点はより明らかになる。
【
図1】本開示の実施例に係る心電図データの拡張方法のフローチャートを示す。
【
図2】本開示の実施例に係る心電図データの模式図を示す。
【
図3】本開示の実施例に係るベースライン較正後の心電図データの模式図を示す。
【
図4】本開示の実施例に係るノイズ低減処理後の心電図データの模式図を示す。
【
図5】本開示の実施例に係る心拍識別のフローチャートを示す。
【
図6A】本開示の実施例に係る逆方向のR波の模式図を示す。
【
図6B】本開示の実施例に係る逆方向のR波の模式図を示す。
【
図7】本開示の実施例に係る心拍識別の模式図を示す。
【
図8】本開示の実施例に係る拡張データを生成するフローチャートを示す。
【
図9】本開示の別の実施例に係る拡張データを生成するフローチャートを示す。
【
図10】本開示の実施例に係る、心拍Aと心拍Bに基づいて生成された心拍Cの模式図を示す。
【
図11A】本開示の実施例に係る心拍Bと心拍Cの対照図を示す。
【
図11B】本開示の実施例に係る心拍Aと心拍Cの対照図を示す。
【
図12】本開示の実施例に係る心電図データ拡張装置のブロック図を示す。
【
図13】本開示の実施例に係る電子機器のブロック図を示す。
【
図14】本開示の実施例に係る、心電図データの拡張方法の実現に適したコンピューターシステムの構造模式図を示す。
【発明を実施するための形態】
【0018】
以下、本開示の例示的な実施例は、当業者がそれらを容易に実施できるように、添付の図面を参照して詳細に説明する。また、明確にするために、例示的な実施例の説明に関係のない部分は、添付の図面で省略されている。
【0019】
本開示では、「含む」や「有する」などの用語は、本明細書に開示される特徴、数字、ステップ、行為、部材、部分又はそれらの組み合わせの存在を示すことを意図し、1つ又は複数の他の特徴、数字、ステップ、行為、部材、部分又はそれらの組み合わせの存在の可能性を排除することを意図しないことを理解されたい。
【0020】
また、本開示の実施例と実施例における特徴は、矛盾がない場合、互いに組み合わせることができることに留意されたい。以下、本開示は、添付の図面を参照し、実施例と併せて詳細に説明する。
【0021】
ラベル付きデータセットの構築は、膨大な仕事量が必要となる。また、人々の異なる疾患の発症率が異なり、臨床医学で直接収集されたデータセットには、カテゴリーデータ量が不均衡であるという問題が多い。データセットのデータ量が不十分であるか、異なるカテゴリーのデータ量が不均衡であると、例えば分類の正確率が低くなり、再現率が低くなるなど、機械学習アルゴリズムのパフォーマンスが低下する。
【0022】
心電図は、心電図測定装置を使用して、体表から心臓の各動きのサイクルで発生する電気活動の変化が記録されたパターンを示すものであり、各セグメントの信号には、特定の医学的意義がある。しかし、反転、回転、クロッピングなどの従来のデータ拡張方法の使用は、心電図の医学的意義を破壊し、機械学習モデルの学習に有効な効果を果たすことができない。つまり、一般的な画像処理のデータ拡張手段は、心電信号のデータ拡張に適用することができない。
【0023】
本開示の実施例によって提供される技術的解決策によれば、心電図データを取得し、前記心電図データを処理して複数の心拍データを取得し、前記複数の心拍データの少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成することによって、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルのパフォーマンスを高めることができる。
【0024】
図1は、本開示の実施例に係る心電図データの拡張方法のフローチャートを示す。
図1に示すように、この方法はステップS101~S103を含む。
【0025】
ステップS101では、心電図データを取得する。
ステップS102では、前記心電図データを処理して複数の心拍データを取得する。
ステップS103では、前記複数の心拍データの少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成する。
【0026】
本開示の実施例によって提供される技術的解決策によれば、心電図データを取得し、前記心電図データを処理して複数の心拍データを取得し、前記複数の心拍データの少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成することによって、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルのパフォーマンスを高めることができる。
【0027】
図2は、本開示の実施例に係る心電図データの模式図を示す。
図2に示すように、心電図データは連続的に収集され、一般的に複数の心拍を含むので、一定の周期性の特徴を有する。各心拍にある最大の波ピークはR波と呼ばれる。R波は顕著な特徴を有するため、心拍を分割する基準として使用され得る。
【0028】
心電図の専門用語では、心電図を記録する際に人体の体表に取り付ける電極の配置位置、電極と増幅器の接続方式は心電図の誘導と呼ばれる。一般的に使用される誘導は12種類あり、それぞれ第I誘導、第II誘導、第III誘導、aVR誘導、aVL誘導、aVF誘導、V1誘導、V2誘導、V3誘導、V4誘導、V5誘導及びV6誘導である。すべての誘導の心電信号は、ほぼ同時に検出される。それらは、R波の分布密度や位置などに関してほぼ同じである。
図2で例示される心電図データは1つの誘導データのみであり、他の誘導データもそれと類似する可能性がある。
【0029】
本開示の実施例によれば、前記心電図データを処理して複数の心拍データを取得する前記ステップは、前記心電図データを前処理し、前処理された心電図データに対して心拍識別を行って複数の心拍データを取得するステップを含む。
【0030】
本開示の実施例によって提供される技術的解決策によれば、前記心電図データを前処理し、前処理された心電図データに対して心拍識別を行って複数の心拍データを取得することによって、心電図データに対してデータ拡張を行うことができ、学習用データのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、モデルの表現を高めることができる。
【0031】
本開示の実施例によれば、前記前処理は、離散ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、最低レベルの近似値をゼロに設定し、離散ウェーブレット再構成によってベースライン較正後の心電図データを取得するステップを含む。
【0032】
ウェーブレット変換は、信号の時間周波数分析及び処理を実行する理想的なツールである。コンピュータで一般的に使用されるウェーブレット変換アルゴリズムはmallatアルゴリズムである。このアルゴリズムの中心的なアイデアは、フィルタを使用してウェーブレット変換を実行することである。
【0033】
元の入力信号Sは、2つの相補的フィルタ(ローパスフィルタとハイパスフィルタ)を通過してAとDの2つの信号を生成する。Aは信号の近似値(低周波フィルタで取得された値)であり、Dは信号の詳細値(高周波フィルタで取得された値)である。このような一対のフィルタによる原信号の分解は、1レベル分解と呼ばれる。信号の分解過程を繰り返すことができる。即ち、マルチレベル分解を実行することができる。高周波数成分をさらに分解せず、低周波数成分を継続的に分解すると、より低い周波数の成分を取得し、ウェーブレット分解ツリーを形成することができる。必要に応じて、分解レベル数を決定することができる。
【0034】
本開示の実施例では、離散ウェーブレット変換(DWT)を採用して、各レベルの分解後にデータをダウンサンプリングするため、データ量が比較的小さく、計算が比較的速い。レベル数が増え続けると、得られる低周波数成分の解像度は徐々に低下する。対照的に、離散ウェーブレット再構成アルゴリズム(IDWT)は、アップサンプリングとフィルタリングの2つの過程を含む。アップサンプリングとは、ダウンサンプリングデータの間に0を挿入することを意味する。
【0035】
ベースライン変動の除去中に使用されるウェーブレットは、db5ウェーブレットである。
図3に示すように、DWTを使用して信号に対して9レベルのウェーブレット分解を実行した後、最低レベルの近似値をゼロに設定してから、IDWTを実行すると、ベースライン変動を除去した後の心電信号を取得することができる。
【0036】
本開示の実施例によって提供される技術的解決策によれば、離散ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、最低レベルの近似値をゼロに設定し、離散ウェーブレット再構成によってベースライン較正後の心電図データを取得することで、心電図データに対してベースライン較正をよりよく行うことができる。
【0037】
本開示の実施例によれば、前処理過程では、ベースライン較正に加えて、ノイズ低減処理を実行することもできる。心電図データセットは、筋電干渉及び50/60Hzの商用周波数ノイズを含む。例えば、ウェーブレット変換閾値法を使用して、心電信号の高周波ノイズを除去することができる。
【0038】
本開示の実施例によれば、前記前処理は、定常ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、詳細値に対して閾値フィルタリングを行い、定常ウェーブレット再構成によってノイズ低減後の心電図データを取得するステップを含む。
【0039】
本開示の実施例によれば、定常ウェーブレット変換(SWT)を採用してノイズを除去する。SWTとDWTの最大の違いは、SWTは各レベル分解の後にダウンサンプリングを実行しないことである。そのため、データ量が比較的大きいが、各レベルの解像度が変化しないままである。高周波ノイズの除去は、単にあるレベルの信号を完全に削除するのではなく、閾値削除を行うことであるため、解像度は特に重要である。同じ理由で、定常ウェーブレット再構成(ISWT)の過程でも、アップサンプリングを実行する必要はない。
【0040】
高周波ノイズの除去中に使用されるウェーブレットは、bior2.6ウェーブレットである。SWTを使用して信号に対して6レベルウェーブレット分解を実行した後、まず、最初の2つのレベルでの周波数の最も高い詳細値をゼロに設定する。これらの詳細値で表わされる周波数は高すぎて、ほとんどの心電信号情報を含まない。次に、3~6レベルでの詳細値に対して閾値フィルタリングを実行する。閾値は、次の式を使用して選択される。
【数1】
dは詳細値、Nはその長さ、midは中央値である。使用される閾値方法は、ハーフソフト閾値法であり、ハード閾値法のようにウェーブレット係数の突然変化を生成することも、ソフト閾値法のように偏差を生成することもない。ハーフソフト閾値法の式は、以下のとおりである。
【数2】
式では、λ1=λth、λ2=1.25λthとする。閾値フィルタリングの後にISWTを行うと、高周波ノイズを除去することができる。ノイズ低減処理後の心電図データは
図4に示される。
【0041】
本開示の実施例によって提供される技術的解決策によれば、定常ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行い、詳細値に対して閾値フィルタリングを行い、定常ウェーブレット再構成によってノイズ低減後の心電図データを取得することで、心電図データのノイズ低減効果を向上させることができる。
【0042】
図5は、本開示の実施例に係る心拍識別のフローチャートを示す。
【0043】
図5に示すように、この方法はステップS501~S503を含む。
【0044】
ステップS501では、前処理された心電図データにおける第1誘導の誘導データに対して、定常ウェーブレット変換によってマルチレベルウェーブレット分解を行って、分解結果を取得する。
ステップS502では、前記分解結果に対して特徴識別を行って、前記第1誘導の誘導データにおけるR波の波ピークの位置を確定する。
ステップS503では、前記第1誘導の誘導データにおけるR波の波ピークの位置に基づいて、前記第1誘導及び/又は他の誘導の誘導データを複数の心拍データに分割する。
【0045】
本開示の実施例によれば、ステップS501では、SWTを使用して信号に対してウェーブレット変換を行うことができる。使用されるウェーブレットは、例えば、
【数3】
であってもよい。
【0046】
本開示の実施例によれば、ステップS502では、変換された第5レベルの詳細値を選択することができる。このレベルのR波の特徴が最も明白である。上向きのR波は、このレベルで負-正の極大値ペアの形で現れる。下向きのR波は、このレベルで正-負の極大値ペアの形で現れる。これらの極大値ペアを見つけて、それらのゼロクロス点の位置を見つける。対応するR波ピークは、ゼロクロス点±0.05s内の極大/極小値である。
【0047】
健常者の心電図においても、各種類誘導のR波のピーク方向は一定とは限らない。病変後の心電図では、R波のピーク方向は通常の方向と反対になる状況もある。
図6A及び
図6Bは、本開示の実施例に係る逆方向のR波の模式図を示す。
図6Aは、病理学的に引き起こされるR波反転の状況の模式図を示す。
図6Bは、逆に配置された電極によるR波反転の模式図を示す。
【0048】
実際の操作では、同じ人の同時に検出された心電信号の12種類の誘導(これらの12種類の誘導はそれぞれ第I誘導、第II誘導、第III誘導、aVR誘導、aVL誘導、aVF誘導、V1誘導、V2誘導、V3誘導、V4誘導、V5誘導、V6誘導である。以下、上記の12種類の誘導の言及順序に基づき、各種類の誘導を指すことができる。例えば、第1誘導は第I誘導を指し、第7誘導はV1誘導を指すことができる)に対して、それぞれ単独のベースライン除去及びフィルタリング操作を実行する。その後、第1誘導のみに対してR波識別を行い、第1誘導のR波識別の結果を使用して他のすべての誘導を分割する。この理由は、すべての誘導の心電信号がほぼ同時に検出されるため、それらがR波の分布密度や位置などに関してほぼ同じであることである。
【0049】
分割後に、第1誘導以外の11種類の誘導のR波位置を較正する必要がある。人体の隣接する細胞の間の電位伝導に一定の時間がかかるため、これらの12種類の誘導のR波ピークの位置は、最大で±0.05sの違いがある可能性がある。他の11種類の誘導に対してそれぞれ次の操作を実行する。第1誘導のR波ピークの位置の近くの±0.05sの範囲内で最大値と最小値を見つける。最大値が最小値の絶対値の三分の一よりも小さい場合、最小値のある位置はこの誘導のR波ピークであると認め、そうでない場合、最大値のある位置はこの誘導のR波ピークであると認める。従って、本開示の実施例の方法は、前記第1誘導のデータにおけるR波の波ピークの位置に基づいて、他の誘導のデータにおけるR波の波ピークの位置を較正することをさらに含み得る。
【0050】
本開示の実施例によれば、分割時に、最初と最後の心拍信号は不完全な可能性があるため、最初と最後の心拍信号を棄却し、隣接する2つの心拍のRピークの中間点を分割点として使用することができる。この方法により、完全な心電信号は、一つ一つの心拍に分割することができる。分割後の結果は
図7に示される。
【0051】
本開示の実施例によって提供される技術的解決策によれば、前処理された心電図データにおける第1誘導のデータに対して、定常ウェーブレット変換によってマルチレベルウェーブレット分解を行って、分解結果を取得するステップと、前記分解結果に対して特徴識別を行って、前記第1誘導のデータにおけるR波の波ピークの位置を確定するステップと、前記第1誘導のデータにおけるR波の波ピークの位置に基づいて、前記第1誘導及び/又は他の誘導のデータを複数の心拍データに分割するステップとを実行することによって、心拍データを正確に識別することができ、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルのパフォーマンスを高めることができる。
【0052】
図8は、本開示の実施例に係る拡張データを生成するフローチャートを示す。
【0053】
図8に示すように、この方法はステップS801~S804を含む。
【0054】
ステップS801では、前記複数の心拍データから第1心拍データ及び第2心拍データを確定する。
ステップS802では、前記第1心拍データと第2心拍データのうち少なくとも1種類の誘導データが接合可能である場合、前記第1心拍データと第2心拍データとを接合して第3心拍データを生成する。
ステップS803では、前記第1心拍データ及び/又は第2心拍データのラベルを取得する。
ステップS804では、前記第1心拍データ及び/又は第2心拍データのラベルに基づいて、前記第3心拍データのラベルを確定し、ラベル付き第3心拍データを拡張データとして確定する。
【0055】
本開示の実施例によれば、2つの分割された心拍信号(各誘導)を、それぞれ心拍Aと心拍Bとしてランダムに選択することができる。このランダム選択は、次の3つの方法の1つに基づいたものである。
(1)同じ患者の異なる時間での2つの心拍信号をAとBとしてランダムに選択する。
(2)同じ種類の疾患に罹患した2人の異なる患者の2つの心拍信号をAとBとしてランダムに選択する。
(3)1人の健常者の心拍信号をAとして、1人の患者の心拍信号をBとしてランダムに選択する。
【0056】
本開示の実施例によれば、3つの方法を組み合わせて同時に使用することによって、データの汎化程度を増加させることができる。
【0057】
また、選択した2つの信号が接合可能であるか否かを事前に検出することもできる。例えば、心拍Aと心拍Bとにおける各種誘導のR波のピーク方向をそれぞれ比較して、AとBとにおけるある種類の誘導データのR波のピーク方向が同じである場合、この誘導データを接合可能としてマークし、当該ピーク方向が同じではない場合、接合不可としてマークする。すべての誘導データを接合不可としてマークする場合、この接合が失敗し、心拍を再度選択する。接合可能としてマークされた誘導データが少なくとも1種類がある場合、接合を実行することができる。
【0058】
本開示の実施例によれば、上記の3つの方法については、病変を検出するための主な特徴データの位置を確定し、第3心拍データのこの位置でのデータが心拍A又は心拍Bに由来するかを判断する。心拍Aに由来する場合、心拍Aのラベルに基づいて第3心拍データのラベルを配置する。心拍Bに由来する場合、心拍Bのラベルに基づいて第3心拍データのラベルを配置する。例えば、心筋梗塞病変の主な検出位置は、STセグメント(R波の後のセグメント)であるため、拡張された心拍CのSTセグメントが心拍Bに由来する場合、心拍Cのラベルは心拍Bと同じであると認める。例えば、心拍Bが心筋梗塞患者の心電図データに由来する場合、心拍Cのラベルを心筋梗塞疾患罹患として設定する。心拍Bが健康な人の心電図データに由来する場合、心拍Cのラベルを健康として設定する。
【0059】
本開示の実施例によって提供される技術的解決策によれば、前記複数の心拍データから第1心拍データ及び第2心拍データを確定するステップと、前記第1心拍データと第2心拍データにおける少なくとも1種類の誘導データが接合可能である場合、前記第1心拍データと第2心拍データとを接合して第3心拍データを生成するステップと、前記第1心拍データ及び/又は第2心拍データのラベルを取得するステップと、前記第1心拍データ及び/又は第2心拍データのラベルに基づいて、前記第3心拍データのラベルを確定し、ラベル付き第3心拍データを拡張データとして確定するステップとを実行することによって、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルの表現を高めることができる。
【0060】
本開示の実施例によれば、前記第1心拍データと第2心拍データとのうち少なくとも1種類の誘導が接合可能である場合、前記第1心拍データと第2心拍データとを接合して第3心拍データを生成する前記ステップは、
誘導データの種類毎に対して、前記第1心拍データと第2心拍データとにおける当該種類の誘導データが、同じR波方向を有し且つR波後の予め設定された時間内にゼロクロス点がある条件を満たす場合、前記ゼロクロス点の位置に基づいて、前記第1心拍データと第2心拍データとにおける前記種類の誘導データを、仮心拍データの当該種類の誘導データとして接合するステップと、前記条件が満たされない場合は、前記第2心拍データの前記種類の誘導データを、仮心拍データの当該種類の誘導データとして確定するステップと、
前記仮心拍データと第2心拍データとが完全同一でない場合、前記仮心拍データを第3心拍データとして確定するステップとを含む。
【0061】
【0062】
図9は、本開示の別の実施例に係る拡張データを生成するフローチャートを示す。
【0063】
図9に示すように、この方法はステップS901~S910を含む。
【0064】
ステップS901では、心拍Aと心拍Bを選択する。上記の
図8の説明を参照することができるので、ここでは繰り返さない。
【0065】
ステップS902では、未処理の一種類の誘導を選択する。
【0066】
ステップS903では、この誘導に対し、心拍A及び心拍BとにおけるR波方向が同じか否かを判断し、同じである場合、ステップS904を継続して実行し、同じではない場合、ステップS907を実行する。
【0067】
ステップS904では、心拍A及び心拍Bとにおける当該種類の誘導データのR波ピークの後の100ms内の1番目のゼロクロス点の位置を見つける。
【0068】
ステップS905では、この誘導に対し、A及びBの両方にゼロクロス点を見つけたか否かを判断し、見つけた場合、ステップS906を継続して実行し、見つけない場合、ステップS907を実行する。
【0069】
実際には、ゼロクロス点を見つけることができない(例えば、STセグメント上昇)特別な波形の病変がたまにある。このような波形の場合、それと接合できる他の波形を見つけることさえできないため、接合前にこのような波形を回避することは、比較的良好な処理方式である。
【0070】
ステップS906では、心拍Aの当該種類の誘導データの前半部分を再サンプリングして心拍Cの前半部分に割り当て、心拍Bの当該種類の誘導データの後半部分を心拍Cの後半部分に割り当て、心拍Cの当該種類の誘導データを取得する。
【0071】
本開示の実施例によれば、心拍Aの当該種類の誘導データの前半部分を再サンプリングして心拍Cの前半部分に割り当てるのは、例えば、水平方向の圧縮又は伸張により、心拍Aの前半部分の長さを心拍Bの前半部分の長さと一致させることで実行され得る。前半部分とは、心拍の開始位置から上記のゼロクロス点の位置までのデータを指し、後半部分とは、ゼロクロス点の位置から終了位置までのデータを指す。
【0072】
図10は、本開示の実施例に係る、心拍Aと心拍Bに基づいて生成された心拍Cの模式図を示す。
図10に示すように、2つの心拍データの心拍Aと心拍Bにより、1つの新しい心拍データの心拍Cを生成することができる。心拍Cは、心拍A及び心拍Bの両方とは異なるものである。
図11Aは、本開示の実施例に係る心拍Bと心拍Cの対照図を示す。
図11Aに示すように、心拍Cの後半部分は、心拍Bと一致している。
図11Bは、本開示の実施例に係る心拍Aと心拍Cの対照図を示す。
図11Bに示すように、心拍Cの前半部分は、心拍Aの前半部分を再サンプリングした(伸張)結果である。
図10、
図11A及び
図11Bは、1種類の誘導データのみを示す。本実施例の方法で処理された他の誘導のデータは、類似の特徴を有し得る。
【0073】
図9に戻って参照されたい。ステップS907では、心拍Bの当該種類の誘導データを心拍Cに直接割り当てる。
【0074】
ステップS908では、すべての誘導の処理が完了したか否かを判断し、完了した場合、ステップS909を実行し、完了していない場合、ステップS902に戻って、未処理の一種類の誘導を継続的に選択する。
【0075】
ステップS909では、心拍Cの各誘導が心拍Bと同じか否かを判断し、同じである場合、心拍Cを棄却し、S901に戻って心拍を選択し直し、同じではない場合、ステップS910を実行する。
【0076】
ステップS910では、心拍Cを1つの拡張データとして確定する。
【0077】
ステップS910を実行した後、ステップS901に戻って、新しい拡張データを継続的に生成することができる。
【0078】
本開示の実施例によって提供される技術的解決策によれば、種類毎の誘導データに対して、前記第1心拍データと第2心拍データとにおける当該種類の誘導データが、同じR波方向を有し且つR波後の予め設定された時間内にゼロクロス点がある条件を満たす場合、前記ゼロクロス点の位置に基づいて、前記第1心拍データと第2心拍データとにおける前記種類の誘導データを、仮心拍データの当該種類の誘導データとして接合するステップと、前記条件が満たされない場合は、前記第2心拍データの前記種類の誘導データを、仮心拍データの当該種類の誘導データとして確定するステップと、前記仮心拍データと第2心拍データとが完全同一でない場合、前記仮心拍データを第3心拍データとして確定するステップとを実行することによって、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルのパフォーマンスを高めることができる。
【0079】
本開示の実施例の方法は、既存の深層学習方法に基づいて識別精度を改善することができる。心電信号を拡張した後、学習用データセットの不十分なデータ又は不均衡なデータの問題を解決し、更に学習用データセットの不十分なデータ又は不均衡なデータにより引き起こされる識別精度が低いという問題を解決するため、このようなデータの識別精度を大幅に向上させる。全体的な有効データの量を増加させるため、不均衡なデータの問題を解決するとき、個別的な少数のデータの識別精度を向上させるとともに、すべてのデータに対する全体的な識別精度も向上させる。
【0080】
図12は、本開示の実施例に係る心電図データ拡張装置のブロック図を示す。この装置は、ソフトウェア、ハードウェア、又は両方の組み合わせによって、電子機器の一部又は全部になることができる。
【0081】
図12に示すように、前記心電図データ拡張装置1200は、取得モジュール1210、処理モジュール1220及び生成モジュール1230を含む。
【0082】
取得モジュール1210は、心電図データを取得するように構成されている。
処理モジュール1220は、前記心電図データを処理して複数の心拍データを取得するように構成されている。
生成モジュール1230は、前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するように構成されている。
【0083】
本開示の実施例によって提供された技術的解決策によれば、心電図データを取得するように構成されている取得モジュール、前記心電図データを処理して複数の心拍データを取得するように構成されている処理モジュール、及び前記複数の心拍データの少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するように構成されている生成モジュールによって、心電図データに対してデータ拡張を行うことができ、学習用データセットのデータ量を増加させることができ、そして、機械学習のモデルを十分に訓練して、訓練済みモデルのパフォーマンスを高めることができる。
【0084】
本開示は電子機器をさらに開示する。
図13は、本開示の実施例に係る電子機器のブロック図を示す。
【0085】
図13に示すように、前記電子機器1300はメモリ1301とプロセッサー1302を含む。前記メモリ1301は、電子機器が上記の実施例のいずれかの心電図データの拡張方法又はコード生成方法を実行するのを支援するプログラムを記憶するために使用される。前記プロセッサー1302は、前記メモリ1301に記憶されているプログラムを実行するように構成されている。
【0086】
本開示の実施例によれば、前記メモリ1301は、1つ又は複数のコンピュータ命令を記憶するために使用され、前記1つ又は複数のコンピュータ命令は、前記プロセッサー1302によって実行されると、:
心電図データを取得するステップと、
前記心電図データを処理して複数の心拍データを取得するステップと、
前記複数の心拍データのうち少なくとも2つの心拍データに基づいて、機械学習における学習用データの拡張データを生成するステップとが実現される。
【0087】
本開示の実施例によれば、前記心電図データを処理して複数の心拍データを取得する前記ステップは、
前記心電図データを前処理するステップと、
前処理された心電図データに対して心拍識別を行って、複数の心拍データを取得するステップとを含む。
本開示の実施例によれば、前記前処理は、
離散ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、最低レベルの近似値をゼロに設定し、離散ウェーブレット再構成によってベースライン較正後の心電図データを取得するステップを含む。
【0088】
本開示の実施例によれば、前記前処理は、
定常ウェーブレット変換によって前記心電図データに対してマルチレベルウェーブレット分解を行って、詳細値に対して閾値フィルタリングを行い、定常ウェーブレット再構成によってノイズ低減後の心電図データを取得するステップを含む。
【0089】
本開示の実施例によれば、前処理された心電図データに対して心拍識別を行って、複数の心拍データを取得する前記ステップは、
前処理された心電図データにおける第1誘導の誘導データに対して、定常ウェーブレット変換によってマルチレベルウェーブレット分解を行って、分解結果を取得するステップと、
前記分解結果に対して特徴識別を行って、前記第1誘導の誘導データにおけるR波の波ピークの位置を確定するステップと、
前記第1誘導の誘導データにおけるR波の波ピークの位置に基づいて、前記第1誘導及び/又は他の誘導の誘導データを複数の心拍データに分割するステップとを含む。
【0090】
本開示の実施例によれば、前記複数の心拍データの少なくとも2つの心拍データに基づいて、拡張データを生成する前記ステップは、
前記複数の心拍データから第1心拍データ及び第2心拍データを確定するステップと、
前記第1心拍データと第2心拍データにおける少なくとも1種類の誘導データが接合可能である場合、前記第1心拍データと第2心拍データを接合して第3心拍データを生成するステップと、
前記第1心拍データ及び/又は第2心拍データのラベルを取得するステップと、
前記第1心拍データ及び/又は第2心拍データのラベルに基づいて、前記第3心拍データのラベルを確定し、ラベル付き第3心拍データを拡張データとして確定するステップとを含む。
【0091】
本開示の実施例によれば、前記第1心拍データと第2心拍データの少なくとも1種類の誘導データが接合可能である場合、前記第1心拍データと第2心拍データを接合して第3心拍データを生成する前記ステップは、
種類毎の誘導データに対して、前記第1心拍データと第2心拍データとにおける当該種類の誘導データが、同じR波方向を有し且つR波後の予め設定された時間内にゼロクロス点がある条件を満たす場合、前記ゼロクロス点の位置に基づいて、前記第1心拍データと第2心拍データとにおける前記種類の誘導データを、仮心拍データの当該種類の誘導データとして接合するステップと、前記条件が満たされない場合は、前記第2心拍データの当該種類の誘導データを、仮心拍データの当該種類の誘導データとして確定するステップと、
前記仮心拍データと第2心拍データとが完全同一でない場合、前記仮心拍データを第3心拍データとして確定するステップとを含む。
【0092】
図14は、本開示の実施例に係る、心電図データの拡張方法の実現に適したコンピューターシステムの構造模式図を示す。
【0093】
図14に示すように、コンピューターシステム1400は処理ユニット1401を含む。処理ユニット1401は、読取り専用メモリ(ROM)1402に記憶されているプログラム、又は記憶部分1408からランダムアクセスメモリ(RAM)1403にロードされたプログラムに従って、上記実施例における各種の処理を実行することができる。RAM 1403には、システム1400の操作に必要となる様々なプログラム及びデータが記憶されている。処理ユニット 1401、ROM 1402及びRAM 1403は、バス1404を介して互いに接続される。入力/出力(I/O)インタフェース1405もバス1404に接続される。
【0094】
I/Oインタフェース1405には、キーボードやマウスなどを含む入力部分1406と、陰極線管(CRT)や液晶ディスプレー(LCD)など、及びスピーカーなどを含む出力部分1407と、ハードディスクなどを含む記憶部分1408と、LANカード、モデムなどを含むネットワークインタフェースカードの通信部分1409とが接続される。通信部分1409は、インターネットなどのネットワークを介して通信処理を実行する。ドライバ1410も必要に応じてI/Oインタフェース1405に接続される。磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどのリムーバブルメディア1411は、必要に応じてドライバ1410に取り付けられる。それにより、リムーバブルメディア1411から読み取られたコンピュータプログラムは、必要に応じて記憶部分1408にインストールされる。前記処理ユニット1401は、CPU、GPU、TPU、FPGA、NPUなどの処理ユニットとして実現され得る。
【0095】
特に、本開示の実施例によれば、上述した方法は、コンピュータソフトウェアプログラムとして実現され得る。例えば、本開示の実施例は、コンピュータプログラム製品を含む。このコンピュータプログラム製品は、読み取り可能な媒体に物理的に含まれているコンピュータプログラムを含む。前記コンピュータプログラムは、上記方法を実行するためのプログラムコードを含む。このような実施例では、このコンピュータプログラムは、通信部分1409を介してネットワークからダウンロードしてインストールすることができ、及び/又はリムーバブルメディア1411からインストールすることができる。
【0096】
添付の図面におけるフローチャート及びブロック図は、本開示の各種の実施例のシステム、方法及びコンピュータプログラム製品による実現可能なシステムアーキテクチャ、機能及び操作を図示する。これに関して、フローチャート又はブロック図中の各ブロックは、1つのモジュール、プログラムセグメント又はコードの一部を表すことができる。前記モジュール、プログラムセグメント又はコードの一部は、所定の論理機能を実装するための1つ又は複数の実行可能命令を含む。また、一部の代替実装では、ブロックにマークされた機能が、添付の図面にマークされた順序とは異なる順序で発生する場合があることにも注意されたい。例えば、次々に表示される2つのブロックは、実際には基本的に並行して実行することも、関連する機能に応じて逆の順序で実行することもできる。また、ブロック図及び/又はフローチャート中の各ブロック、ならびにブロック図及び/又はフローチャート中のブロックの組み合わせは、所定の機能又は操作を実行するための専用のハードウェアに基づいたシステムによって実装することができ、又は専用のハードウェアとコンピュータ命令の組み合わせによって実装することができることにも注意されたい。
【0097】
本開示の実施例で言及されているユニット又はモジュールは、ソフトウェアの形態で実現することができ、プログラマブル・ハードウェアの形態で実現することもできる。説明されているユニット又はモジュールは、プロセッサーに配置することもできる。これらのユニット又はモジュールの名称は、特定の状況で該ユニット又はモジュール自体に対する制限を構成するものではない。
【0098】
別の態様として、本開示は、コンピュータ読み取り可能な記憶媒体をさらに提供する。このコンピュータ読み取り可能な記憶媒体は、上記実施例における電子機器又はコンピューターシステムに含まれるコンピュータ読み取り可能な記憶媒体であってもよいし、機器にインストールされていない単独で存在しているコンピュータ読み取り可能な記憶媒体であってもよい。コンピュータ読み取り可能な記憶媒体記憶には、1つ又は複数のプログラムが記憶されている。前記プログラムは、本開示に記載されている方法を実行するために、1つ又は複数のプロセッサーによって使用される。
【0099】
上記の説明は、本開示の好ましい実施例、及び使用される技術原理の説明にすぎない。当業者であれば、本開示に係る発明の範囲は、上記の技術的特徴の特定の組み合わせによる技術的解決策に限定されるものではなく、前記発明の構想から逸脱しない前提で、上記の技術的特徴又はそれらの同等の特徴の任意の組み合わせによる他の技術的解決策も含むことを理解すべきである。例えば、上記の特徴と、本開示で開示される(これらに限定されない)類似の機能を有する技術的特徴の相互交換によって形成される技術的解決策が挙げられる。
【外国語明細書】