JP7024866B2 - 機器分析用データ処理方法及び装置 - Google Patents

機器分析用データ処理方法及び装置 Download PDF

Info

Publication number
JP7024866B2
JP7024866B2 JP2020522557A JP2020522557A JP7024866B2 JP 7024866 B2 JP7024866 B2 JP 7024866B2 JP 2020522557 A JP2020522557 A JP 2020522557A JP 2020522557 A JP2020522557 A JP 2020522557A JP 7024866 B2 JP7024866 B2 JP 7024866B2
Authority
JP
Japan
Prior art keywords
data
value
array
block
intensity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020522557A
Other languages
English (en)
Other versions
JPWO2019229998A1 (ja
Inventor
将弘 池上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shimadzu Corp
Original Assignee
Shimadzu Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shimadzu Corp filed Critical Shimadzu Corp
Publication of JPWO2019229998A1 publication Critical patent/JPWO2019229998A1/ja
Application granted granted Critical
Publication of JP7024866B2 publication Critical patent/JP7024866B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01JELECTRIC DISCHARGE TUBES OR DISCHARGE LAMPS
    • H01J49/00Particle spectrometers or separator tubes
    • H01J49/0004Imaging particle spectrometry
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01JELECTRIC DISCHARGE TUBES OR DISCHARGE LAMPS
    • H01J49/00Particle spectrometers or separator tubes
    • H01J49/0027Methods for using particle spectrometers
    • H01J49/0036Step by step routines describing the handling of the data generated during a measurement
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind

Landscapes

  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Electrochemistry (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Immunology (AREA)
  • Pathology (AREA)

Description

本発明は、質量分析装置、クロマトグラフ装置、電子線マイクロアナライザ(EPMA)、ラマン分光イメージング装置、フーリエ変換赤外分光光度測定(FTIR)イメージング装置といった、各種の分析装置で収集された測定データを処理する機器分析用データ処理方法及び装置に関し、さらに詳しくは、分析装置で得られた測定データを圧縮したり圧縮されたデータを処理して目的とする情報を取り出したりするための方法及び装置に関する。
近年、機器分析のための分析装置の高性能化、高機能化は著しく、それに伴い分析装置における測定により得られるデータの量はますます増加している。特に、イメージング質量分析装置やFTIRイメージング装置などの分析装置では、試料上の2次元領域内の多数の測定点それぞれにおいて所定の質量電荷比範囲或いは波長範囲のスペクトルデータが得られるため、一つの試料から膨大な量の測定データが得られる。
一般に分析装置で得られた測定データはコンピュータ(通常は汎用のパーソナルコンピュータ)で処理されるが、測定データの量が膨大になると全ての測定データをメインメモリ(RAM)に取り込んで処理することができなくなり、処理速度が低下する。また、測定データの量が多いと、測定データを保存するにも大きなメモリ容量を確保する必要がある。さらに、最近では、ネットワーク経由で測定データを転送してクラウドコンピューティングや遠隔地に置かれたコンピュータでデータを解析することも増えており、測定データの量が多いとデータ転送の際の時間やコストが高くなるという問題もある。
こうした問題を解決するために、近年、測定データを圧縮する様々な手法が提案されている。
例えば特許文献1には、飛行時間型質量分析装置(TOFMS)で得られる高時間分解能のマススペクトルデータを圧縮する方法が開示されている。この圧縮方法では、マススペクトルにおいて質量電荷比(m/z)値の順に強度値を並べたデータ配列を、ノイズレベルであるとみなせるデータ配列とそれ以外のデータ配列とに分ける。そして、ノイズレベルであるとみなしたデータを除いたデータ配列(つまりは有用である可能性が高いデータ配列)に対して連長符号化を行う一方、ノイズレベルであるとみなした部分に対してはエントロピー符号化の一種である静的ハフマン符号化を行う。この圧縮方法では、圧縮率を上げながら可逆圧縮を行うことができる。
また上記圧縮方法ではノイズレベルであるとみなせるデータも圧縮データに反映されるが、マススペクトルデータから強度値があるレベル以下のデータを削除することによりデータを削減するという手法(これは厳密には圧縮方法ではないが、ここでは広義の圧縮方法の一つであるとする)も知られている。
しかしながら、上記特許文献1による圧縮方法では次のような問題がある。
マススペクトルを表すデータ配列は、マススペクトルの横軸であるm/z値の情報がそれぞれ格納されたm/z値の配列と、それと同じデータ数である強度値の配列とから構成される。例えばイメージング質量分析装置で得られる多数の測定点毎のマススペクトルデータを保存する場合、或いは、同じ質量分析装置で得られる多数の試料に対するマススペクトルデータを保存する場合、圧縮前のデータ配列は、複数のマススペクトルに共通である一つのm/z値の配列と、複数のマススペクトルにそれぞれ対応する強度値の配列とであることが多い。
例えばイメージング質量分析装置で得られたデータに基づいて特定のm/z値における2次元強度分布を示すイメージング画像を作成する場合、非圧縮のデータであれば、目的のm/z値に対応する強度値の配列番号(データ配列上の先頭のデータを「1」として各データに付した連続番号)からそれぞれ強度値を取得すればよい。ところが、特許文献1に記載の方法で圧縮されているデータの場合には、伸張処理を実施してm/z値の配列と強度値の配列との関連付けを行ったのちに、目的のm/z値に対応する配列番号に基づいて強度値を取得する必要がある。このように伸張処理を行うと当然、処理速度が低下するし、伸張したあとのデータがメインメモリに格納しきれないと処理速度はさらに低下する。
一方、マススペクトルデータから強度値が特定のレベル以下のデータを削除することにより圧縮する方法の場合、マススペクトル毎にm/z値の配列情報を用意する必要がある。その場合、多数のマススペクトルデータから目的のm/z値における強度値を取得するためには、そのマススペクトル毎に別々のm/z値の配列から目的のm/z値に対応する配列番号を見つけ出す処理が必要である。そのため、m/z範囲が大きなデータほど、或いはマススペクトルの数が多いほど、処理に時間が掛かってしまう。
各マススペクトルにおいて目的とするm/z値に対応する強度値を取得するための処理速度を上げるための一つの方法として、原マススペクトルのデータ配列上の位置(配列番号)と圧縮データのデータ配列上の位置(配列番号)との対応関係を示す情報を格納したインデクスを利用する方法が知られている。例えば特許文献2に記載のデータ圧縮方法では、マススペクトルにおける強度値の配列のうちノイズレベル以上の有効な強度値が連続する部分の圧縮後の配列内での先頭の配列番号と、圧縮前の配列番号とを関連付ける情報が格納されたインデクスを別途作成しておき、データ読み出しの際にはこのインデクスを参照するようにしている。
しかしながら、特許文献2に記載の圧縮方法では、インデクスのデータ量が多くなるために十分なデータ圧縮の効果が得られない場合がある。例えば、MALDI-TOFMSは測定可能なm/z範囲が非常に広く、タンパク質などの生体試料を測定した場合、マススペクトルには幅広いm/z範囲に亘って多数のピークが観測される。こうしたマススペクトルデータを特許文献2に記載の方法で圧縮すると、マススペクトル上のピーク部分毎にインデクスの情報が生成されるため、インデクスのデータ量自体がかなり大きくなる。インデクスのデータ量が多いと、目的のm/z値に対応する圧縮データの位置をインデクス上で検索するのに時間が掛かり、目的の強度値を読み出すための処理速度が低下する。また、インデクスのデータ量が大きいとデータの圧縮効率が悪いという問題もある。
なお、上記問題は質量分析装置で得られるマススペクトルに限らず、クロマトグラフ装置で得られるクロマトグラム、電子線マイクロアナライザで得られるX線強度スペクトル、ラマン分光イメージング装置やFTIRイメージング装置で得られる分光スペクトルなどを構成するデータを処理する場合、特に多数のスペクトルやクロマトグラムを処理する場合にも同様である。
国際公開2009/069225号パンフレット 特開2012-169979号公報
本発明は上記課題に鑑みて成されたものであり、その目的の一つは、例えば質量分析装置により得られたマススペクトルデータなどが圧縮されたデータにおいて、任意のm/z値に対応する強度値を高速に読み出すことができる機器分析用データ処理方法及び装置を提供することにある。
また本発明の別の目的は、高いデータ圧縮効率を確保しつつ、例えば任意のm/z値に対応する強度値を高速に読み出せるようにマススペクトルデータを圧縮することができる機器分析用データ処理方法及び装置を提供することにある。
上記課題を解決するために成された第1発明は、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを、その配列順に従って、予め決められた無効レベルの強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルの強度値が出現した場合にはスイッチ連長符号化を行うことにより圧縮して得られた圧縮データを処理するデータ処理方法であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理方法であって、
a)処理対象である圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するとき又は該配列番号を超えるときの連続数を特定する連続数特定ステップと、
b)前記連続数特定ステップで特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索ステップと、
を有することを特徴としている。
また第2発明は上記第1発明に係るデータ処理方法を実施するための装置であり、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを、その配列順に従って、予め決められた無効レベルの強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルの強度値が出現した場合にはスイッチ連長符号化を行うことにより圧縮して得られた圧縮データを処理するデータ処理装置であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理装置であって、
a)処理対象である圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの又は該配列番号を超えるときの連続数を特定する連続数特定部と、
b)前記連続数特定部により特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索部と、
を備えることを特徴としている。
なお、上記第1及び第2発明におけるデータ圧縮方法自体は従来から知られているものである。
機器分析のための分析装置が液体クロマトグラフ質量分析装置(LC-MS)やガスクロマトグラフ質量分析装置(GC-MS)を含む質量分析装置である場合、所定のパラメータとはm/z値であり、測定データとはマススペクトルデータである。
分析装置がLCやGC等のクロマトグラフ装置である場合、所定のパラメータとは時間であり、測定データとはクロマトグラムデータである。
分析装置がラマン分光分析装置やFTIRである場合、所定のパラメータとは波長(又は波数)であり、測定データとは分光スペクトルデータである。分析装置がEPMAである場合、所定のパラメータとはX線の波長又はエネルギーであり、測定データとはX線スペクトルデータである。
いま一例として、測定データがマススペクトルデータであるとする。第1発明のデータ処理方法を実施する第2発明に係るデータ処理装置において、強度値を知りたい特定のm/z値が例えばユーザにより指定されると、連続数特定部は、処理対象である圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び、無効なレベルである強度値の連続数、を表すデータを取得し逐次的に加算する。そして、連続数を加算する毎に、その加算結果が目的とする特定のm/z値の配列番号(配列上の要素番号)に一致したか又はそれを超えたかを判定する。加算結果が目的とする特定のm/z値の配列番号に一致していれば或いは超えていれば、そのときの連続数を目的の連続数として特定する。このときには、圧縮データの配列の先頭から順に、連続数を表すデータのみを選択的に観察すればよく、有意なレベルである強度値を表すデータは無視すればよい。
次いで強度値探索部は、上記特定された連続数が無効なレベルである強度値の連続数である場合に、無効レベル又はそれに対応付けられた特定の強度値を出力する。他方、上記特定された連続数が有意なレベルである強度値の連続数である場合には、その連続数を表すデータに続く強度値の配列の中に目的とする強度値が存在するから、その配列の先頭から順に、連続数の加算結果と目的の配列番号とに基づく数だけデータを数えることで該当する配列番号の強度値を見つけて出力する。なお、ここで「無効レベル又はそれに対応付けられた特定の強度値」とは、例えば「0」を含む特定の値、又は実際の強度値ではあり得ない所定の値とすればよい。例えば「4」以下の強度値を無効レベルとみなす場合には、「0」を含む「4」以下の値のいずれかを無効レベル又はそれに対応付けられた特定の強度値と定めればよい。
このようにして第1及び第2発明では、圧縮データを伸張して元の測定データに戻すことなく、圧縮後の配列中において連続数を表すデータを見つけ、その連続数を加算するような簡単な処理を行うことによって、目的とする特定のパラメータ値、例えばm/z値に対応する強度値を迅速に求めることができる。
なお、或る一つのデータが有意なレベルである強度値の連続数を表すものか、又は無効なレベルである強度値の連続数を表すものかの識別は、データの一部のビットの情報(0又は1)に基づいて行えるようにすればよい。例えば一つのデータのビット長を2バイト(16ビット)とする場合、そのMSBを無効なレベルである強度値の連続数を表すものか、それ以外を表すもの(有意なレベルである強度値の連続数を表すデータ及びその強度値を表すデータ)かの識別に用い、残りの15ビットで連続数や強度値の数値を表せばよい。
また、連続数が、15ビットで表せる最大の数(32767)を超えるような場合には、その最大の数までの連続数を書き込んだ後、その数を超える部分の残りの連続数を、次のデータに書込むとよい。
上述したように第1及び第2発明では、圧縮後の配列の先頭から順に連続数を表すデータを見つけ、その連続数を加算するような簡単な処理を行うことによって、圧縮データを伸張して元の測定データに戻すことなく、目的とする特定のパラメータ値、例えばm/z値に対応する強度値を迅速に求めることができる。このことは、複数の強度値配列の全要素の加算或いは減算や、配列内の全要素の値の加算処理など、強度値配列全体を使用する処理に有効である。一方で、要素数の大きな強度値配列の末尾付近の特定の要素の強度値情報を取得する場合、一つの要素の強度値を取得するためだけに、多くの連続数の加算処理が必要になり処理時間が掛かる。
こうした課題を解決するために成された第3発明は、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理方法であって、
a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割ステップと、
b)ブロック毎に、当該ブロックに含まれる測定データの配列順に従って、予め決められた無効レベルである強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルである強度値が出現した場合にはスイッチ連長符号化を行うことにより、各ブロックにおける圧縮後のデータ配列を求める配列変換ステップと、
c)前記圧縮後の各ブロックのデータを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換ステップで得られた各ブロックの圧縮後のデータ配列と関連付けて保存するインデクス作成ステップと、
を有することを特徴としている。
また第4発明は上記第3発明に係るデータ処理方法を実施するための装置であり、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理装置であって、
a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割部と、
b)ブロック毎に、当該ブロックに含まれる測定データの配列順に従って、予め決められた無効レベルである強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルである強度値が出現した場合にはスイッチ連長符号化を行うことにより、各ブロックにおける圧縮後のデータ配列を求める配列変換部と、
c)前記圧縮後の各ブロックのデータを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換部により得られた各ブロックの圧縮後のデータ配列と関連付けて保存するインデクス作成部と、
を備えることを特徴としている。
この第3及び第4発明では、第1及び第2発明とは異なり、データ圧縮方法自体が従来にないものである。即ち、第3発明に係る機器分析用データ処理方法では、まずデータ分割ステップにおいて、測定データの配列が所定の個数のデータを含むブロックに区切られる。そして配列変換ステップでは、ブロック毎に、そのデータの配列順に従って、予め決められた無効レベルである強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、有意なレベルである強度値が出現した場合にはスイッチ連長符号化を行うことで圧縮後の配列を求める。即ち、ブロック毎に独立して第1及び第2発明で使用されていたのと同様の圧縮処理を実施すればよい。データ数を限定したブロック単位で圧縮処理を実施するため、ブロックに区切らない場合(つまりはデータ数に制限がない場合)に比べて圧縮効率は若干低下するものの、実際上その影響は小さい。
上述したようにブロック毎に独立に圧縮処理を行うため、一つのブロックに含まれる測定データの数は一定であるが、一つのブロックに対応する圧縮後のデータ数は一定でない。そこで、インデクス作成ステップでは、圧縮後の配列における各ブロックの先頭のデータの位置を示す識別情報、具体的には圧縮後のデータを全て並べた1次元配列上での配列番号を集めてインデクスを作成する。この場合、一つのブロックに対し一つのインデクス情報が得られるから、インデクス情報の量は圧縮前の測定データの強度値の並びや圧縮後の配列とは全く無関係である。そのため、例えばマススペクトルデータを圧縮する際に、テータ点数を左右するm/z範囲の広さはインデクスのデータ量に関係するが、観測されるピークの本数やその密度などはインデクスのデータ量に関係しない。それ故に、第3及び第4発明では、インデクスのデータ量が極端に大きくなることはなく、インデクスを含めた圧縮データの量を抑えることができる。
第3発明において、好ましくは、前記データ分割ステップ、前記配列変換ステップ、及び前記インデクス作成ステップの各ステップでの処理により圧縮して得られた圧縮データを処理する機器分析用データ処理方法であって、
該圧縮データから特定のパラメータ値における強度値を求めるために、
d)前記インデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前のデータを圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求めるブロック特定ステップと、
e)前記特定されたブロックに対応する圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するとき又は該配列番号を超えるときの連続数を特定する連続数特定ステップと、
f)前記連続数特定ステップで特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索ステップと、
を有するものとするとよい。
また同様に第4発明において、好ましくは、前記データ分割部、前記配列変換部、及び前記インデクス作成部の各部での処理により圧縮して得られた圧縮データを処理する機器分析用データ処理装置であって、
該圧縮データから特定のパラメータ値における強度値を求めるために、
d)前記インデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前のデータを圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求めるブロック特定部と、
e)前記特定されたブロックに対応する圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するとき又は該配列番号を超えるときの連続数を特定する連続数特定部と、
f)前記連続数特定部により特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索部と、
を備える構成とするとよい。
即ち、上記好ましいデータ処理方法及び装置では、複数のブロックのいずれに目的のm/z値に対応する強度値の情報が存在するのかをまず、インデクスを用いて探索する。そして、ブロックが特定されたならば、第1及び第2発明と類似した手順で、例えば目的のm/z値に対応する強度値を取得する。第1及び第2発明では、常にデータ配列の先頭から順番に連続数の情報を見つけて加算していく必要があるのに対し、この第3及び第4発明に係る好ましい方法及び装置では、一つのブロックに含まれるデータ配列の先頭から順番に連続数の情報を見つけて加算していけばよい。そのため、1ブロックに含まれるデータ数に依存するものの、ブロックに区切る際のデータ数を或る程度限定しておくことで、目的のm/z値に対応する強度値を探索する時間を短くすることができる。即ち、第1及び第2発明に比べて短い処理時間で目的とする強度値を求めることができる。
上記第1乃至第4発明で用いられている信号の圧縮方法は、微小な強度値の信号は重要でない又は使用しなくても問題ないという前提に基づいて、強度値が所定のレベル以下である信号を連続数に置き換える非可逆的な圧縮方法である。そのため、圧縮データから元の測定データを完全に復元することは不可能である。分析の種類或いは分析の目的によっては、上記圧縮方法で連続数に置き換えられていたような微小な強度値の信号も必要になる場合がある。そうした目的に対しては、特許文献1に記載された可逆的な圧縮方法が有効である。
即ち、上記課題を解決するために成された第5発明の第1の態様は、特許文献1に記載された圧縮方法で圧縮されたデータに上記第1発明のデータ処理方法を適用したものであり、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データのビット列を、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化による圧縮を行う一方、下位のビット列を含むデータ配列に対しては圧縮せずに得られた、複数の圧縮データ配列から成る圧縮データを処理するデータ処理方法であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理方法であって、
a)処理対象である複数の圧縮データ配列のうち、前記上位のビット列に対応する圧縮データ配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
b)前記特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
c)前記下位のビット列に対応する圧縮データ配列において特定のパラメータ値に対応する配列番号から下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
を有することを特徴としている。
また上記課題を解決するために成された第5発明の第2の態様は、上記第1の態様と同様に、特許文献1に記載された圧縮方法で圧縮されたデータに上記第1発明のデータ処理方法を適用したものであり、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データのビット列を、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化による圧縮を行う一方、下位のビット列を含むデータ配列に対して静的ハフマン符号化による圧縮を行うことで得られた、複数の圧縮データ配列から成る圧縮データを処理するデータ処理方法であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理方法であって、
a)処理対象である複数の圧縮データ配列のうち、前記上位のビット列に対応する圧縮データ配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
b)前記特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
c)処理対象である複数の圧縮データ配列のうち、前記下位のビット列に対応する圧縮データ配列を全て伸張し、その伸張後のデータ配列から特定のパラメータ値に対応する下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
を有することを特徴としている。
この場合、下位ビットは静的ハフマン符号により圧縮されているので、第1の態様で使用されている圧縮方法に比べると圧縮効率は高まるが、その反面、伸張処理により全ての下位ビット配列を元に戻してから目的とする特定のパラメータ値に対する下位ビットの値を探す必要があるので処理時間の点では不利である。
また上記課題を解決するために成された第6発明は、特許文献1に記載された圧縮方法と上記第3発明のデータ処理方法における圧縮方法とを組み合わせたものであり、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理方法であって、
a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割ステップと、
b)ブロック毎に、当該ブロックに含まれる測定データのビット列をそれぞれ、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、そのブロック毎に、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化を行う一方、下位のビット列を含むデータ配列に対してはそのまま又は静的ハフマン符号化を行うことで、各ブロックにおける圧縮後の複数のデータ配列を求める配列変換ステップと、
c)前記圧縮後の各ブロックの複数のデータ配列について、データを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換ステップで得られた各ブロックの圧縮後の複数のデータ配列と関連付けて保存するインデクス作成ステップと、
を有することを特徴としている。
また第7発明は、上記第6発明に係るデータ処理方法を実施するための装置であり、機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理装置であって、
a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割部と、
b)ブロック毎に、当該ブロックに含まれる測定データのビット列をそれぞれ、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、そのブロック毎に、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化を行う一方、下位のビット列を含むデータ配列に対してはそのまま又は静的ハフマン符号化を行うことで、各ブロックにおける圧縮後の複数のデータ配列を求める配列変換部と、
c)前記圧縮後の各ブロックの複数のデータ配列について、データを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換部により得られた各ブロックの圧縮後の複数のデータ配列と関連付けて保存するインデクス作成部と、
を備えることを特徴としている。
この第6発明及び第7発明でも、第3発明及び第4発明と同じような効果を達成することができる。
また上記第6発明において、好ましくは、前記データ分割ステップ、前記配列変換ステップ、及び前記インデクス作成ステップの各ステップでの処理により圧縮して得られた圧縮データで、且つ前記配列変換ステップでは下位のビット列に対する圧縮が行われていない圧縮データを処理する機器分析用データ処理方法であって、
該圧縮データから特定のパラメータ値における強度値を求めるために、
d)前記インデクスのうち上位のビット列に対応するインデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前の上位のビット列を圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求める第1ブロック特定ステップと、
e)前記第1ブロック特定ステップで特定されたブロックに対応する圧縮データの配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
f)前記連続数特定ステップで特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
g)特定のパラメータ値に対応する配列番号から下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
を有するものとするとよい。
一方、下位ビットのデータ配列がハフマン符号化されている場合には、前記データ分割ステップ、前記配列変換ステップ、及び前記インデクス作成ステップの各ステップでの処理により圧縮して得られた圧縮データで、且つ前記配列変換ステップでは下位のビット列に対する静的ハフマン符号化が行われている圧縮データを処理する機器分析用データ処理方法であって、
該圧縮データから特定のパラメータ値における強度値を求めるために、
d)前記インデクスのうち上位のビット列に対応するインデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前の上位のビット列を圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求める第1ブロック特定ステップと、
e)前記第1ブロック特定ステップで特定されたブロックに対応する圧縮データの配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
f)前記連続数特定ステップで特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
g)前記インデクスのうち下位のビット列に対応するインデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前の下位のビット列が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求める第2ブロック特定ステップと、
h)前記第2ブロック特定ステップで特定されたブロックに対応する下位ビット由来の圧縮データ配列を全て伸張し、そのあと特定のパラメータ値に対応する配列番号とそのブロックの先頭の配列番号の差分をもとに、伸張後のデータ配列から特定のパラメータ値に対応する下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
を有するものとするとよい。
第1、第2、及び第5発明によれば、マススペクトルデータ等の測定データが圧縮された状態である圧縮データから、任意のm/z値などの任意のパラメータ値に対応する強度値を高速に取得することができる。これにより、例えばイメージング質量分析装置で収集された多数の測定点毎のマススペクトルデータに基づいて、任意のm/z値におけるイメージング画像を短時間で作成して表示させることができる。
また第3、第4、及び第6発明によれば、高いデータ圧縮効率を確保しながら、第1、第2、及び第5発明よりもさらに高速に、つまりは短い処理時間で以て任意のm/z値等に対応する強度値を取得することができる。
本発明に係る機器分析用データ処理装置の一実施例を用いたイメージング質量分析システムの概略構成図。 本発明に係る機器分析用データ処理装置の別の実施例を用いたイメージング質量分析システムの概略構成図。 第1のデータ圧縮方法の原理説明図。 第1のデータ圧縮方法における圧縮データから特定のm/z位置の強度値を求める際の処理手順の説明図。 第2のデータ圧縮方法の原理説明図。 第2のデータ圧縮方法における圧縮データから特定のm/z位置の強度値を求める際の処理手順の説明図。 第1のデータ圧縮方法における圧縮データから特定のm/z位置の強度値を求める際の処理の流れを示すフローチャート。 第1のデータ圧縮方法における圧縮データから特定のm/z範囲の積算強度値を求める際の処理の流れを示すフローチャート。 第2のデータ圧縮方法における圧縮データから特定のm/z位置の強度値を求める際の処理の流れを示すフローチャート。 第2のデータ圧縮方法における圧縮データから特定のm/z範囲の積算強度値を求める際の処理の流れを示すフローチャート。 第2のデータ圧縮方法における圧縮データから多変量解析等のためのデータ行列を作成する際の処理の流れを示すフローチャート。 第2のデータ圧縮方法における圧縮データからm/z軸上でビニングされたデータ行列を作成する際の処理の流れを示すフローチャート。 第2のデータ圧縮方法における圧縮データからm/z軸上でビニングされたデータ行列を作成する際の処理の流れを示すフローチャート(図1のフローチャートの続き)。 第3のデータ圧縮方法の原理説明図。 第4のデータ圧縮方法の原理説明図。
以下、本発明に係る機器分析用データ処理方法及び装置の実施例について図面を参照しつつ説明する。
以下の例では、機器分析を実施する分析装置が質量分析装置であり、得られる測定データはマススペクトルデータである。なお、飛行時間型質量分析装置の場合には、分析を実行することでまず飛行時間スペクトルが得られ、飛行時間を質量電荷比に換算することでマススペクトルが得られる。したがって、飛行時間を質量電荷比に換算する前の飛行時間スペクトルを構成するデータもマススペクトルデータとみなすことができる。但し、後述するように、本発明を適用可能な分析装置はこれに限るものではない。
[第1の圧縮方法]
本発明に関連する第1の圧縮方法の原理について、図3を参照して説明する。
図3(C)はマススペクトルデータにより作成されるマススペクトルの一例である。横軸はm/z値、縦軸が強度値であり、このマススペクトルを構成するマススペクトルデータは、離散的なm/z値にそれぞれ対応する強度値の1次元配列で表すことができる。即ち、例えばm/z範囲が1~2000であるとすると、(m/z 1,m/z 2,m/z 3,…,m/z 1999,m/z 2000)というm/z値の1次元配列と、これに対応する(0,123,3,…,13,0)などの強度値の1次元配列とが、マススペクトルデータとして得られる。
よく知られているようにマススペクトルには様々な要因によるノイズが重畳し、このノイズが微小なピークとして観測される。この微小なピークは例えば化合物の同定や定量、或いはイメージング質量分析装置における特定の化合物の2次元強度分布の把握などの際に不要な、むしろ邪魔になるものである。そこで、圧縮処理前の一種のノイズ除去処理として、所定のレベル以下である強度値を無効なデータに置き換える。図3(A)では、この置き換えられた無効データを「*」で示している。例えば、「4」以下である強度値が無効であると定義すれば、図3(A)において「*」で示されているデータは元の強度値が「0」~「4」のいずれかである。また、質量分析装置の検出器への入力(イオン量)が過大であり検出器出力が飽和している可能性があるような場合には、強度値が予め定めた上限値であるときに、その強度値も無効データとして扱うようにするとよい。即ち、強度値がノイズとみなせる程度に小さい場合のみならず、強度値が検出器のダイナミックレンジを超えるような過大な状態である場合にも、強度値を無効データとするとよい。
図3(A)に示すように1次元に配列された強度値を圧縮する際には、その配列の先頭から順に各強度値をチェックしていき、有意な強度値が一以上連続している場合には、その先頭にその有意である強度値が連続している連続数の情報を記録し、それに引き続いてその有意な強度値の配列をそのまま記録する。したがって、有意な強度値がn個連続すると、そのn個の強度値はn+1個のデータ配列に置き換わる。図3(A)の例では、配列の先頭に有意な強度値が一つだけ存在するから、圧縮により、先頭に連続数として「1」を記録し、それに引き続いて有意な強度値「15」をそのまま記録する。また、「11」、「57」、「15」という三つの強度値が連続する配列は、「3」、「11」、「57」、「15」という四つのデータに置き換わる。
一方、無効である強度値が連続する場合には、その強度値が何個であっても、その無効である強度値全体を無効である強度値の連続数の一つの値に置き換える。図3(A)の例では、2番から14番までの配列番号のデータは全て無効データであるから、その13個のデータがまとめて一つの「13」という連続数を表すデータに置き換えられる。即ち、これによってデータ量は大幅に削減される。
但し、単に上記のような処理を行っただけでは、無効データの連続数と有意なデータの連続数との識別ができない。そこで、一つのデータを2バイト(2×8ビット=16ビット)のビット長で表す場合、その16ビット中の下位15ビットで連続数の数値を表し、最上位のビット(MSB)を、有意である強度値の連続数であるか、無効である強度値の連続数であるのかを識別するための識別子として使用するとよい。具体的には、MSBが「1」であるとき下位15ビットデータは有意である強度値の連続数又はその連続数に引き続く強度値を表し、MSBが「0」であるとき下位15ビットデータは無効な強度値の連続数を表すと定義すればよい。図3(B)では、MSBが「0」であるデータの上に「0」を記載している。
なお、上述した手順で圧縮を行う代わりに、特許文献1に記載の方法の一部を利用しても、結果的に同じような配列の圧縮後データを生成することができる。
なお、上述したような圧縮後のデータ配列における各データのサイズ(ビット長)は等しいことが望ましい。一方、強度値の最大ビット長はその強度値の上限又はダイナミックレンジで決まるのに対し、連続数の値はm/z範囲やm/z値軸上のm/z値間隔で決まり、強度値の最大ビット長に比べてかなり大きくなる可能性がある。そこで、圧縮データ配列において連続数の最大ビット長を考慮して一つのデータサイズを決めると、かなり無駄が生じる可能性がある。そこで、例えば圧縮データ配列上の一つの要素のデータサイズは8ビット(1バイト)とし、それに収まらない可能性がある連続数を示す値は複数(例えば2個)の要素を使用するようにしてもよい。後述するように、本圧縮方法による圧縮後のデータから特定のm/z値における強度値を求める際には、圧縮後のデータ配列の先頭から順次、データを確認しながら連続数を読み取る。そのため、或る一つの連続数の次に連続数が格納されている位置を特定することができる。これにより、有意な強度値そのものが格納されている要素と連続数の値が格納されている要素とを明確に区別することができる。そのため、データの先頭及び連続数の格納位置に該当する部分では、連続する二つの要素に格納されているデータのそれぞれのビット列を上位ビットと下位ビットとして組み合わせて16ビットの連続数を示す情報として取り扱うことができる。
また、マススペクトルの強度値は整数型データでなく浮動小数点型データであってもよい。例えば強度値が32ビットの浮動小数点型データで格納されている場合、圧縮後の配列のデータサイズも32ビットとするが、連続数が格納されている要素だけは32ビットの整数型として取り扱えばよい。
[第1の圧縮方法による圧縮データから特定のm/z値に対応する強度値を取得する方法]
図4は、上述した第1のデータ圧縮方法による圧縮後のデータから、特定のm/z値に対応する強度値を求める際の概略的な手順を説明した図である。
強度値を求めたい特定のm/z値が指定されると、上述したm/z値の配列の情報から、非圧縮データ配列上での特定のm/z値における強度値の位置、つまり配列番号が判明する。いまこの例では、図4(A)中に矢印で示すように、非圧縮データ配列上での目的の強度値の位置を示す配列番号は「16」であるものとする。
図4(B)に示す圧縮データの配列上で先頭から、連続数を示す値を順番に見つけ、その連続数を逐次加算する。具体的には、先頭のデータは必ず連続数であるから、この連続数の値「1」から、次の連続数を示すデータは3番目に位置していることが分かる。そこで、最初の連続数「1」に3番目のデータで示される連続数「13」を加算する。この連続数は無効データの連続数であるから、次の4番目のデータは有意なデータの連続数を表す。そこで、この4番目のデータで示される連続数「3」をさらに加算すると、加算結果は「17」となり、非圧縮データ配列上で目的の強度値が存在している配列番号「16」を超える。そこで、その時点で最後に加算した連続数が格納されている位置に引き続く三つの強度値の中に目的の強度値が存在する。
その直前の連続数の加算値は「14」であるから、有意な強度値の連続数「3」に続く三つの強度値は、非圧縮データ配列上の配列番号が「15」、「16」、及び「17」であることが分かる。そこで、この中で配列番号が「16」である位置にある(図4(B)中の下線矢印で示す)強度値「57」を選択し、これを目的とする特定のm/z値に対応する強度値として出力すればよい。
このように、圧縮データの配列の先頭から順番に連続数を見つけて加算していき、その加算結果と非圧縮データ配列上での配列番号とから、目的の強度値を見つけることができる。したがって、圧縮データを伸張して元のデータに戻すことなく、目的とする特定のm/z値に対応する強度値を迅速に見つけ出すことができる。
[第1の圧縮方法を採用した第1実施例のイメージング質量分析システムの構成]
図1は、上述した第1の圧縮方法をデータ保存に利用した、第1実施例のイメージング質量分析システムの概略構成図である。
このイメージング質量分析システムは、試料上の2次元領域内の多数の測定点についてそれぞれ質量分析を実行してマススペクトルデータを取得するイメージング質量分析部1と、データ圧縮処理等のデータ処理を実施するデータ処理部2と、該データ処理部2により圧縮されたデータを保存するデータ保存部3と、ユーザが操作する操作部4と、分析結果等を表示する表示部5と、を備える。データ処理部2の実体はパーソナルコンピュータであり、機能ブロックとして、スペクトルデータ収集部20、メインメモリ21、データ圧縮処理部22、データ伸張処理部23、データ読み出し処理部25、イメージング画像作成処理部26などを含む。また、データ保存部3は圧縮データ記憶領域30を有する。
スペクトルデータ収集部20は、イメージング質量分析部1において測定点毎に得られたマススペクトルデータを読み込み、メインメモリ21若しくは図示しない外部のハードディスク等の補助記憶装置、又はデータ保存部3において図示した記憶領域30以外の領域に一時的に格納する。データ圧縮処理部22は上述した第1の圧縮方法により、各測定点に対するマススペクトルデータをそれぞれ圧縮してデータ保存部3の圧縮データ記憶領域30に格納する。例えば特定の測定点における圧縮データからマススペクトルを再現して表示する場合には、データ伸張処理部23は操作部4を通して指定された測定点に対応する圧縮データをデータ保存部3から読み出し、圧縮時とは逆の伸張処理を実施してマススペクトルを再現し表示部5の画面上に表示する。但し、上記圧縮方法では無効であるレベルの信号を除去しているから、伸張処理により再現されたマススペクトルは測定により得られたマススペクトルそのものではない。
例えば操作部4を通して特定のm/z値におけるイメージング画像を表示するように指示がなされると、データ読み出し処理部25はデータ保存部3から圧縮データを読み出してきて、各測定点において指定されたm/z値に対応する強度値を取得する。この際には上記及び後述する手順で、伸張処理を実施することなく目的の強度値を読み出すことができる。イメージング画像作成処理部26は各測定点における強度値に基づいてイメージング画像を作成し、表示部5の画面上に表示する。m/z値の1次元配列は全ての測定点に共通であるから、非圧縮データ配列上で特定のm/z値に対応する配列番号は同じである。そのため、測定点毎に目的とする強度値を迅速に読み出すことができ、特定のm/z値におけるイメージング画像も短時間で作成することができる。
[特定のm/z値に対応する強度値を取得する際の詳細な処理]
図7は、第1実施例のイメージング質量分析システムにおいて特定のm/z位置の強度値を求める際にデータ読み出し処理部25で実施される詳細な処理を示すフローチャートである。ここで、Sは非圧縮データ配列上において強度値を取得したいデータが位置する配列番号である。これはm/z値の1次元配列の情報から既知である。Uは現在着目している非圧縮データ配列上における配列番号を示す変数である。また、Pは現在着目している圧縮データ配列上における配列番号を示す変数である。
なお、圧縮の原理等を説明した上記図3、図4のほか、後述する図5、図6、図14、及び図15では、データ配列上のデータの順序を分かり易く示すために、配列番号をその配列の先頭から1、2、…としている。しかしながら、よく知られているように、コンピュータ等を用いたデジタル信号処理の分野では、上述したような連続番号が付されたデータを処理する場合に、その先頭のデータの番号は0であるとして処理を実施するのが一般的である。本実施例の装置においても、装置の内部やソフトウェアにおいては、データ配列上の先頭の位置にあるデータの配列番号が0であるとして処理を実施する。そのため、以下の図7~図12に示すフローチャートでは、実際の装置の内部処理に対応して、データ配列の先頭の位置にあるデータの配列番号が0であることを前提としている。したがって、これらフローチャートにおける配列番号は、図3~図6、図14、及び図15中の配列番号から1を減じたものとなる。
まず、初期設定として変数Uを初期値で0に設定する(ステップS101)。また、変数Pを圧縮データ配列の先頭の位置(つまりは「1」)に設定する(ステップS102)。次に、変数Pの位置にあるデータの値Vを取得し(ステップS103)、この値VのMSBが「1」であるか否かを判定する(ステップS104)。MSBが「1」であれば、値Vは有意な強度値の連続数を示す。そこで、MSBが「1」であれば(S104でYes)、値VからMSBを除外した残りのビットで表される値を、その時点での変数Uの値に加算する(ステップS105)。一方、ステップS104でNoと判定される場合には、値VのMSBは「0」であり、それは値Vが無効である強度値の連続数であることを意味する。そこで、その値Vをそのままその時点での変数Uの値に加算する(ステップS109)。但し、実際にはステップS109においてMSBを除外して加算しても結果は同じである。
ステップS101で変数Uは0に設定されているから、初めてステップS105又はS109のいずれかの処理が実行されるときには、そのS105又はS109において加算される値がそのまま変数Uの値になる。図4に示した例で言えば、初めてステップS104が実施されるときS104ではYesと判定され、次のステップS105の処理で変数Uの値は「0」から「1」になる。
ステップS105の実行後、値VからMSBを除外した残りのビットで表される値に1を加算した値が、変数Pの値に加算される。これにより、圧縮データ配列上で着目しているデータの現在位置が進められる(ステップS106)。図4に示した例では、値VからMSBを除外した残りのビットで表される値は「1」であるから、これに1を加算した「2」だけ圧縮データ配列上で着目しているデータの位置が3番目まで進められる。これは、有意である強度値を示すデータをスキップする、つまりは観測しないことを意味する。そして、変数Uの値が目的とする配列番号Sよりも大であるか否かを判定し(ステップS107)、NoであればステップS107からS103に戻る。
一方、無効データの連続数を示すデータの次のデータは有意な強度値の連続数を示すデータであるから、ステップS109の実行後には、変数Pの値を1だけ増加させる。これにより、圧縮データ配列上で着目しているデータの現在位置が1だけ進められる(ステップS110)。そのあと、ステップS107と同様に、変数Uの値が目的とする配列番号Sよりも大であるか否かを判定し(ステップS111)、NoであればステップS111からS103に戻る。ステップS107又はS111からS103に戻った場合には、上述したステップS103~S107、S109~S111の処理を繰り返す。これにより、圧縮データ配列上で連続数を示すデータのみを選択しながら、目的の配列番号のデータの位置を探索することができる。
ステップS107でYesと判定されたときには、そのときの連続数は有意な強度値の連続数である。このときには、圧縮データ配列上で、その時点での変数Pで示される位置から[変数Uの値-目的の配列番号S]だけ戻った位置にあるデータの値を取得する。即ち、ステップS107でYesと判定されたときの連続数のあとに記録されている有意な強度値の配列の中から、目的とする配列番号に相当する位置の強度値を取得する。そしてその取得した値を目的とするm/z値に対応する強度値として出力する(ステップS108)。
一方、ステップS111でYesと判定されたときには、そのときの連続数は無効である強度値の連続数である。このときには、無条件に、無効値として定義されている値を目的とするm/z値に対応する強度値として出力する(ステップS112)。
以上のようにして、圧縮データを伸張することなく、目的とする特定のm/z値に対応する強度値を取得することができる。
[特定のm/z範囲に対応する強度積算値を取得する際の処理]
イメージング画像を表示する際に、特定の一つのm/z値ではなく特定のm/z範囲に含まれる複数の強度値を積算した強度積算値のイメージング画像を作成したい場合がある。図8は、特定のm/z範囲に含まれる複数の強度値を積算した強度積算値を取得する際にデータ読み出し処理部25で実施される詳細な処理を示すフローチャートである。
ここで、Ssは非圧縮データ配列上において積算対象であるm/z範囲の下限に対応する強度値のデータが位置する配列番号であり、Seは同じく積算対象であるm/z範囲の上限に対応する強度値のデータが位置する配列番号である。これらはm/z値の1次元配列の情報から既知である。また、Cは積算データ点数を計数するカウンタの計数値である。また、U、Pは現在着目している非圧縮データ配列上における配列番号を示す変数、及び、現在着目している圧縮データ配列上における配列番号を示す変数である。
まず、カウンタの計数値Cを下限の配列番号Ssに設定するとともに変数Uを0に設定する(ステップS201)。そのあとのステップS202~S207、S212~S214の各ステップの処理は、図7中のステップS102~S107、S109~S111の各ステップの処理と同じである(但し、ステップS207、S214中で変数Uと比較する対象がカウンタCの計数値に変更される)ので説明を省略する。
ステップS207でYesと判定されたときには、圧縮データ配列上で、その時点での変数Pで示される位置から[変数Uの値-目的の配列番号S]だけ戻った位置にあるデータの値を取得する。即ち、ステップS207でYesと判定されたときの連続数のあとに記録されている有意な強度値の配列の中から、目的とする配列番号に相当する位置の強度値を取得する。そしてその取得した値を強度積算値に加算する(ステップS208)。そのあと、カウンタの計数値Cを1だけカウントアップする(ステップS209)。そして、その計数値Cが変数Uの値以上であるか否かを判定し(ステップS210)、YesであればステップS210からS203に戻る。ステップS210でNoであれば、計数値Cが上限の配列番号Seを超えているか否かを判定し(ステップS211)、NoであればステップS208へ戻る。ステップS211でYesであれば、積算すべき強度値が全て積算されているので処理を終了する。
一方、ステップS214でYesと判定されたときには、そのまま、つまり積算を行わずにカウンタの計数値Cを1だけカウントアップする(ステップS215)。そして、その計数値Cが変数Uの値以上であるか否かを判定し(ステップS216)、YesであればステップS216からS203に戻る。ステップS216でNoであれば、計数値Cが上限の配列番号Seを超えているか否かを判定し(ステップS217)、NoであればステップS215へ戻る。ステップS217でYesであれば、積算すべき強度値が全て積算されているので処理を終了する。
以上のようにして、圧縮データを伸張することなく、目的とする特定のm/z範囲に対応する複数の強度値を積算した強度積算値を取得することができる。
特定のm/z値又は特定のm/z範囲のイメージング画像を作成して表示するには、m/z値の1次元配列の情報を利用して特定のm/z値に対応する配列番号、又は特定のm/z範囲の下限と上限にそれぞれ対応する配列番号を求める。そして、各測定点におけるマススペクトルデータがそれぞれ圧縮された圧縮データ配列から、上記手順に従って目的とする特定のm/z値に対応する強度値又は目的とする特定のm/z範囲に対応する強度積算値を取得する。そして、複数の測定点における強度値又は強度積算値に基づいてイメージング画像を作成してこれを表示部5の画面上に表示する。
[第2の圧縮方法]
次に、本発明に関連する第2の圧縮方法の原理について、図5を参照して説明する。
上記第1の圧縮方法はインデクスを使用しない圧縮方法であるため、データ量を削減するには有利であるものの、特定のm/z値に対応する強度値を取得する際に、圧縮データ配列の先頭から順に連続数を加算しなければならず、m/z範囲が広いマススペクトルデータにおいて高m/z領域の強度値を取得するときに時間が掛かる場合がある。この点を改善したのが第2の圧縮方法である。
元のマススペクトルデータにおける強度値の配列において、その強度値のレベルが所定以下であるデータを無効データとする前処理を行う点は第1の圧縮方法と同様である。図5(A)はそうした前処理後の非圧縮データ配列の一例である。特徴的であるのは、この非圧縮データ配列をそのまま圧縮処理するのではなく、一定のデータ数を含むブロックに区分し、そのブロック毎に独立に圧縮を行う点である。図5の例では、各ブロックが1000個のデータを含むようにデータ配列を区分している。
上記のように区分されたブロック毎に独立に、第1の圧縮方法と同様の手順で圧縮する。即ち、各ブロックの先頭のデータから順に、有意である強度値が連続していれば、その連続数を先頭に配置し、それに続いて強度値の配列を配置する。これにより、n個連続する有意な強度値はn+1個のデータ配列に置き換わる。一方、無効である強度値が連続していれば、その数に依らず、その連続した無効である強度値を1個の連続数を示すデータに置き換える。これにより、例えば図5(A)に示す1個のブロックに含まれる1000個のデータから成る配列は7個のデータに置き換わる。
また、圧縮データの配列上で各ブロックの先頭のデータの位置である配列番号を集めて1次元配列を作成し、これをインデクス情報として圧縮データの配列と共に保存する。図5の例では、各ブロックの先頭のデータの配列番号は「1」、「8」であるから、これらがインデクス情報となる。この圧縮方法では、非圧縮のデータ配列をブロックに区切るため、例えば連続している無効な強度値が二つのブロックに分けられてしまい、その分だけ第1の圧縮方法に比べて圧縮効率が下がる可能性がある。また、インデクスを作成するのでその分のデータ量も増加し、その点でも圧縮効率が下がる可能性がある。しかしながら、後述するように第1の圧縮方法に比べて実際のデータ量の増加はそれほど多くなく、十分に許容できる程度である。
[第2の圧縮方法による圧縮データから特定のm/z値に対応する強度値を取得する方法]
図6は、上述した第2のデータ圧縮方法による圧縮後のデータから、特定のm/z値に対応する強度値を求める際の概略的な手順を説明した図である。
強度値を求めたい特定のm/z値が指定されると、上述したm/z値の配列の情報から、非圧縮データ配列上での特定のm/z値における強度値の位置、つまり配列番号が判明する。いまこの例では、図6(A)中に矢印で示すように、非圧縮データ配列上での目的の強度値の位置を示す配列番号は「1003」であるものとする。
非圧縮データ配列上で配列番号が「1003」である強度値を図6(B)に示す圧縮データの配列上で探索する際には、まずインデクスを利用する。即ち、インデクスには圧縮データ配列上で各ブロックの先頭の位置の情報が格納されている。そこで、インデクスにおける1次元配列上の配列番号から1を減じ、それに1ブロック当たりの非圧縮時のデータ数(ここでは1000)を乗じたあとに1を加算すると、非圧縮データ配列上の各ブロックの先頭の配列番号が求まる。図6の例では、インデクスにおける1次元配列上で配列番号が「2」の位置にインデクス情報として「8」が格納されているが、この配列番号「2」から1を差し引いて1000を乗じて1を加算すると「1001」と求まる。したがって、圧縮データ配列上での配列番号「8」は非圧縮データ配列上の配列番号「1001」に対応することが分かる。そこで、圧縮データ配列上での配列番号「8」のデータが非圧縮データ配列上の配列番号「1001」に相当するデータであると対応付けて、第1の圧縮方法で利用した読み出し方法により目的とするm/z値に対応する強度値を探索すればよい。
図6の例では、圧縮データ配列上での配列番号「8」のデータはMSBが「0」であるから、無効データの連続数を示していることが分かる。この連続数は「4」であるから、非圧縮データ配列上の配列番号「1003」はこれに含まれる。そのため、非圧縮データ配列上の配列番号「1003」のデータは無効な強度値であることが分かる。このように、インデクスを利用して各ブロックの先頭の位置を見つけることより、無効な強度値の連続数及び有意な強度値の連続数の情報を読み取って加算する作業は、目的とするm/z値に対応するデータが含まれるブロックの先頭から始めればよい。即ち、この場合には、最大で非圧縮の1000個分データに相当する圧縮後の配列についてのみ上記作業を行えばよく、圧縮データ配列全体の先頭から順に上記作業を行う場合に比べて探索時間を短縮することができる。
第2の圧縮方法ではインデクスが付加されており、上記処理では目的とする強度値を探索する際にインデクスを利用しているが、インデクスを用いなくても第1の圧縮方法による圧縮データに対するデータ処理と同様の手法により、目的とする強度値を読み出すことができる。このように、インデクスを除く圧縮データ部分のみを使用した場合には、インデクスを利用した必要最低限のブロック内の処理による高速化は行えないものの、通常の伸長処理を行った後のデータ処理や、第1の圧縮方法による圧縮データに対するデータ処理との、処理の互換性が確保できるという利点がある。それにより、例えば第1の圧縮方法による圧縮データに対するデータ処理を行うためのソフトウェアしか搭載していない装置であっても、第2の圧縮方法による圧縮データから目的のm/z値に対応する強度値を取得する等、例えばイメージング質量分析データの解析に最低限必要な処理を実施することができる。また、保存されているインデクス情報が破損して読み出せない状況であっても、必要なデータ処理が可能である。
[第2実施例のイメージング質量分析システムの構成]
図2は、上述した第2の圧縮方法をデータ保存に利用した、第2実施例のイメージング質量分析システムの概略構成図である。
このイメージング質量分析システムにおいて上記第1実施例のイメージング質量分析装置における構成要素と同じ又は相当する構成要素については同じ符号を付して説明を省略する。このイメージング質量分析システムでは、データ処理部2にインデクス作成処理部24が付加され、データ保存部3にインデクス記憶領域31が設けられている。
スペクトルデータ収集部20は、イメージング質量分析部1において測定点毎に得られたマススペクトルデータを読み込み、メインメモリ21若しくは図示しない外部のハードディスク等の補助記憶装置、又はデータ保存部3において図示した記憶領域30以外の領域に一時的に格納する。データ圧縮処理部22は上述した第2の圧縮方法により、各測定点に対するマススペクトルデータを所定数のデータを含む複数のブロックに区分したうえで、ブロック毎にそれぞれ圧縮を行ってデータ保存部3の圧縮データ記憶領域30に格納する。また、インデクス作成処理部24は、データ圧縮処理部22によるブロック単位での圧縮毎に、上述したようにブロック先頭の位置情報を収集してインデクスを作成する。そして、作成したインデクスをデータ保存部3のインデクス記憶領域31に格納する。
例えば特定の測定点における圧縮データからマススペクトルを再現して表示する場合には、データ伸張処理部23は操作部4を通して指定された測定点に対応する圧縮データとそれに対応するインデクスとをデータ保存部3から読み出し、圧縮時とは逆の伸張処理を実施してマススペクトルを再現し表示部5の画面上に表示する。また、例えば操作部4を通して特定のm/z値におけるイメージング画像を表示するように指示がなされると、データ読み出し処理部25はデータ保存部3から圧縮データとそれに対応するインデクスを読み出してきて、各測定点において指定されたm/z値に対応する強度値を取得する。この際には上記及び後述する手順で、伸張処理を実施することなく目的の強度値を読み出すことができる。イメージング画像作成処理部26は各測定点における強度値に基づいてイメージング画像を作成し、表示部5の画面上に表示する。
[特定のm/z値に対応する強度値を取得する際の詳細な処理]
図9は、第2実施例のイメージング質量分析システムにおいて特定のm/z位置の強度値を求める際にデータ読み出し処理部25で実施される詳細な処理を示すフローチャートである。ここで、S、U、Pはすでに図7で説明した定義と同じである。またNは圧縮前の1ブロックのデータ数である。図5、図6の例ではN=1000である。
まず、強度値を確認したいm/z値に対応する非圧縮データ配列上の配列番号Sとインデクスとを利用して、配列番号Sよりも配列番号の小さな、ブロックの先頭の配列番号を見つける。そして、その配列番号から1を減じた値を変数Uの初期値に設定する(ステップS301)。上述したように目的とするm/z値の配列番号が「1003」である場合には、変数Uの値は1000となる。次に、インデクスの配列上で(U/N)+1番目のデータから、圧縮データ配列における上記ブロックの先頭の配列番号(図5、図6の例では「8」)を取得する(ステップS302)。そして、その取得した値を変数Pに設定する(ステップS303)。このステップS301~S303の処理により、圧縮データ配列上で連続数を読み出し始める先頭の位置が決まる。
ステップS304~S313の各処理は図7に示したステップS103~S112の各処理と基本的に同じであるため、詳しい説明は省略する。即ち、第1の圧縮方法による圧縮データに対する処理との相違は、目的とする特定のm/z値に対応する強度値の配列号を探索する際の初期値が、圧縮データの全配列の先頭であるか、或いは、当該するm/z値に対応する強度値が含まれているブロックの先頭であるか、という点のみである。この場合には、探索範囲が一つのブロック内に限定されるため、短時間で目的とする強度値を取得することができる。
[特定のm/z範囲に対応する強度積算値を取得する際の処理]
図10は、第2実施例のイメージング質量分析システムにおいて特定のm/z範囲に含まれる複数の強度値を積算した強度積算値を取得する際にデータ読み出し処理部25で実施される詳細な処理を示すフローチャートである。Ss、Se、N、C、U、Pの定義はこれまでの説明と同じである。また、図10においてQで示す部分は図8中でQで示すステップと同じである。
まず、強度値を確認したいm/z範囲の下限に対応する非圧縮データ配列上の配列番号Ssとインデクスとを利用して、配列番号Ssよりも配列番号の小さな、ブロックの先頭の配列番号を見つける。そして、その配列番号から1を減じた値を変数Uの初期値に設定する(ステップS401)。カウンタの計数値Cを下限の配列番号Ssに設定する(ステップS402)。次に、インデクスの配列上で(U/N)+1番目のデータから、圧縮データ配列における上記ブロックの先頭の配列番号を取得する(ステップS403)。そして、その取得した値を変数Pに設定する(ステップS404)。このステップS401~S404の処理により、圧縮データ配列上で連続数を読み出し始める先頭の位置が決まる。
そのあとのステップS405~S411、S414~S417及びQに含まれる各ステップの処理は、図8中のステップS203~S217の各ステップの処理と同じであるので説明を省略する。この場合にも、目的とするm/z範囲に対応する強度値を探索するブロックが限られるので、短時間で目的とする強度積算値を取得することができる。
特定のm/z値又は特定のm/z範囲のイメージング画像を作成して表示するには、m/z値の1次元配列の情報を利用して特定のm/z値に対応する配列番号、又は特定のm/z範囲の下限と上限にそれぞれ対応する配列番号を求める。そして、各測定点におけるマススペクトルデータがそれぞれ圧縮された圧縮データ配列から、上記手順に従って目的とする特定のm/z値に対応する強度値又は目的とする特定のm/z範囲に対応する強度積算値を取得する。そして、複数の測定点における強度値又は強度積算値に基づいてイメージング画像を作成してこれを表示部5の画面上に表示する。
[多変量解析等に利用されるデータ行列の作成処理]
一般に複数のマススペクトルデータに対して主成分分析などの多変量解析を行う場合、プロファイルデータの全てを解析に利用するのではなくプロファイルデータから有意なピークの情報(m/z値と強度)を抽出して作成したピーク強度情報について解析を行うことが多い。例えば、マススペクトル上のピークは複数のデータ点で構成されるが、ピークの中心(重心)から特定の許容幅の範囲内に含まれるデータ点の強度値を積算したり、横軸のm/z値を考慮した面積値(積分値)を計算したり、或いは、面積値をピークの幅で除した平均強度値などを求めたりすることで、一つのピークを一つ強度値で表現し、この強度値を行列状に配置したデータ行列に対し多変量解析を実行することがよくある。ピークを代表する一つの強度値として、単にピークトップの強度値を使用することもある。
いずれにしても圧縮データ配列から上記のようなデータ行列を作成する際には以下のような手順で行えばよい。
(1)m/z値リストの作成
まず、解析対象である複数のマススペクトルの全て又は一部を平均して求めた平均スペクトルや複数のマススペクトルについてm/z値毎に最大強度の信号を抽出して作成した最大強度スペクトルを求める。そして、そのスペクトル上で観測される各ピークのm/z範囲を調べ、各ピークの始点及び終点に対応するm/z値のリストを作成する。ピークのm/z範囲は例えばマススペクトル上のピークを構成する複数のデータの中で強度値が所定の閾値を超えるm/z範囲とすればよい。或いは、ピークトップや重心位置の前後に許容幅を設け、その許容幅の範囲をピークのm/z範囲とみなしてピークの始点及び終点を決めてもよい。また、解析に用いるデータ量を削減するために、上述のようにして作成した仮のピークリストの中で、マススペクトル上で強度値が所定値以上であるピークのみを抽出して最終的なm/z値のリストを作成してもよい。また、複数の化合物の質量の理論値や過去の実測値に基づいてm/z値のリストを作成してもよい。
(2)データ行列の強度値情報の計算
データ行列の各要素である強度値としては、次の積算強度値、ピークトップ強度値、セントロイド強度値のいずれかを用いることができる。
(A)積算(平均)強度値
上記のように作成したm/z範囲のリストを元に、解析対象である複数のマススペクトルについての圧縮データ配列から、リストに挙げられている各m/z範囲に対応する積算強度値を求める。各マススペクトルからリストに挙げられている各m/z範囲の積算強度値を計算する際に、前述の強度値積算処理を繰り返し実施すればよい。また、強度値を積算する過程で、m/z値軸上で隣接するデータ点同士のm/z値の差を強度値に乗じて面積値としてもよい。また、積算後の値を積算したデータ点数で除した平均値を各ピークを代表する一つの強度値としてもよい。
(B)ピークトップ強度値
ピークを代表する一つの強度値としてピークトップの強度値を使用する場合には、各マススペクトルにおけるリストに挙げられているm/z範囲毎に、次のような最大値計算処理を実施して各m/z範囲内に含まれるピークのピークトップの強度値を取得すればよい。図11は、第2実施例のイメージング質量分析システムにおいてm/z範囲に含まれる一つのピークのピークトップの強度値を取得する際にデータ読み出し処理部25で実施される詳細な処理を示すフローチャートである。Ss、Se、N、C、U、Pの定義はこれまでの説明と同じである。但し、ここではSs、Seは強度値を積算するm/z範囲の上限、下限ではなく、最大強度を探索するためのm/z範囲の上限、下限である。また、Iは最大強度値である。なお、図11においてQで示す部分は図8中でQでまとめて示すステップと同じである。
基本的に、図11における各ステップの処理は図10における各ステップの処理と殆ど同じである。異なるのは、図10におけるステップS410では取得した強度値を積算していたのに対し、図11におけるステップS510では取得した強度値をそれまでに求めた最大強度値Iと比較し、新たに取得した強度値のほうが大きければ最大強度値Iを新たな強度値に置き換える点である。したがって、図11に示した処理では、探索すべきm/z範囲の中で最大である強度値、つまりはピークトップの強度値が取得されることになる。
(C)セントロイド強度値
データ行列を作成する際に、事前に各マススペクトルの全てのピーク情報として、ピークの重心のm/z値と面積値とをセットにした、又は、ピークトップのm/z値と該ピークトップの強度値とをセットにしたセントロイドデータを求めておく。そして、各セントロイドデータに基づいて、データ行列の作成対象であるm/z値リストに挙げられているm/z範囲に含まれるセントロイドの強度値を、データ行列の強度値としてもよい。
(3)ビニングによるデータ行列の作成
上記データ行列は一つのピークに一つの強度値が対応しているデータ行列であるが、ピーク単位ではなく、ピークの有無とは無関係にマススペクトルのm/z軸を連続する複数の区間に区切って、その区間毎に一つの強度値を対応付けてデータ行列を作成してもよい。こうした処理をビニング(厳密にはm/z上のビニング)という。ビニングでは、各区間のm/z値幅は等しくなくてもよいから、例えば、有意なピークが存在する部分では区間を狭め、有意なピークが存在しない部分では区間を広くしてもよい。一つの区間に対応する一つの強度値は、その区間範囲内の強度値の積算値を用いることができる。
図12及び図13は、第2実施例のイメージング質量分析システムにおいてビニングのデータ行列を作成するために各区間の強度値を取得する際にデータ読み出し処理部25で実施される詳細な処理を示すフローチャートである。Ss、Se、N、C、U、Pの定義はこれまでの説明と同じである。但し、ここではSs、Seは強度値を積算する一つの区間のm/z範囲の上限、下限である。また、Jは区間毎の積算強度値である。
まず、最初のビン、つまりは最もm/z値が小さい区間の始点に対応する非圧縮データ配列上の配列番号をSs、終点に対応する非圧縮データ配列上の配列番号をSeに設定し、カウンタの計数値Cをその配列番号Ssに設定する(ステップS601)。そして、配列番号Ssとインデクスとを利用して、配列番号Ssよりも配列番号の小さな、ブロックの先頭の配列番号を見つけ、その配列番号から1を減じた値を変数Uの初期値に設定する(ステップS602)。次に、インデクスの配列上で(U/N)+1番目のデータから、圧縮データ配列における上記ブロックの先頭の配列番号を取得する(ステップS603)。そして、その取得した値を変数Pに設定する(ステップS604)。このステップS601~S604の処理により、最初のビンについて、圧縮データ配列上で連続数を読み出し始める先頭の位置が決まる。
そのあとのステップS605~S613、S617~S622に含まれる各ステップの処理は、図8中のステップS203~S217の各ステップの処理と同じであるので説明を省略する。ステップS613又はS622でYesと判定されたときには、そのビンについての処理が終了するから、強度積算値Jを出力用配列に移し、強度積算値Jをリセットして次のビンについての処理の準備を行う(ステップ614、S623)。そして、ビニング範囲の終点まで達していれば(ステップS615又はS624でYes)、全ての処理を終了するし、ステップS615又はS624でNoであれば、次のビンの終点をSeに設定して(ステップS616、S625)、ステップS610、S620にそれぞれ戻る。
なお、ここでは一つの区間に対する一つの強度値を積算強度値としているが、区間内の強度値の平均や有効な強度値の平均値、或いは、面積値や最大強度値でもよい。
また、前述した処理を適宜変形することで、複数のマススペクトルをそれぞれ圧縮したデータに基づいて、その複数のマススペクトルを平均した平均スペクトルを算出することもできる。その場合、マススペクトル全体のm/z範囲ではなく、特定のm/z範囲のみに限った平均スペクトルを計算することもできる。こうした平均スペクトルの算出は、イメージング質量分析装置で得られたデータから、試料上の関心領域(ROI)に含まれる複数の測定点におけるマススペクトルの平均を求める際などに有用である。
また、上述したようにデータ行列を作成する対象のm/z値リストを作成する際に、データ量を削減するために強度値の小さなピークを除外する場合、対象となる複数のマススペクトルの平均値を用いると、少数のマススペクトルにのみ現れる強度値の比較的大きなピークがm/z値リストから漏れることがある。こうしたことを回避するために、各m/z値について各マススペクトルの中から最大の強度値を選出し、それをマススペクトルの強度値とする最大強度スペクトルをm/z値リストを作成する際に使用する場合がある。こうしたときに必要となる最大強度スペクトルも、前述した処理を適宜変形することで、複数のマススペクトルをそれぞれ圧縮したデータから求めることができる。
なお、図2に示したように、m/z値の配列、複数の強度値の配列、及びインデクス情報は、コンピュータのHDDやSSDにデータファイルとして保存されているのが一般的であるが、上記の処理を行う際には、全てを一旦、メインメモリ21に読み込んでから処理を行うとよい。
また、処理に必要な一つの強度値の配列とインデクス情報とをメインメモリ21に読み込んで、その一つの強度値配列について計算処理が完了する度にそのデータをメインメモリ21から破棄し、次の強度値配列についてのデータを新たにメインメモリ21に読み込むという処理を繰り返してもよい。また、イメージング質量分析データの計算処理など、所定のm/z範囲の強度値情報のみが必要である場合、インデクス情報を参照して、圧縮データから所定のm/z範囲の強度値情報が含まれるブロックのみを選択的にメインメモリ21に読み込み、強度値計算処理を行ってもよい。もちろん、こうした処理の手順は本発明を限定する要素ではない。
上記第1、第2の圧縮方法は強度値が所定のレベル以下である信号を連続数に置き換えてしまう非可逆的な圧縮方法であり、微小な強度値の信号も重要である分析装置には適していない圧縮方法である。この点を改良したものが以下の第3、第4の圧縮方法である。
[第3の圧縮方法]
本発明に関連する第3の圧縮方法の原理について、図14を参照して説明する。
ここでは一つの強度値が2進数表示で8ビットで表されるものとする。図14に示すように、信号の強度値を表す8ビットのビット列を、下位2ビットと上位6ビットとに分割し、下位のビット列はそのままとして扱うか或いは静的ハフマン符号化を行い、上位6ビットのビット列に対しては第1の圧縮方法と同じスイッチ連長符号化を行ってデータ圧縮する。圧縮データを伸張する際には、下位のビット列、上位のビット列それぞれについて、圧縮の際に使用された方法に対応した伸張のアルゴリズムで以て元のビット列を復元し、それらを結合することで元のデータを復元する。このようにして、可逆的な圧縮、伸張が可能となる。なお、スイッチ連長符号化を行ったビット列に対してさらに静的ハフマン符号化を行ってもよい。
[第3の圧縮方法による圧縮データから特定のm/z値に対応する強度値を取得する方法]
上記第3の圧縮方法で圧縮されたデータのうち、スイッチ連長符号化された上位6ビットのビット列に対して、第1の圧縮方法で圧縮されたデータに対する処理と同じ処理により、特定のm/z値に対応するデータ配列上のビット列を取得する。一方、下位2ビットがそのまま保存されている場合にはそのデータ配列において特定のm/z値に対応する配列番号からビット列を読み出し、それらのビット情報を結合することで特定のm/z値に対応する強度値を取得する。下位2ビットのビット列に対し静的ハフマン符号化を行っている場合には、スイッチ連長符号化の場合と同様に圧縮されたデータから、特定の配列番号に対応する値を取り出すことはできないため、全てのデータを一旦伸張して特定のm/z値に対応するビット列を取り出し、スイッチ連長符号化されたビット列から取り出したビット情報と結合することで特定のm/z値に対応する強度値を取得する。
また、スイッチ連長符号化された上位6ビットのビット列に対しさらに静的ハフマン符号化を行った場合には、静的ハフマン符号化についての伸張を行った後、第1の圧縮方法で圧縮されたデータに対する処理と同じ処理によって、特定のm/z値に対応する上位6ビットのビット列の値を取得すればよい。
[第4の圧縮方法]
次に、本発明に関連する第4の圧縮方法の原理について図15を参照して説明する。この圧縮方法は第3の圧縮方法で用いた可逆圧縮の手法と第2の圧縮方法で用いたブロック分割及びインデクス作成の手法とを組み合わせたものである。
図15に示すように、まず非圧縮データ配列を一定のデータ数を含むブロックに区分する。この例では、図14に示した強度値の配列を50個のデータ毎に区分し、区分された各ブロック毎に独立して第3の圧縮方法により圧縮を行う。さらにまた、圧縮後の下位2ビットのビット列と、上位6ビットのビット列それぞれのビット列の圧縮後の各ブロックの先頭の位置情報を集めてインデクスを作成し、各ブロックの圧縮後のデータ配列と関連付けて保存する。インデクスは、下位2ビットのビット列と、上位6ビットのビット列の圧縮後の配列それぞれに関連付けられる。なお、下位2ビットについて静的ハフマン符号化を行う場合には、ブロック毎に異なるハフマン木を用い、ブロック毎に異なる符号の割り当てを行う。或いは、全てのブロックについて共通のハフマン木を用い、全ブロックに共通の符号の割り当てを行ってもよい。もちろん、第3の圧縮方法の原理で述べたように、下位2ビットは圧縮しなくてもよい。
[第4の圧縮方法による圧縮データから特定のm/z値に対応する強度値を取得する方法]
上述したように可逆圧縮された情報のうち、スイッチ連長符号化されたビット列に対して、該圧縮データから特定のm/z値における強度値を求めるために、第2の圧縮方法で圧縮されたデータに対する処理と同様に、インデクス情報を参照して特定のm/z値に対応するビット列の値を取得する。また、下位2ビットのビット列が圧縮されていない場合には、特定のm/z値に対応する配列番号からビット列を読み出し、それらのビット情報を結合することで特定のm/zに対応する強度値を取り出す。下位2ビットのビット列に対し静的ハフマン符号化を行っている場合には、インデクス情報を参照して特定のm/z値に対応するデータが含まれるブロックを特定する。そして、そのブロックに含まれるすべてのデータを伸張し、特定のm/z値に対応する配列番号と、ブロックの先頭の配列番号の差分をもとに、伸張後の配列から特定のm/z値に対応するビット列を取得し、上記スイッチ連長符号化されたビット列から取得した特定のm/z値に対応するビット列と結合して強度値情報を取得すればよい。
上記第3及び第4の圧縮方法による圧縮データに対しても、上述した第1及び第2の圧縮方法による圧縮データに対する様々なデータ処理を適用可能なことは明らかである。
上記第1の圧縮方法による圧縮データ、第2の圧縮方法による圧縮データ、及び非圧縮データのそれぞれのデータサイズの比較、並びに、処理速度の比較結果を表1に示す。ここでは、試料上の2次元領域内の測定点の点数が365×552であり、m/z範囲がm/z 1~m/z 2000である、イメージング質量分析データを想定している。なお、データ行列作成処理、及びビニング処理の所要時間には圧縮データ等のファイルを読み出す時間を含まず、ROI平均スペクトル作成処理の所要時間には圧縮データ等のファイルを読み出す時間を含む。
Figure 0007024866000001
上記比較から、データ圧縮によりデータサイズは1/6程度に削減されることが分かる。また、上述したように第2の圧縮方法では非圧縮データ配列をブロックに区切って圧縮処理を行うとともにインデクスを付加するため、データ量削減という点では第1の圧縮方法に比べて不利である。しかしながら、実際にはその両者のデータサイズの差はごく僅か(2%以内)であり、第2の圧縮方法でもデータ削減効果は十分に大きいということができる。
一方、第1の圧縮方法による圧縮データと第2の圧縮方法による圧縮データとでの処理速度の比較結果を見ると、ROI平均スペクトル作成処理やビニング処理では有意な差はないものの、データ行列作成処理では第2の圧縮方法による圧縮データについての処理速度が格段に短いことが分かる。上述したように、データ行列作成処理は複数のマススペクトルに対する主成分分析等の多変量解析を行う際に必須の処理であり、イメージング質量分析データの解析の際には多変量解析は頻用される。こうしたことから、データ行列作成処理の所要時間の短縮化はイメージング質量分析データの解析の効率を向上させるうえでかなり有効である。
一方、マススペクトルの全m/z範囲に亘るデータを用いて計算を行うROI平均スペクトル作成処理やビニング処理では、あまり有意な差はない。そのため、特定のm/z値の強度値を頻繁に取得する必要があるようなイメージング質量分析データの解析以外の場合には、第1の圧縮方法(又は第3の圧縮方法)とそれを用いたデータ処理方法で十分な場合がある。
上述したように本発明に係るデータ処理方法及び装置をイメージング質量分析装置に適用した例では、具体的に次のような効果がある。
(1)複数のマススペクトルを共通の一つのm/z値の配列と圧縮された複数の強度値の配列とで表すことで、圧縮前に比べてデータ容量を削減することができる。
(2)イメージング質量分析装置においてイメージング画像を表示したり、複数のマススペクトルデータに対して多変量解析を行うためにデータ行列を作成する際に特定のm/z値に対応する強度値又はm/z範囲に対応する強度積算値、平均値、最大値などを求めたりする場合、一般的には圧縮データを伸張してマススペクトルデータに戻してから強度値の選定や計算処理を行う必要がある。圧縮データを伸張するとデータの配列の長さが異なるため、元の圧縮データとは別の配列を作成しそこに伸張後のデータを格納する必要がある。その際に圧縮データから有効な強度値が保存されている部分の配列を伸張したデータの配列にコピーする処理を実行する必要がある。これに対し、本発明に係るデータ処理方法によれば、圧縮された強度値の配列から直接、目的とする強度値を取得することができ、データのコピーを行う必要がなく処理速度が向上する。
(3)本発明に係るデータ処理方法及び装置では、目的とするm/z値やm/z範囲に対応する強度値を取得する際に圧縮データを一旦伸張する必要がないため、伸張したデータを格納するための記憶領域をメインメモリ上で確保する必要がない。通常、強度値の計算処理はコンピュータのメインメモリ上で行われるが、計算する過程で使用するメモリの容量は伸張したデータを格納するメモリ容量に比べれば格段に少なくて済む。このように、本発明では、メインメモリの使用容量を節約することができる。
(4)MALDI-TOFMSで得られるマススペクトルデータはm/z範囲が広いため、一つのマススペクトルに対する非圧縮データのデータ数が100万を超えるような場合もある。このように非圧縮データの配列が非常に長い場合であっても、本発明に係る第2の圧縮方法では、目的とするm/z値又はm/z範囲に最も近いブロックの先頭から目的とする強度値を探索すればよいので、処理速度を短縮して短時間で結果を出力することができる。
なお、上記実施例は本発明をイメージング質量分析装置に適用したものであるが、本発明が適用可能な分析装置はそれに限らない。例えば、フーリエ変換赤外分光光度測定(FTIR)イメージング装置、ラマン分光イメージング装置、電子線マイクロアナライザ(EPMA)、クロマトグラフ装置などにも本発明を適用することができる。即ち、本発明は、m/z値に代えて、波数や波長、X線のエネルギー(X線の波長)、時間などのパラメータに従って強度値の1次元配列が得られる分析装置全般に適用可能である。
また、上記実施例はあくまでも本発明の一例であり、上記記載以外の点において本発明の趣旨の範囲で適宜に変更、修正、追加を行っても本願特許請求の範囲に包含されることは当然である。
1…イメージング質量分析部
2…データ処理部
20…スペクトルデータ収集部
21…メインメモリ
22…データ圧縮処理部
23…データ伸張処理部
24…インデクス作成処理部
25…データ読み出し処理部
26…イメージング画像作成処理部
3…データ保存部
30…圧縮データ記憶領域
31…インデクス記憶領域
4…操作部
5…表示部

