{
  "id": 35270,
  "title": "Reproducing APS/A3D from AHI",
  "url": "/competitions/passenger-screening-algorithm-challenge/discussion/35270",
  "author_name": "",
  "post_date": "2017-06-25T19:05:07.248185700Z",
  "votes": null,
  "comment_count": 6,
  "views": 1,
  "content": "<p>Has anyone had any luck reproducing the preprocessed data from the AHI files?  Based on the description, I was under the impression one could just take the inverse Fourier transform along the frequency component.  When I try that, however, I just see noise.  Any pointers are appreciated.</p>",
  "messages": [
    {
      "id": "195922",
      "postDate": "06/25/2017 19:05:07",
      "content": "<p>Has anyone had any luck reproducing the preprocessed data from the AHI files?  Based on the description, I was under the impression one could just take the inverse Fourier transform along the frequency component.  When I try that, however, I just see noise.  Any pointers are appreciated.</p>",
      "rawMarkdown": "Has anyone had any luck reproducing the preprocessed data from the AHI files?  Based on the description, I was under the impression one could just take the inverse Fourier transform along the frequency component.  When I try that, however, I just see noise.  Any pointers are appreciated.",
      "votes": null
    },
    {
      "id": "195973",
      "postDate": "06/25/2017 23:29:16",
      "content": "<p>No luck here either, but also would be interested in any pointers.</p>",
      "rawMarkdown": "No luck here either, but also would be interested in any pointers.",
      "votes": null
    },
    {
      "id": "197061",
      "postDate": "06/28/2017 18:05:22",
      "content": "<p>I have not tried yet, but taking the <code>ifft</code> along the <code>z</code>-dimension would give you the time dimension (thus range) for <code>z</code>, but you are still in cylindrical coordinates.  The <code>x</code>-dimension is an angle.</p>",
      "rawMarkdown": "I have not tried yet, but taking the `ifft` along the `z`-dimension would give you the time dimension (thus range) for `z`, but you are still in cylindrical coordinates.  The `x`-dimension is an angle.",
      "votes": null
    },
    {
      "id": "199410",
      "postDate": "07/05/2017 15:41:20",
      "content": "<p>You can look ideas behind correct reconstruction here <a href=\"http://m.jpier.org/PIERM/pierm49/04.16050801.pdf\">http://m.jpier.org/PIERM/pierm49/04.16050801.pdf</a></p>",
      "rawMarkdown": "You can look ideas behind correct reconstruction here http://m.jpier.org/PIERM/pierm49/04.16050801.pdf",
      "votes": null
    },
    {
      "id": "200475",
      "postDate": "07/08/2017 03:17:57",
      "content": "<p>I want to comment that I'm very interested in this too, my feeling is that improved generation of consumable data (A3D, especially) would lessen the load/uncertainty on the recognition part.</p>\n\n<p>I did find a good description here, however it's for a linear scanner:</p>\n\n<p><a href=\"http://ieeexplore.ieee.org/document/942570/\">http://ieeexplore.ieee.org/document/942570/</a></p>\n\n<p>I'd be amazed and extremely thankful for some code or a procedure for going from AHI to A3D, I feel that the provided AHI files are basically useless without such info.</p>\n\n<p>Anything, anyone?</p>",
      "rawMarkdown": "I want to comment that I'm very interested in this too, my feeling is that improved generation of consumable data (A3D, especially) would lessen the load/uncertainty on the recognition part.\n\nI did find a good description here, however it's for a linear scanner:\n\nhttp://ieeexplore.ieee.org/document/942570/\n\nI'd be amazed and extremely thankful for some code or a procedure for going from AHI to A3D, I feel that the provided AHI files are basically useless without such info.\n\nAnything, anyone?",
      "votes": null
    },
    {
      "id": "203321",
      "postDate": "07/14/2017 15:34:42",
      "content": "<p>I was able to get a (very) high-level response from one of the engineers on this project. Not sure if it's the level of detail you hoped for, but it's what I can offer at this point:</p>\n\n<blockquote>\n  <p>The ahi file is only moderately ‘processed’.  Baseline subtraction and a frequency waveform calibration has been performed. The baseline subtraction reduces noise by reducing system drift and direct coupled signals.</p>\n  \n  <p>The frequency waveform calibration process:\n  a.      Phase aligns the array (vertical axis)\n  b.      Performs impulse response optimization by phase aligning the frequency bins.</p>\n  \n  <p>A Hilbert transform was performed in order to do the frequency waveform calibration, but the data is returned to the original domain it was collected in. So, performing an FFT in any direction on this 3D data would not return it to the original raw data. The calibration process is not reversible.</p>\n</blockquote>",
      "rawMarkdown": "I was able to get a (very) high-level response from one of the engineers on this project. Not sure if it's the level of detail you hoped for, but it's what I can offer at this point:\n\n&gt; The ahi file is only moderately ‘processed’.  Baseline subtraction and a frequency waveform calibration has been performed. The baseline subtraction reduces noise by reducing system drift and direct coupled signals.\n\n&gt; The frequency waveform calibration process:\na.      Phase aligns the array (vertical axis)\nb.      Performs impulse response optimization by phase aligning the frequency bins.\n\n&gt; A Hilbert transform was performed in order to do the frequency waveform calibration, but the data is returned to the original domain it was collected in. So, performing an FFT in any direction on this 3D data would not return it to the original raw data. The calibration process is not reversible.",
      "votes": null
    },
    {
      "id": "224594",
      "postDate": "09/26/2017 22:27:26",
      "content": "<p>I don't understand how the data is distributed in the .ahi files. For example, I don't understand what 451.8 degrees means for the length of the X axis. Also, the stride for the frequency doesn't match to me: stride of 2 in Y (I guess is real and imaginary parts) for 660 points means stride of 1320 for X, but stride 1320 in X for 900 point means an stride of 1188000 for the frequency, meanwhile it says the stride is 1080000. Can anyone explain that to me?\nAlso, was anyone able to visualize anything from the raw data, beside than noise?</p>\n\n<p>Thank you very much.</p>",
      "rawMarkdown": "I don't understand how the data is distributed in the .ahi files. For example, I don't understand what 451.8 degrees means for the length of the X axis. Also, the stride for the frequency doesn't match to me: stride of 2 in Y (I guess is real and imaginary parts) for 660 points means stride of 1320 for X, but stride 1320 in X for 900 point means an stride of 1188000 for the frequency, meanwhile it says the stride is 1080000. Can anyone explain that to me?\nAlso, was anyone able to visualize anything from the raw data, beside than noise?\n\nThank you very much.",
      "votes": null
    }
  ],
  "comments": [
    {
      "id": 195973,
      "author_name": "nigelcarpenter",
      "author_url": "",
      "post_date": "06/25/2017 23:29:16",
      "content": "<p>No luck here either, but also would be interested in any pointers.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 197061,
      "author_name": "jgoodwin314",
      "author_url": "",
      "post_date": "06/28/2017 18:05:22",
      "content": "<p>I have not tried yet, but taking the <code>ifft</code> along the <code>z</code>-dimension would give you the time dimension (thus range) for <code>z</code>, but you are still in cylindrical coordinates.  The <code>x</code>-dimension is an angle.</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 199410,
      "author_name": "alxvoropaev",
      "author_url": "",
      "post_date": "07/05/2017 15:41:20",
      "content": "<p>You can look ideas behind correct reconstruction here <a href=\"http://m.jpier.org/PIERM/pierm49/04.16050801.pdf\">http://m.jpier.org/PIERM/pierm49/04.16050801.pdf</a></p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 200475,
      "author_name": "nonbasketless",
      "author_url": "",
      "post_date": "07/08/2017 03:17:57",
      "content": "<p>I want to comment that I'm very interested in this too, my feeling is that improved generation of consumable data (A3D, especially) would lessen the load/uncertainty on the recognition part.</p>\n\n<p>I did find a good description here, however it's for a linear scanner:</p>\n\n<p><a href=\"http://ieeexplore.ieee.org/document/942570/\">http://ieeexplore.ieee.org/document/942570/</a></p>\n\n<p>I'd be amazed and extremely thankful for some code or a procedure for going from AHI to A3D, I feel that the provided AHI files are basically useless without such info.</p>\n\n<p>Anything, anyone?</p>",
      "votes": null,
      "replies": []
    },
    {
      "id": 203321,
      "author_name": "wcukierski",
      "author_url": "",
      "post_date": "07/14/2017 15:34:42",
      "content": "<p>I was able to get a (very) high-level response from one of the engineers on this project. Not sure if it's the level of detail you hoped for, but it's what I can offer at this point:</p>\n\n<blockquote>\n  <p>The ahi file is only moderately ‘processed’.  Baseline subtraction and a frequency waveform calibration has been performed. The baseline subtraction reduces noise by reducing system drift and direct coupled signals.</p>\n  \n  <p>The frequency waveform calibration process:\n  a.      Phase aligns the array (vertical axis)\n  b.      Performs impulse response optimization by phase aligning the frequency bins.</p>\n  \n  <p>A Hilbert transform was performed in order to do the frequency waveform calibration, but the data is returned to the original domain it was collected in. So, performing an FFT in any direction on this 3D data would not return it to the original raw data. The calibration process is not reversible.</p>\n</blockquote>",
      "votes": null,
      "replies": []
    },
    {
      "id": 224594,
      "author_name": "juanheredia",
      "author_url": "",
      "post_date": "09/26/2017 22:27:26",
      "content": "<p>I don't understand how the data is distributed in the .ahi files. For example, I don't understand what 451.8 degrees means for the length of the X axis. Also, the stride for the frequency doesn't match to me: stride of 2 in Y (I guess is real and imaginary parts) for 660 points means stride of 1320 for X, but stride 1320 in X for 900 point means an stride of 1188000 for the frequency, meanwhile it says the stride is 1080000. Can anyone explain that to me?\nAlso, was anyone able to visualize anything from the raw data, beside than noise?</p>\n\n<p>Thank you very much.</p>",
      "votes": null,
      "replies": []
    }
  ],
  "raw_markdown_by_id": {
    "195922": "Has anyone had any luck reproducing the preprocessed data from the AHI files?  Based on the description, I was under the impression one could just take the inverse Fourier transform along the frequency component.  When I try that, however, I just see noise.  Any pointers are appreciated.",
    "195973": "No luck here either, but also would be interested in any pointers.",
    "197061": "I have not tried yet, but taking the `ifft` along the `z`-dimension would give you the time dimension (thus range) for `z`, but you are still in cylindrical coordinates.  The `x`-dimension is an angle.",
    "199410": "You can look ideas behind correct reconstruction here http://m.jpier.org/PIERM/pierm49/04.16050801.pdf",
    "200475": "I want to comment that I'm very interested in this too, my feeling is that improved generation of consumable data (A3D, especially) would lessen the load/uncertainty on the recognition part.\n\nI did find a good description here, however it's for a linear scanner:\n\nhttp://ieeexplore.ieee.org/document/942570/\n\nI'd be amazed and extremely thankful for some code or a procedure for going from AHI to A3D, I feel that the provided AHI files are basically useless without such info.\n\nAnything, anyone?",
    "203321": "I was able to get a (very) high-level response from one of the engineers on this project. Not sure if it's the level of detail you hoped for, but it's what I can offer at this point:\n\n&gt; The ahi file is only moderately ‘processed’.  Baseline subtraction and a frequency waveform calibration has been performed. The baseline subtraction reduces noise by reducing system drift and direct coupled signals.\n\n&gt; The frequency waveform calibration process:\na.      Phase aligns the array (vertical axis)\nb.      Performs impulse response optimization by phase aligning the frequency bins.\n\n&gt; A Hilbert transform was performed in order to do the frequency waveform calibration, but the data is returned to the original domain it was collected in. So, performing an FFT in any direction on this 3D data would not return it to the original raw data. The calibration process is not reversible.",
    "224594": "I don't understand how the data is distributed in the .ahi files. For example, I don't understand what 451.8 degrees means for the length of the X axis. Also, the stride for the frequency doesn't match to me: stride of 2 in Y (I guess is real and imaginary parts) for 660 points means stride of 1320 for X, but stride 1320 in X for 900 point means an stride of 1188000 for the frequency, meanwhile it says the stride is 1080000. Can anyone explain that to me?\nAlso, was anyone able to visualize anything from the raw data, beside than noise?\n\nThank you very much."
  },
  "source": "meta"
}