RRUFFのラマンデータで遊ぶ
をテンプレートにして作成
AND検索
OR検索
開始行:
*RRUFFのラマンデータで遊ぶ(20251212作成:最終更新20260111)
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_i...
CENTER:天然anorthiteの測定ラマンスペクトル(青)と検索で...
----
#contents
**前書き
[[RRUFF:https://rruff.net]]はアリゾナ大学のDowns教授(...
RRUFFプロジェクトは元々Appleの初代CEOのMichael Scottが...
以下は前半の方ではピーク位置のindexファイルを作ってそれ...
この件についてはJpGU2026で自作簡易ラマン分光器と絡めて...
**RRUFFラマンデータ
RRUFFのラマンスペクトル集はRRUFFのサイトから自由にダウ...
ファイルをいくらか読んでみると、フォーマットは大体は統...
-ファイル名自体に鉱物名、ID番号、レーザー波長などの情報が...
-データファイルはテキストファイル(*.txt)でコードUTF-8、Wi...
-最初の方に情報やコメントがあり、それらの行の先端には##が...
-データ部分は相対波数と強度の順番で1行に1ペアあって、2つ...
-データ行の始まる前後に空白行があったり、なかったりします...
-IDは個別の鉱物試料について付与されているようです。大半が...
-データにはX線回折で鉱物を同定してないものも含まれていて...
-基本天然鉱物が主なので蛍光が強く出ているものもそのまま使...
----
*indexファイルを使った検索
**検索プログラムの作成方針
プログラムはpythonで作成し、いつものようにGUIにはTkinte...
-データベースソフトは使わないで、テキストファイルで処理し...
-高波数側(1600 cm-1以上)は使いません。含水相などもあり...
-RRUFFラマンデータ(スペクトル)を1つづつ処理して、ラマ...
-別途検索用プログラムを作り、そちらではまず同定したい観察...
-観察スペクトルは相対波数と強度がカンマで区切られているcs...
-楽するためになるべくnumpy, scipy等の機能を使います。たと...
-同定に使う観察スペクトルはほぼ単相のものを想定しています...
***index.txtファイルの作成
最初にRRUFFのラマンデータファイルを開いてプロットして、...
Savitzky-Golay法で平滑化した方がより正しいピーク検出が...
ピーク強度は取り入れてませんが、強度の順番にindex.txtフ...
Processedを全部処理するプログラムを作成して、それを実行...
index.txtファイルは先頭8つがピーク位置を高いものから低...
***index.txtファイルの検索プログラムの作成
続いて検索するプログラムを作成しました。同定したいスペ...
実測スペクトルによってはピークが1つ(ダイヤモンド)と...
今の所、一致度(gof)には非常に単純な指標を使ってます。...
バックグラウンド除去には移動平均を利用する方法を使いま...
自分で測定したデータ数十個でテストしてみましたが、ほと...
面白いことに石英の測定スペクトルを使って検索したところ...
自分の持っているラマンデータも検索に使えるようにしたい...
**作ったプログラムの実行例
まずはプログラムのGUI windowが出てきます。全然洗練され...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
まずはLoadボタンをクリックして、データを読み込みます。...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
次にSmoothボタンをクリックすると平滑化したスペクトルが...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
バックグラウンドがある場合はbackgroundボタンをクリック...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
次にピーク検出を行います。パラメータは普通はそのままで...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
スペクトルとリストボックスのピークリストを吟味して、本...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
候補のリストボックスから見たいものを選んでPlotボタンを...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
最新版では鉱物名で検索できるようにしました。その結果は...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
この例の場合はenstatiteなので、orthoenstatiteかclinoens...
可能性としてはprotoenstatiteもあり得るのですが(特に常...
**pythonコードのダウンロード
参考のためにコードを公開してます(Mac上で作成)。クリッ...
-index.txtを作るプログラム。もちろんRRUFFのデータが必要。...
-上記でexcellent_unorientedデータセットから作ったindex.tx...
-検索するプログラム。index.txtとRRUFFのデータが必要。これ...
RRUFFのデータを使って鉱物同定などを行った場合はRRUFFを...
**改造して粉末X線回折パターン検索をしてみる
RRUFFには粉末X線回折データもあるので、同じように検索で...
ちょっと作ってみたのが下に示したものです。以前測定したf...
もちろんWindowsユーザーであれば[[QualX2]]を使えば、COD...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_dif_ind...
----
*スペクトル自体を使ったbrute force検索(20260101追記)
#image(https://mkanzaki.sakura.ne.jp/images/cosine_simila...
上記のindexファイルを使った方法で十分同定できるのですが...
そこでスペクトル自体を使う方法としてコサイン類似度を考...
まずは2つのラマンスペクトルを読み込んで、それのコサイ...
#image(https://mkanzaki.sakura.ne.jp/images/cosine_simila...
1スペクトルの処理時間(ファイル読み込み時間も込み)を...
これをベースに検索プログラムを作ってみました。最初同定...
コサイン類似度の計算はscipyのライブラリを使ってます。以...
from scipy.spatial.distance import cosine
そしてコサイン類似度の計算はスペクトル(numpy1次元行列)...
cs = 1.0 - cosine(spectrum1,spectrum2)
このようにコサイン類似度の計算はライブラリを使うと簡単...
色々試してコサイン類似度だけだとちょっと正解でないケー...
from scipy.stats import pearsonr
そして以下で計算できます。ccの方にピアソン相関係数が入っ...
cc,p = pearsonr(spectrum1,spectrum2)
ピアソン相関係数は1から-1の値を取るので、ピアソン相関係数...
cx = math.sqrt(cs*(cc+1.0)/2.0)
それで検索プログラムを作ってみました(最後の図の中にコサ...
これをテストしていたらRRUFFの間違いをまた1つ見つけまし...
これをテストしていると何となくCrystalSleuthの動作と似た...
**indexファイルを使う場合との比較
まだ十分にはチェックしてないのですが以下を観測して考察...
-indexファイルを使う方法が同定できる可能性が少し高いです…...
-スペクトルを使う方法では宇宙線や不純物相や蛍光によるピー...
-スペクトルを使う方法では観測スペクトルとRRUFFのスペクト...
-コサイン類似度はピーク強度とはあまり関係しないと思うので...
**brute forceの検索pythonコードのダウンロード
参考のためにコードを公開してます(Mac上で作成)。クリッ...
-brute force検索するプログラム。[[download:https://mkanza...
RRUFFのデータを使って鉱物同定などを行った場合はRRUFFを...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_b...
CENTER:桜島溶岩中の鉱物の測定ラマンスペクトル(青)と検索...
どちらのプログラムもラズパイ5に入れて動作させてみまし...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_b...
終了行:
*RRUFFのラマンデータで遊ぶ(20251212作成:最終更新20260111)
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_i...
CENTER:天然anorthiteの測定ラマンスペクトル(青)と検索で...
----
#contents
**前書き
[[RRUFF:https://rruff.net]]はアリゾナ大学のDowns教授(...
RRUFFプロジェクトは元々Appleの初代CEOのMichael Scottが...
以下は前半の方ではピーク位置のindexファイルを作ってそれ...
この件についてはJpGU2026で自作簡易ラマン分光器と絡めて...
**RRUFFラマンデータ
RRUFFのラマンスペクトル集はRRUFFのサイトから自由にダウ...
ファイルをいくらか読んでみると、フォーマットは大体は統...
-ファイル名自体に鉱物名、ID番号、レーザー波長などの情報が...
-データファイルはテキストファイル(*.txt)でコードUTF-8、Wi...
-最初の方に情報やコメントがあり、それらの行の先端には##が...
-データ部分は相対波数と強度の順番で1行に1ペアあって、2つ...
-データ行の始まる前後に空白行があったり、なかったりします...
-IDは個別の鉱物試料について付与されているようです。大半が...
-データにはX線回折で鉱物を同定してないものも含まれていて...
-基本天然鉱物が主なので蛍光が強く出ているものもそのまま使...
----
*indexファイルを使った検索
**検索プログラムの作成方針
プログラムはpythonで作成し、いつものようにGUIにはTkinte...
-データベースソフトは使わないで、テキストファイルで処理し...
-高波数側(1600 cm-1以上)は使いません。含水相などもあり...
-RRUFFラマンデータ(スペクトル)を1つづつ処理して、ラマ...
-別途検索用プログラムを作り、そちらではまず同定したい観察...
-観察スペクトルは相対波数と強度がカンマで区切られているcs...
-楽するためになるべくnumpy, scipy等の機能を使います。たと...
-同定に使う観察スペクトルはほぼ単相のものを想定しています...
***index.txtファイルの作成
最初にRRUFFのラマンデータファイルを開いてプロットして、...
Savitzky-Golay法で平滑化した方がより正しいピーク検出が...
ピーク強度は取り入れてませんが、強度の順番にindex.txtフ...
Processedを全部処理するプログラムを作成して、それを実行...
index.txtファイルは先頭8つがピーク位置を高いものから低...
***index.txtファイルの検索プログラムの作成
続いて検索するプログラムを作成しました。同定したいスペ...
実測スペクトルによってはピークが1つ(ダイヤモンド)と...
今の所、一致度(gof)には非常に単純な指標を使ってます。...
バックグラウンド除去には移動平均を利用する方法を使いま...
自分で測定したデータ数十個でテストしてみましたが、ほと...
面白いことに石英の測定スペクトルを使って検索したところ...
自分の持っているラマンデータも検索に使えるようにしたい...
**作ったプログラムの実行例
まずはプログラムのGUI windowが出てきます。全然洗練され...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
まずはLoadボタンをクリックして、データを読み込みます。...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
次にSmoothボタンをクリックすると平滑化したスペクトルが...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
バックグラウンドがある場合はbackgroundボタンをクリック...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
次にピーク検出を行います。パラメータは普通はそのままで...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
スペクトルとリストボックスのピークリストを吟味して、本...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
候補のリストボックスから見たいものを選んでPlotボタンを...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
最新版では鉱物名で検索できるようにしました。その結果は...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_s...
この例の場合はenstatiteなので、orthoenstatiteかclinoens...
可能性としてはprotoenstatiteもあり得るのですが(特に常...
**pythonコードのダウンロード
参考のためにコードを公開してます(Mac上で作成)。クリッ...
-index.txtを作るプログラム。もちろんRRUFFのデータが必要。...
-上記でexcellent_unorientedデータセットから作ったindex.tx...
-検索するプログラム。index.txtとRRUFFのデータが必要。これ...
RRUFFのデータを使って鉱物同定などを行った場合はRRUFFを...
**改造して粉末X線回折パターン検索をしてみる
RRUFFには粉末X線回折データもあるので、同じように検索で...
ちょっと作ってみたのが下に示したものです。以前測定したf...
もちろんWindowsユーザーであれば[[QualX2]]を使えば、COD...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_dif_ind...
----
*スペクトル自体を使ったbrute force検索(20260101追記)
#image(https://mkanzaki.sakura.ne.jp/images/cosine_simila...
上記のindexファイルを使った方法で十分同定できるのですが...
そこでスペクトル自体を使う方法としてコサイン類似度を考...
まずは2つのラマンスペクトルを読み込んで、それのコサイ...
#image(https://mkanzaki.sakura.ne.jp/images/cosine_simila...
1スペクトルの処理時間(ファイル読み込み時間も込み)を...
これをベースに検索プログラムを作ってみました。最初同定...
コサイン類似度の計算はscipyのライブラリを使ってます。以...
from scipy.spatial.distance import cosine
そしてコサイン類似度の計算はスペクトル(numpy1次元行列)...
cs = 1.0 - cosine(spectrum1,spectrum2)
このようにコサイン類似度の計算はライブラリを使うと簡単...
色々試してコサイン類似度だけだとちょっと正解でないケー...
from scipy.stats import pearsonr
そして以下で計算できます。ccの方にピアソン相関係数が入っ...
cc,p = pearsonr(spectrum1,spectrum2)
ピアソン相関係数は1から-1の値を取るので、ピアソン相関係数...
cx = math.sqrt(cs*(cc+1.0)/2.0)
それで検索プログラムを作ってみました(最後の図の中にコサ...
これをテストしていたらRRUFFの間違いをまた1つ見つけまし...
これをテストしていると何となくCrystalSleuthの動作と似た...
**indexファイルを使う場合との比較
まだ十分にはチェックしてないのですが以下を観測して考察...
-indexファイルを使う方法が同定できる可能性が少し高いです…...
-スペクトルを使う方法では宇宙線や不純物相や蛍光によるピー...
-スペクトルを使う方法では観測スペクトルとRRUFFのスペクト...
-コサイン類似度はピーク強度とはあまり関係しないと思うので...
**brute forceの検索pythonコードのダウンロード
参考のためにコードを公開してます(Mac上で作成)。クリッ...
-brute force検索するプログラム。[[download:https://mkanza...
RRUFFのデータを使って鉱物同定などを行った場合はRRUFFを...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_b...
CENTER:桜島溶岩中の鉱物の測定ラマンスペクトル(青)と検索...
どちらのプログラムもラズパイ5に入れて動作させてみまし...
#image(https://mkanzaki.sakura.ne.jp/images/rruff_Raman_b...
ページ名: