{
  "id": 395143,
  "title": "Quick look at Previous Research (References)",
  "url": "/competitions/tlvmc-parkinsons-freezing-gait-prediction/discussion/395143",
  "author_name": "",
  "post_date": "2023-03-16T03:06:07.294297400Z",
  "votes": 24,
  "comment_count": 4,
  "views": 0,
  "content": "<p>Pardoel, Scott, Jonathan Kofman, Julie Nantel, and Edward D. Lemaire. 2019. \"Wearable-Sensor-Based Detection and Prediction of Freezing of Gait in Parkinson’s Disease: A Review\" Sensors 19, no. 23: 5141. <a href=\"https://doi.org/10.3390/s19235141\" target=\"_blank\">https://doi.org/10.3390/s19235141</a> </p>\n<p><a href=\"https://www.mdpi.com/1424-8220/19/23/5141\" target=\"_blank\">https://www.mdpi.com/1424-8220/19/23/5141</a></p>\n<p>This is a systematic review by Pardoel et. al. in 2019 that references 74 publications about FOG detection.  Summaries of the studies are provided in Table 1 of the paper and track back to 2008.  Several of these papers include FOG prediction rather than just classification associated with the sensors (using LSTM and other models), but this table breaks down the sensitivity and specificity for most of the classification algorithms and summarizes the methods from each paper.  </p>\n<p>The most recent, similar dataset (one accelerometer on lower back) is in Li, 2018:  <a href=\"https://ieeexplore.ieee.org/document/8469471\" target=\"_blank\">https://ieeexplore.ieee.org/document/8469471</a>.   This paper used mini-batch K-means clustering using acceleration entropy with 1 second windowing and exhibited &gt;90% sensitivity and specificity.  </p>\n<p>Oung, 2018 ( <a href=\"https://ieeexplore.ieee.org/document/8477606\" target=\"_blank\">https://ieeexplore.ieee.org/document/8477606</a>) also used accelerometer data (3 locations) with Neural networks and also SVM to consider data with &gt;87% sensitivity and specificity for a person-independent model. </p>\n<p>Table 2 in the Pardoel paper includes a list of the different Features that have been extracted from various sensors and provide references to which papers they were used in.  This is a rather hefty list of features (even when only looking at the accelerometer data) and worth a look.  Finally, table 3 provides a list of the machine learning methods and summarizes the top three methods within each group of methods tested.  </p>\n<p>Hopefully this paper will help some of us with a background for working on this problem.  Good luck to everyone!</p>",
  "messages": [
    {
      "id": "2183913",
      "postDate": "03/16/2023 03:06:07",
      "content": "<p>Pardoel, Scott, Jonathan Kofman, Julie Nantel, and Edward D. Lemaire. 2019. \"Wearable-Sensor-Based Detection and Prediction of Freezing of Gait in Parkinson’s Disease: A Review\" Sensors 19, no. 23: 5141. <a href=\"https://doi.org/10.3390/s19235141\" target=\"_blank\">https://doi.org/10.3390/s19235141</a> </p>\n<p><a href=\"https://www.mdpi.com/1424-8220/19/23/5141\" target=\"_blank\">https://www.mdpi.com/1424-8220/19/23/5141</a></p>\n<p>This is a systematic review by Pardoel et. al. in 2019 that references 74 publications about FOG detection.  Summaries of the studies are provided in Table 1 of the paper and track back to 2008.  Several of these papers include FOG prediction rather than just classification associated with the sensors (using LSTM and other models), but this table breaks down the sensitivity and specificity for most of the classification algorithms and summarizes the methods from each paper.  </p>\n<p>The most recent, similar dataset (one accelerometer on lower back) is in Li, 2018:  <a href=\"https://ieeexplore.ieee.org/document/8469471\" target=\"_blank\">https://ieeexplore.ieee.org/document/8469471</a>.   This paper used mini-batch K-means clustering using acceleration entropy with 1 second windowing and exhibited &gt;90% sensitivity and specificity.  </p>\n<p>Oung, 2018 ( <a href=\"https://ieeexplore.ieee.org/document/8477606\" target=\"_blank\">https://ieeexplore.ieee.org/document/8477606</a>) also used accelerometer data (3 locations) with Neural networks and also SVM to consider data with &gt;87% sensitivity and specificity for a person-independent model. </p>\n<p>Table 2 in the Pardoel paper includes a list of the different Features that have been extracted from various sensors and provide references to which papers they were used in.  This is a rather hefty list of features (even when only looking at the accelerometer data) and worth a look.  Finally, table 3 provides a list of the machine learning methods and summarizes the top three methods within each group of methods tested.  </p>\n<p>Hopefully this paper will help some of us with a background for working on this problem.  Good luck to everyone!</p>",
      "rawMarkdown": "Pardoel, Scott, Jonathan Kofman, Julie Nantel, and Edward D. Lemaire. 2019. \"Wearable-Sensor-Based Detection and Prediction of Freezing of Gait in Parkinson’s Disease: A Review\" Sensors 19, no. 23: 5141. https://doi.org/10.3390/s19235141 \n\nhttps://www.mdpi.com/1424-8220/19/23/5141\n\nThis is a systematic review by Pardoel et. al. in 2019 that references 74 publications about FOG detection.  Summaries of the studies are provided in Table 1 of the paper and track back to 2008.  Several of these papers include FOG prediction rather than just classification associated with the sensors (using LSTM and other models), but this table breaks down the sensitivity and specificity for most of the classification algorithms and summarizes the methods from each paper.  \n\nThe most recent, similar dataset (one accelerometer on lower back) is in Li, 2018:  https://ieeexplore.ieee.org/document/8469471.   This paper used mini-batch K-means clustering using acceleration entropy with 1 second windowing and exhibited >90% sensitivity and specificity.  \n\nOung, 2018 ( https://ieeexplore.ieee.org/document/8477606) also used accelerometer data (3 locations) with Neural networks and also SVM to consider data with >87% sensitivity and specificity for a person-independent model. \n\nTable 2 in the Pardoel paper includes a list of the different Features that have been extracted from various sensors and provide references to which papers they were used in.  This is a rather hefty list of features (even when only looking at the accelerometer data) and worth a look.  Finally, table 3 provides a list of the machine learning methods and summarizes the top three methods within each group of methods tested.  \n\nHopefully this paper will help some of us with a background for working on this problem.  Good luck to everyone!",
      "votes": null
    },
    {
      "id": "2183997",
      "postDate": "03/16/2023 04:48:54",
      "content": "<p>Hey there!</p>\n<p>Thanks for sharing this valuable resource by Pardoel et al. (2019) on wearable-sensor-based detection and prediction of Freezing of Gait (FOG) in Parkinson's Disease. The systematic review provides an excellent starting point for those interested in exploring FOG detection using different sensor modalities, features, and machine learning methods.</p>\n<p>It's interesting to see how the paper highlights the effectiveness of various approaches in FOG detection, like Li (2018) using mini-batch K-means clustering and accelerometer data with more than 90% sensitivity and specificity, and Oung (2018) employing Neural Networks and SVM to achieve over 87% sensitivity and specificity in a person-independent model.</p>\n<p>The tables in the review, particularly Table 2 with the list of extracted features and Table 3 summarizing the machine learning methods, are indeed valuable resources for those looking to delve deeper into FOG detection using wearables. These insights can help researchers and practitioners build on previous work to develop more accurate and robust FOG detection and prediction systems.</p>\n<p>Appreciate you sharing this comprehensive review, and best of luck to everyone working on related projects! Keep up the great work!</p>",
      "rawMarkdown": "Hey there!\n\nThanks for sharing this valuable resource by Pardoel et al. (2019) on wearable-sensor-based detection and prediction of Freezing of Gait (FOG) in Parkinson's Disease. The systematic review provides an excellent starting point for those interested in exploring FOG detection using different sensor modalities, features, and machine learning methods.\n\nIt's interesting to see how the paper highlights the effectiveness of various approaches in FOG detection, like Li (2018) using mini-batch K-means clustering and accelerometer data with more than 90% sensitivity and specificity, and Oung (2018) employing Neural Networks and SVM to achieve over 87% sensitivity and specificity in a person-independent model.\n\nThe tables in the review, particularly Table 2 with the list of extracted features and Table 3 summarizing the machine learning methods, are indeed valuable resources for those looking to delve deeper into FOG detection using wearables. These insights can help researchers and practitioners build on previous work to develop more accurate and robust FOG detection and prediction systems.\n\nAppreciate you sharing this comprehensive review, and best of luck to everyone working on related projects! Keep up the great work!",
      "votes": null
    },
    {
      "id": "2188535",
      "postDate": "03/19/2023 18:16:00",
      "content": "<p>Interesting, thank you for sharing!  The Pardoel et al. (2019) review mentions various features that are used in FoG prediction and detection in section 4.3.  In particular, they note: </p>\n<blockquote>\n  <p>Studies that combined time and frequency domains features [96] had better performance than either type of feature individually</p>\n</blockquote>\n<p>They cite Ardi Handojoseno et al. (2015) in the above quote (doi: 10.1109/TNSRE.2014.2381254)</p>\n<p>With that in mind, here are some quick python functions for frequency domain studies (note kArr stores amplitudes for each frequency):</p>\n<pre><code>import numpy as np\n\n#A low pass filter to remove high frequency noise.\ndef lowPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] &gt; cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A high pass filter to analyze only high frequencies.  \ndef highPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] &lt; cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A quick FFT where W can be x, y, z accelerations etc.\ndef quickFFT(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    outputW = np.fft.irfft(filteredData, len(inputW))\n    return outputW\n\n\n#A quick FFT where W can be x, y, z accelerations etc. (returns k-space)\ndef quickFFT_k(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    return freq, filteredData\n</code></pre>\n<p>Examples of function calls:</p>\n<pre><code>accel_ML_lowfreq = quickFFT(time, accel_ML, 128, \"low\", 3)\nfreq_ML, accel_ML_kspace = quickFFT_k(time, accel_ML, 128, \"high\", 5)\n</code></pre>",
      "rawMarkdown": "Interesting, thank you for sharing!  The Pardoel et al. (2019) review mentions various features that are used in FoG prediction and detection in section 4.3.  In particular, they note: \n>Studies that combined time and frequency domains features [96] had better performance than either type of feature individually\n\nThey cite Ardi Handojoseno et al. (2015) in the above quote (doi: 10.1109/TNSRE.2014.2381254)\n\nWith that in mind, here are some quick python functions for frequency domain studies (note kArr stores amplitudes for each frequency):\n\n```\nimport numpy as np\n\n#A low pass filter to remove high frequency noise.\ndef lowPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] > cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A high pass filter to analyze only high frequencies.  \ndef highPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] < cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A quick FFT where W can be x, y, z accelerations etc.\ndef quickFFT(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    outputW = np.fft.irfft(filteredData, len(inputW))\n    return outputW\n\n\n#A quick FFT where W can be x, y, z accelerations etc. (returns k-space)\ndef quickFFT_k(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    return freq, filteredData\n\n```\n\nExamples of function calls:\n```\naccel_ML_lowfreq = quickFFT(time, accel_ML, 128, \"low\", 3)\nfreq_ML, accel_ML_kspace = quickFFT_k(time, accel_ML, 128, \"high\", 5)\n```",
      "votes": null
    },
    {
      "id": "2188821",
      "postDate": "03/20/2023 02:50:04",
      "content": "<p>Hi Dear <a href=\"https://www.kaggle.com/josephreid\" target=\"_blank\">@josephreid</a>, <br>\nThank you for sharing this informative post on the research related to the wearable-sensor-based detection and prediction of freezing of gait in Parkinson's disease. Your detailed references and analysis of the studies are insightful and provide valuable information for researchers working on this problem. I appreciate your effort in compiling this information and presenting it in a concise and organized manner.</p>",
      "rawMarkdown": "Hi Dear @josephreid, \nThank you for sharing this informative post on the research related to the wearable-sensor-based detection and prediction of freezing of gait in Parkinson's disease. Your detailed references and analysis of the studies are insightful and provide valuable information for researchers working on this problem. I appreciate your effort in compiling this information and presenting it in a concise and organized manner.",
      "votes": null
    },
    {
      "id": "2251478",
      "postDate": "05/09/2023 11:37:48",
      "content": "<p>There are also more recent reviews on FOG such as: <a href=\"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/\" target=\"_blank\">https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/</a> (last paper search was on 2022)</p>",
      "rawMarkdown": "There are also more recent reviews on FOG such as: [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/) (last paper search was on 2022)",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 2183997,
      "author_name": "siddharthkumarsah",
      "author_url": "",
      "post_date": "03/16/2023 04:48:54",
      "content": "<p>Hey there!</p>\n<p>Thanks for sharing this valuable resource by Pardoel et al. (2019) on wearable-sensor-based detection and prediction of Freezing of Gait (FOG) in Parkinson's Disease. The systematic review provides an excellent starting point for those interested in exploring FOG detection using different sensor modalities, features, and machine learning methods.</p>\n<p>It's interesting to see how the paper highlights the effectiveness of various approaches in FOG detection, like Li (2018) using mini-batch K-means clustering and accelerometer data with more than 90% sensitivity and specificity, and Oung (2018) employing Neural Networks and SVM to achieve over 87% sensitivity and specificity in a person-independent model.</p>\n<p>The tables in the review, particularly Table 2 with the list of extracted features and Table 3 summarizing the machine learning methods, are indeed valuable resources for those looking to delve deeper into FOG detection using wearables. These insights can help researchers and practitioners build on previous work to develop more accurate and robust FOG detection and prediction systems.</p>\n<p>Appreciate you sharing this comprehensive review, and best of luck to everyone working on related projects! Keep up the great work!</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 2188535,
      "author_name": "austinhinkel",
      "author_url": "",
      "post_date": "03/19/2023 18:16:00",
      "content": "<p>Interesting, thank you for sharing!  The Pardoel et al. (2019) review mentions various features that are used in FoG prediction and detection in section 4.3.  In particular, they note: </p>\n<blockquote>\n  <p>Studies that combined time and frequency domains features [96] had better performance than either type of feature individually</p>\n</blockquote>\n<p>They cite Ardi Handojoseno et al. (2015) in the above quote (doi: 10.1109/TNSRE.2014.2381254)</p>\n<p>With that in mind, here are some quick python functions for frequency domain studies (note kArr stores amplitudes for each frequency):</p>\n<pre><code>import numpy as np\n\n#A low pass filter to remove high frequency noise.\ndef lowPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] &gt; cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A high pass filter to analyze only high frequencies.  \ndef highPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] &lt; cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A quick FFT where W can be x, y, z accelerations etc.\ndef quickFFT(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    outputW = np.fft.irfft(filteredData, len(inputW))\n    return outputW\n\n\n#A quick FFT where W can be x, y, z accelerations etc. (returns k-space)\ndef quickFFT_k(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    return freq, filteredData\n</code></pre>\n<p>Examples of function calls:</p>\n<pre><code>accel_ML_lowfreq = quickFFT(time, accel_ML, 128, \"low\", 3)\nfreq_ML, accel_ML_kspace = quickFFT_k(time, accel_ML, 128, \"high\", 5)\n</code></pre>",
      "votes": null,
      "replies": []
    },
    {
      "id": 2188821,
      "author_name": "tariqbashir",
      "author_url": "",
      "post_date": "03/20/2023 02:50:04",
      "content": "<p>Hi Dear <a href=\"https://www.kaggle.com/josephreid\" target=\"_blank\">@josephreid</a>, <br>\nThank you for sharing this informative post on the research related to the wearable-sensor-based detection and prediction of freezing of gait in Parkinson's disease. Your detailed references and analysis of the studies are insightful and provide valuable information for researchers working on this problem. I appreciate your effort in compiling this information and presenting it in a concise and organized manner.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 2251478,
      "author_name": "tomaskalabis",
      "author_url": "",
      "post_date": "05/09/2023 11:37:48",
      "content": "<p>There are also more recent reviews on FOG such as: <a href=\"https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/\" target=\"_blank\">https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/</a> (last paper search was on 2022)</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "2183913": "Pardoel, Scott, Jonathan Kofman, Julie Nantel, and Edward D. Lemaire. 2019. \"Wearable-Sensor-Based Detection and Prediction of Freezing of Gait in Parkinson’s Disease: A Review\" Sensors 19, no. 23: 5141. https://doi.org/10.3390/s19235141 \n\nhttps://www.mdpi.com/1424-8220/19/23/5141\n\nThis is a systematic review by Pardoel et. al. in 2019 that references 74 publications about FOG detection.  Summaries of the studies are provided in Table 1 of the paper and track back to 2008.  Several of these papers include FOG prediction rather than just classification associated with the sensors (using LSTM and other models), but this table breaks down the sensitivity and specificity for most of the classification algorithms and summarizes the methods from each paper.  \n\nThe most recent, similar dataset (one accelerometer on lower back) is in Li, 2018:  https://ieeexplore.ieee.org/document/8469471.   This paper used mini-batch K-means clustering using acceleration entropy with 1 second windowing and exhibited >90% sensitivity and specificity.  \n\nOung, 2018 ( https://ieeexplore.ieee.org/document/8477606) also used accelerometer data (3 locations) with Neural networks and also SVM to consider data with >87% sensitivity and specificity for a person-independent model. \n\nTable 2 in the Pardoel paper includes a list of the different Features that have been extracted from various sensors and provide references to which papers they were used in.  This is a rather hefty list of features (even when only looking at the accelerometer data) and worth a look.  Finally, table 3 provides a list of the machine learning methods and summarizes the top three methods within each group of methods tested.  \n\nHopefully this paper will help some of us with a background for working on this problem.  Good luck to everyone!",
    "2183997": "Hey there!\n\nThanks for sharing this valuable resource by Pardoel et al. (2019) on wearable-sensor-based detection and prediction of Freezing of Gait (FOG) in Parkinson's Disease. The systematic review provides an excellent starting point for those interested in exploring FOG detection using different sensor modalities, features, and machine learning methods.\n\nIt's interesting to see how the paper highlights the effectiveness of various approaches in FOG detection, like Li (2018) using mini-batch K-means clustering and accelerometer data with more than 90% sensitivity and specificity, and Oung (2018) employing Neural Networks and SVM to achieve over 87% sensitivity and specificity in a person-independent model.\n\nThe tables in the review, particularly Table 2 with the list of extracted features and Table 3 summarizing the machine learning methods, are indeed valuable resources for those looking to delve deeper into FOG detection using wearables. These insights can help researchers and practitioners build on previous work to develop more accurate and robust FOG detection and prediction systems.\n\nAppreciate you sharing this comprehensive review, and best of luck to everyone working on related projects! Keep up the great work!",
    "2188535": "Interesting, thank you for sharing!  The Pardoel et al. (2019) review mentions various features that are used in FoG prediction and detection in section 4.3.  In particular, they note: \n>Studies that combined time and frequency domains features [96] had better performance than either type of feature individually\n\nThey cite Ardi Handojoseno et al. (2015) in the above quote (doi: 10.1109/TNSRE.2014.2381254)\n\nWith that in mind, here are some quick python functions for frequency domain studies (note kArr stores amplitudes for each frequency):\n\n```\nimport numpy as np\n\n#A low pass filter to remove high frequency noise.\ndef lowPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] > cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A high pass filter to analyze only high frequencies.  \ndef highPassFilter(kArr, freqArr, cutOffFreq):\n    for i in range(0,len(freqArr)):\n        if freqArr[i] < cutOffFreq:\n            kArr.real[i] = 0;\n            kArr.imag[i] = 0;\n    return kArr\n\n\n#A quick FFT where W can be x, y, z accelerations etc.\ndef quickFFT(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    outputW = np.fft.irfft(filteredData, len(inputW))\n    return outputW\n\n\n#A quick FFT where W can be x, y, z accelerations etc. (returns k-space)\ndef quickFFT_k(inputT, inputW, sampleRate, filterType, cutOff):\n    kspaceData = np.fft.rfft(inputW)\n    freq = np.fft.rfftfreq(inputT.shape[-1], d=1.0/sampleRate)\n    if filterType == \"low\":\n        filteredData = lowPassFilter(kspaceData, freq, cutOff)\n    elif filterType == \"high\":\n        filteredData = highPassFilter(kspaceData, freq, cutOff)\n    else:\n        filteredData = kspaceData\n    return freq, filteredData\n\n```\n\nExamples of function calls:\n```\naccel_ML_lowfreq = quickFFT(time, accel_ML, 128, \"low\", 3)\nfreq_ML, accel_ML_kspace = quickFFT_k(time, accel_ML, 128, \"high\", 5)\n```",
    "2188821": "Hi Dear @josephreid, \nThank you for sharing this informative post on the research related to the wearable-sensor-based detection and prediction of freezing of gait in Parkinson's disease. Your detailed references and analysis of the studies are insightful and provide valuable information for researchers working on this problem. I appreciate your effort in compiling this information and presenting it in a concise and organized manner.",
    "2251478": "There are also more recent reviews on FOG such as: [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9975590/) (last paper search was on 2022)"
  },
  "source": "meta"
}