2016.11.29 SPMのボクセル座標
自作のスクリプトでfMRIのデータを解析してたのだが、いっこうに結果がでなくて困っていた。
視覚反応が取れているかチェックするために
被験者にチェッカーボード刺激(5 deg. 8 Hz)を見せて、視覚領域で再現性のあるデータが取れるかしらべたんだけど、うまくいかなかった。
再現性の高いボクセルはあるんだけど、視覚領域とはちがうところにあって
しかもそれらがストライプっぽく並んでるので、生理学的な反応とは思い難い。
で、スクリプトをいろいろ見返してたらバグを発見しました。
原因はspm_read_volsが吐き出すボクセル位置情報とxSPM.XYZmmに保存されている位置情報の並びが違うことでした。
データの読み込みはspm_read_volsで行って
解剖画像にオーバーレイするときにはxSPM.XYZmm(ただしくはxSPM.XYZ)の座標を使っていたのがまずかったようです。
xSPM.XYZをspm_read_volsの戻り値に置き換えたら
V1あたりにそれっぽい反応が集中したのでひと安心。
以下はメモ:座標の変換
voxel to mm: xSPM.M * [xyz; 1]
mm to voxel: xSPM.iM * [xyzmm; 1]
視覚反応が取れているかチェックするために
被験者にチェッカーボード刺激(5 deg. 8 Hz)を見せて、視覚領域で再現性のあるデータが取れるかしらべたんだけど、うまくいかなかった。
再現性の高いボクセルはあるんだけど、視覚領域とはちがうところにあって
しかもそれらがストライプっぽく並んでるので、生理学的な反応とは思い難い。
で、スクリプトをいろいろ見返してたらバグを発見しました。
原因はspm_read_volsが吐き出すボクセル位置情報とxSPM.XYZmmに保存されている位置情報の並びが違うことでした。
データの読み込みはspm_read_volsで行って
解剖画像にオーバーレイするときにはxSPM.XYZmm(ただしくはxSPM.XYZ)の座標を使っていたのがまずかったようです。
xSPM.XYZをspm_read_volsの戻り値に置き換えたら
V1あたりにそれっぽい反応が集中したのでひと安心。
以下はメモ:座標の変換
voxel to mm: xSPM.M * [xyz; 1]
mm to voxel: xSPM.iM * [xyzmm; 1]
コメント
コメントを投稿