Claims (18)

  1. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理方法であって、
    a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割ステップと、
    b)ブロック毎に、当該ブロックに含まれる測定データの配列順に従って、予め決められた無効レベルである強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルである強度値が出現した場合にはスイッチ連長符号化を行うことにより、各ブロックにおける圧縮後のデータ配列を求める配列変換ステップと、
    c)前記圧縮後の各ブロックのデータを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換ステップで得られた各ブロックの圧縮後のデータ配列と関連付けて保存するインデクス作成ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  2. 請求項1に記載の機器分析用データ処理方法であって、
    前記機器分析は質量分析であり、前記所定のパラメータは質量電荷比であり、前記測定データはマススペクトルを構成するデータであることを特徴とする機器分析用データ処理方法。
  3. 請求項1に記載の機器分析用データ処理方法であり、前記データ分割ステップ、前記配列変換ステップ、及び前記インデクス作成ステップの各ステップでの処理により圧縮して得られた圧縮データを処理する機器分析用データ処理方法であって、
    該圧縮データから特定のパラメータ値における強度値を求めるために、
    d)前記インデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前のデータを圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求めるブロック特定ステップと、
    e)前記特定されたブロックに対応する圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
    f)前記連続数特定ステップで特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  4. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理装置であって、
    a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割部と、
    b)ブロック毎に、当該ブロックに含まれる測定データの配列順に従って、予め決められた無効レベルである強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルである強度値が出現した場合にはスイッチ連長符号化を行うことにより、各ブロックにおける圧縮後のデータ配列を求める配列変換部と、
    c)前記圧縮後の各ブロックのデータを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換部により得られた各ブロックの圧縮後のデータ配列と関連付けて保存するインデクス作成部と、
    を備えることを特徴とする機器分析用データ処理装置。
  5. 請求項4に記載の機器分析用データ処理装置であって、
    前記機器分析は質量分析であり、前記所定のパラメータは質量電荷比であり、前記測定データはマススペクトルを構成するデータであることを特徴とする機器分析用データ処理装置。
  6. 請求項4に記載の機器分析用データ処理装置であり、前記データ分割部、前記配列変換部、及び前記インデクス作成部の各部での処理により圧縮して得られた圧縮データを処理する機器分析用データ処理装置であって、
    該圧縮データから特定のパラメータ値における強度値を求めるために、
    d)前記インデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前のデータを圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求めるブロック特定部と、
    e)前記特定されたブロックに対応する圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超えるときの連続数を特定する連続数特定部と、
    f)前記連続数特定部により特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索部と、
    を備えることを特徴とする機器分析用データ処理装置。
  7. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを、その配列順に従って、予め決められた無効レベルの強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルの強度値が出現した場合にはスイッチ連長符号化を行うことにより圧縮して得られた圧縮データを処理するデータ処理方法であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理方法であって、
    a)処理対象である圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超えるとの連続数を特定する連続数特定ステップと、
    b)前記連続数特定ステップで特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  8. 請求項7に記載の機器分析用データ処理方法であって、
    前記機器分析は質量分析であり、前記所定のパラメータは質量電荷比であり、前記測定データはマススペクトルを構成するデータであることを特徴とする機器分析用データ処理方法。
  9. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを、その配列順に従って、予め決められた無効レベルの強度値が一以上連続する場合には、その強度値を一括して強度値の連続数に置き換える一方、前記無効レベル以外の有意なレベルの強度値が出現した場合にはスイッチ連長符号化を行うことにより圧縮して得られた圧縮データを処理するデータ処理装置であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理装置であって、
    a)処理対象である圧縮データの配列の先頭から順に、有意なレベルである強度値の連続数、及び無効なレベルである強度値の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超えるときの連続数を特定する連続数特定部と、
    b)前記連続数特定部により特定された連続数が無効なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、無効レベルを示す情報又はそれに対応付けられた特定の強度値を出力し、前記特定された連続数が有意なレベルである強度値の連続数である場合には、前記特定のパラメータ値における強度値として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間の強度値の中から該当する配列番号の強度値を見つけて出力する強度値探索部と、
    を備えることを特徴とする機器分析用データ処理装置。
  10. 請求項9に記載の機器分析用データ処理装置であって、
    前記機器分析は質量分析であり、前記所定のパラメータは質量電荷比であり、前記測定データはマススペクトルを構成するデータであることを特徴とする機器分析用データ処理装置。
  11. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データのビット列を、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化による圧縮を行う一方、下位のビット列を含むデータ配列に対しては圧縮せずに得られた、複数の圧縮データ配列から成る圧縮データを処理するデータ処理方法であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理方法であって、
    a)処理対象である複数の圧縮データ配列のうち、前記上位のビット列に対応する圧縮データ配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
    b)前記特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
    c)前記下位のビット列に対応する圧縮データ配列において特定のパラメータ値に対応する配列番号から下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  12. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データのビット列を、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化による圧縮を行う一方、下位のビット列を含むデータ配列に対して静的ハフマン符号化による圧縮を行うことで得られた、複数の圧縮データ配列から成る圧縮データを処理するデータ処理方法であり、該圧縮データから特定のパラメータ値における強度値を求める機器分析用データ処理方法であって、
    a)処理対象である複数の圧縮データ配列のうち、前記上位のビット列に対応する圧縮データ配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
    b)前記特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
    c)処理対象である複数の圧縮データ配列のうち、前記下位のビット列に対応する圧縮データ配列を全て伸張し、その伸張後のデータ配列から特定のパラメータ値に対応する下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  13. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理方法であって、
    a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割ステップと、
    b)ブロック毎に、当該ブロックに含まれる測定データのビット列をそれぞれ、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、そのブロック毎に、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化を行う一方、下位のビット列を含むデータ配列に対してはそのまま又は静的ハフマン符号化を行うことで、各ブロックにおける圧縮後の複数のデータ配列を求める配列変換ステップと、
    c)前記圧縮後の各ブロックの複数のデータ配列について、データを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換ステップで得られた各ブロックの圧縮後の複数のデータ配列と関連付けて保存するインデクス作成ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  14. 請求項13に記載の機器分析用データ処理方法であり、前記データ分割ステップ、前記配列変換ステップ、及び前記インデクス作成ステップの各ステップでの処理により圧縮して得られた圧縮データで、且つ前記配列変換ステップでは下位のビット列に対する圧縮が行われていない圧縮データを処理する機器分析用データ処理方法であって、
    該圧縮データから特定のパラメータ値における強度値を求めるために、
    d)前記インデクスのうち上位のビット列に対応するインデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前の上位のビット列を圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求める第1ブロック特定ステップと、
    e)前記第1ブロック特定ステップで特定されたブロックに対応する圧縮データの配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
    f)前記連続数特定ステップで特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
    g)特定のパラメータ値に対応する配列番号から下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  15. 請求項13に記載の機器分析用データ処理方法であり、前記データ分割ステップ、前記配列変換ステップ、及び前記インデクス作成ステップの各ステップでの処理により圧縮して得られた圧縮データで、且つ前記配列変換ステップでは下位のビット列に対する静的ハフマン符号化が行われている圧縮データを処理する機器分析用データ処理方法であって、
    該圧縮データから特定のパラメータ値における強度値を求めるために、
    d)前記インデクスのうち上位のビット列に対応するインデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前の上位のビット列を圧縮した情報が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求める第1ブロック特定ステップと、
    e)前記第1ブロック特定ステップで特定されたブロックに対応する圧縮データの配列の先頭から順に、「0」でない値を示すビット列の連続数、及び「0」を示すビット列の連続数、の情報を取得して逐次的に加算し、その加算結果が目的とする特定のパラメータ値に対応する配列番号に一致するときの連続数又は該配列番号を超える直前の連続数を特定する連続数特定ステップと、
    f)前記連続数特定ステップで特定された連続数が「0」を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として「0」の値を出力し、前記特定された連続数が「0」でない値を示すビット列の連続数である場合には、前記特定のパラメータ値における上位のビット列として、圧縮データの配列上で該連続数を示すデータとその次に現れる連続数を示すデータとの間のビット列の中から該当する配列番号のビット列を見つけて出力する上位ビット情報探索ステップと、
    g)前記インデクスのうち下位のビット列に対応するインデクスを参照して目的とする特定のパラメータ値におけるデータの配列番号に対応する圧縮前の下位のビット列が含まれるブロックを特定し、該ブロックの先頭のデータ位置の情報を求める第2ブロック特定ステップと、
    h)前記第2ブロック特定ステップで特定されたブロックに対応する下位ビット由来の圧縮データ配列を全て伸張し、そのあと特定のパラメータ値に対応する配列番号とそのブロックの先頭の配列番号の差分をもとに、伸張後のデータ配列から特定のパラメータ値に対応する下位のビット列の情報を取得し、前記上位ビット情報探索ステップにより出力されるビット列の情報と合わせて特定のパラメータ値に対する強度値情報を取得する強度値取得ステップと、
    を有することを特徴とする機器分析用データ処理方法。
  16. 請求項11~15のいずれか1項に記載の機器分析用データ処理方法であって、
    前記機器分析は質量分析であり、前記所定のパラメータは質量電荷比であり、前記測定データはマススペクトルを構成するデータであることを特徴とする機器分析用データ処理方法。
  17. 機器分析により得られた所定のパラメータにおける複数の値に対する強度値の1次元配列である測定データを圧縮するための機器分析用データ処理装置であって、
    a)測定データの配列を所定の個数のデータ毎にブロックに区切るデータ分割部と、
    b)ブロック毎に、当該ブロックに含まれる測定データのビット列をそれぞれ、所定のレベル以下の下位のビット列とそれ以外の上位のビット列とに分割することで複数のデータ配列に分け、そのブロック毎に、上位のビット列を含むデータ配列に対しては少なくともスイッチ連長符号化を行う一方、下位のビット列を含むデータ配列に対してはそのまま又は静的ハフマン符号化を行うことで、各ブロックにおける圧縮後の複数のデータ配列を求める配列変換部と、
    c)前記圧縮後の各ブロックの複数のデータ配列について、データを並べた1次元配列上での各ブロックの先頭のデータの位置を示す配列番号の情報を集めてインデクスを作成し、前記配列変換部により得られた各ブロックの圧縮後の複数のデータ配列と関連付けて保存するインデクス作成部と、
    を備えることを特徴とする機器分析用データ処理装置。
  18. 請求項17に記載の機器分析用データ処理装置であって、
    前記機器分析は質量分析であり、前記所定のパラメータは質量電荷比であり、前記測定データはマススペクトルを構成するデータであることを特徴とする機器分析用データ処理装置。
JP2020522557A 2018-06-01 2018-06-01 機器分析用データ処理方法及び装置 Active JP7024866B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/021282 WO2019229998A1 (ja) 2018-06-01 2018-06-01 機器分析用データ処理方法及び装置

Publications (2)

Publication Number Publication Date
JPWO2019229998A1 JPWO2019229998A1 (ja) 2021-05-13
JP7024866B2 true JP7024866B2 (ja) 2022-02-24

Family

ID=68696867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020522557A Active JP7024866B2 (ja) 2018-06-01 2018-06-01 機器分析用データ処理方法及び装置

Country Status (4)

Country Link
US (1) US20210210319A1 (ja)
JP (1) JP7024866B2 (ja)
CN (1) CN112189136B (ja)
WO (1) WO2019229998A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113753977A (zh) * 2021-09-06 2021-12-07 北京思源广泰科技有限公司 一种数据处理方法及系统
CN115269594A (zh) * 2022-07-20 2022-11-01 清云智通(北京)科技有限公司 一种工业数据处理方法、系统及计算设备
CN115754416B (zh) * 2022-11-16 2023-06-27 国能大渡河瀑布沟发电有限公司 基于边缘计算的水轮发电机局部放电分析系统及方法
CN117097906B (zh) * 2023-10-20 2023-12-26 河北天英软件科技有限公司 一种区域医疗资源高效利用的方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004343299A (ja) 2003-05-14 2004-12-02 Dainippon Printing Co Ltd 時系列信号の符号化装置および記録媒体
WO2009069225A1 (ja) 2007-11-30 2009-06-04 Shimadzu Corporation 飛行時間測定装置
JP2012038459A (ja) 2010-08-04 2012-02-23 Shimadzu Corp 質量分析装置
JP2012169979A (ja) 2011-02-16 2012-09-06 Shimadzu Corp 質量分析データ処理方法及び該方法を用いた質量分析装置
WO2014175211A1 (ja) 2013-04-22 2014-10-30 株式会社島津製作所 イメージング質量分析データ処理方法及びイメージング質量分析装置
JP2014215043A (ja) 2013-04-22 2014-11-17 株式会社島津製作所 イメージング質量分析データ処理方法及びイメージング質量分析装置
JP2015513200A (ja) 2012-03-30 2015-04-30 マイクロマス ユーケー リミテッド 質量分析計
JP2017118388A (ja) 2015-12-25 2017-06-29 株式会社島津製作所 分析データ処理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4527753B2 (ja) * 2007-07-03 2010-08-18 株式会社エスグランツ ビット列検索装置、検索方法及びプログラム
US20100259631A1 (en) * 2007-10-26 2010-10-14 Fujifilm Corporation Data compression apparatus, data compression program and image-taking apparatus
JP4978539B2 (ja) * 2008-04-07 2012-07-18 カシオ計算機株式会社 符号化装置、符号化方法及びプログラム。
JP5472610B2 (ja) * 2009-11-26 2014-04-16 大日本印刷株式会社 数値データ列の符号化/復号化の方法および装置
US8836548B1 (en) * 2013-12-05 2014-09-16 Emc Corporation Method and system for data compression at a storage system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004343299A (ja) 2003-05-14 2004-12-02 Dainippon Printing Co Ltd 時系列信号の符号化装置および記録媒体
WO2009069225A1 (ja) 2007-11-30 2009-06-04 Shimadzu Corporation 飛行時間測定装置
JP2012038459A (ja) 2010-08-04 2012-02-23 Shimadzu Corp 質量分析装置
JP2012169979A (ja) 2011-02-16 2012-09-06 Shimadzu Corp 質量分析データ処理方法及び該方法を用いた質量分析装置
JP2015513200A (ja) 2012-03-30 2015-04-30 マイクロマス ユーケー リミテッド 質量分析計
WO2014175211A1 (ja) 2013-04-22 2014-10-30 株式会社島津製作所 イメージング質量分析データ処理方法及びイメージング質量分析装置
JP2014215043A (ja) 2013-04-22 2014-11-17 株式会社島津製作所 イメージング質量分析データ処理方法及びイメージング質量分析装置
JP2017118388A (ja) 2015-12-25 2017-06-29 株式会社島津製作所 分析データ処理装置

Also Published As

Publication number Publication date
CN112189136B (zh) 2024-01-09
US20210210319A1 (en) 2021-07-08
CN112189136A (zh) 2021-01-05
JPWO2019229998A1 (ja) 2021-05-13
WO2019229998A1 (ja) 2019-12-05

Similar Documents

Publication Publication Date Title
JP7024866B2 (ja) 機器分析用データ処理方法及び装置
US9859917B2 (en) Enhanced data compression for sparse multidimensional ordered series data
US8498989B2 (en) Mass analysis data processing method and mass spectrometer using the same
US10312067B2 (en) Imaging mass analysis data processing method and imaging mass spectrometer
JP5950034B2 (ja) イメージング質量分析データ処理方法及びイメージング質量分析装置
CN101878423B (zh) 飞行时间测定装置
US10553413B2 (en) Mass spectrometer
JP5454409B2 (ja) 質量分析装置
CN113658645A (zh) 一种质谱数据压缩方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200930

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200930

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220124

R151 Written notification of patent or utility model registration

Ref document number: 7024866

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151