Date: 02 August, 2024 Dataset Title: Mechanical Damage to Spinal Cord Tissue from Decompression Bubble Expansion Dataset Creators: Roman Alvarado, Cameron Hodges, Jonathan Sukovich, Joan Greve, and Jens-Christian Meiners Dataset Contact: J.-C. Meiners (meiners@umich.edu) Funding: This work was supported by a R. W. “Bill” Hamilton Award from the Divers Alert Network (DAN) to J.-C. Meiners and an M-Cubed grant from the University of Michigan to J.-C. Meiners Key Points: - Few bubbles are observed amongst 50+ spinal cord samples and suggest blood flow plays an important role in bubble nucleation. - We compress and decompress ex vivo bovine spinal cords cyclically to observe nonelastic bubble growth. Research Overview: Decompression sickness can cause paralysis and death in it's worst prognosis. It is thought to be brought about by the formation of inert gas bubbles. There are three proposed mechanisms for the pathophysiology of decompression sickness: (1) tissue ischemia due to bubbles blocking blood flow (2) activation of the complement system (3) mechanical damage to the surrounding tissue. Here, we present evidence for inelastic mechanical damage to ex vivo bovine spinal cords by cyclically varying pressure. We quantify bubble growth using magnetic resonance imaging (MRI). Methodology: We cyclically pressurized and depressurized ex vivo thoracic bovine spinal cord samples and imaged them with a 7T MRI. Image processing is performed using a custom MATLAB script to analyze bubbles and reconstruct bubbles and spinal cord as STL models. Data Coverage: Data was collected between 11-03-2019 and 12-16-2020. Instrument and/or Software Specifications: - MATLAB 2022a Files Contained Here: Bubble Reconstruction Analysis - Datasets: Contains three bovine spinal cord MRI image datasets. The generated MRI fid signals and images are included for each scan time. -- Bubble#: These folders contain the bubble coordinates for each reconstruction and analyzed metrics for two separate reconstructions at each change in pressure as discussed in the related publication noted below. - varianms_tg: File used to reconstruct the raw data from the MRI to usable images for I_Generate_Bubble_Mask_Coordinates. - I_Generate_Bubble_Mask_Coordinates: A MATLAB GUI that guides a user to distinguish and extract bubbles from the surrounding background. ************************************************************************************ **** User guide to I_Generate_Bubble_Mask_Coordinates **** % In general, the GUI buttons are numbered to signify the order in which to operate the GUI. % This gui works in conjunction with the GUI: II_Bubble_Reconstruction 1. Select FID Image Folder (Data Input) - The user should select the FID image folder of interest containgin the desired bubble. For example: \Bubble_Reconstruction_Analysis\Datasets\1_21_2020\1433_FSEMS_bubbles_Axial_Box01.fid. The image will automatically load. 2. Image Slice (User Interactive Input) - The user should specify the image of interest with the embedded bubble. For example: 23 given the above filepath. The corresponding image will automatically update. 3. Image Shift (User Interactive Input) - The image reconstruction may need to be shifted in the x direction. Typical values are +/- 35. The shift should be kept the same for all of the same type of image slice scans, ie. Axial, Coronal, and Sagittal. Changing this value will automatically shift the image. Nonlocal Means Denoising Filter (User Interactive Input) - This value is the specific filter used to filter the bubble from the surrounding tissue. Keep this value the same for all images for the most accurate reconstruction. 2. Get Background (User Interactive Input) - The user should select a large portion of the white matter to easier identify the bubble. 3. Get Bubble Shape (User Interactive Input) - The user should circle the bubble region of interest. It's best to be as close to the bubble boundary as possible. 4. Save Bubble Mask Coordinates (data Output) - If the user is happy with the bubble profile, the user can save the coordinates for the identified bubble boundaries. The output filename will correspond to the dataset, image slice scan, and bubble number. For example: BubbleMaskCoords_1_21_2020_1433_Axial_slice-23.txt 5. Go to Step II - After all the bubble coordinates have been extracted for a particle cycle. The bubble can be reconstructed using II_Bubble_Reconstruction which is launched with this button. Additional Notes: - The user should repeat this for all bubbles of interest for all scan types (Axial, Coronal, and Sagittal) for the specific pressure cycle of interest. Note, Axial is always the beginning of a new pressure cycle (see publication). - This GUI can also be used to browse through the images one at a time. **** End of User guide to I_Generate_Bubble_Mask_Coordinates **** ************************************************************************************ - II_Bubble_Reconstruction: A second GUI to reconstruct the bubble ************************************************************************************ **** User guide to II_Bubble_Reconstruction **** % In general, the GUI buttons are numbered to signify the order in which to operate the GUI. % This gui works in conjunction with the GUI: I_Generate_Bubble_Mask_Coordinates 0. Return to Step 1 - This button is to return to I_Generate_Bubble_Mask_Coordinates 1. Load Bubble Mask Coordinates (User Interactive Input) - The user should multiselect all of the bubble profiles of interest, including all of the axial, coronal, and sagittal corresponding profiles, for one particular pressure cycle. The GUI will automatically identify which file is which image slice direction. These file names should be those generated from I_Generate_Bubble_Mask_Coordinates with the filename format of dataset, image slice scan, and bubble number. For example, BubbleMaskCoords_1_21_2020_1433_Axial_slice-23.txt. - Select 'slice direction' Reference (User Interactive Input) - For each slice direction, choose the bubble coordinate file that will act as a reference point for reconstruction. Use the same reference image slice for all the different pressure cycle datasets. For example, use axial slice 23 for the reference when the dataset time, 1433, changes. - Image Spacing (um) (User Interactive Input) - The user should enter the spacing between each image slice. Our dataset is 800um between each image slice. - Iterations (User Interactive Input) - The user should specify the number of iterations used to minimize the surface area of the bubble. 200 iterations is often plenty. 2. Filename (User Interactive Input) - The user should specify the filename according to the pressure cycle number, bubble number, and current reconstruction number. This is to help organize the user if they want to perform multiple reconstructions using different bubble coordinates. There will be some variability depending on what area selected to identify bubble locations and background noise. 3. Reconstruct Bubble - This button will iterate a loop to find the minimum surface area of the bubble. A plot will update as the iteration process is performed. The area should decrease over each iteration until a minimum is reached. 4. Save Bubble Parameters - This button, after reconstruction, will output a file with a complete bubble coordinates. The volume will also be outputted into the MATLAB console. The complete coordinates will be saved according to the filename. The user can reconstruct the bubble outside of the GUI if desired using the convHull MATLAB function. 5. Go to Step III - This button is depreciated and omitted from this study. **** End of User guide to II_Bubble_Reconstruction **** ************************************************************************************ Final 3D Models - Contains STL files for one bubble and gray and white matter spinal cord models. Spinal Cord Reconstruction - Dataset folder: Contains a set of images used for the SpinalCord_3D_Reconstruction_GUI - SpinalCord_3D_Reconstruction_GUI: A MATLAB GUI that takes the above image dataset to extract white and gray matter profiles. The profiles are then used to reconstruct their respective 3D models. ************************************************************************************ **** User guide to SpinalCord_3D_Reconstruction_GUI **** % In general, the GUI buttons are numbered to signify the order in which to operate the GUI. % There are three tabs: Extract, Save Points, Recon(struct) Tab 1: Extract - the first tab is meant to take a group of axial slice images used to reconstruct the model. 1. Import images (Image Dataset Input) - Multiselect the number of axial images wanted to form the final reconstruction. 2. Centroid Guess (User Interactive Input) - The algorithm requires an estimated centroid to automatically identify the grey and white matter. Single click in the middle of the grey matter - 'the butterfly structure' - in the pop-up window. 3. Get Background (User Interactive Input) - To better identify the grey matter structure, we need to estimate the intensity of the white matter. After selecting get background, select a large portion of the white matter. 4. Filter Grey Matter (User Interactive Input) - Selecting this button will automatically identify grey matter given the chosen parameters for the various filters and morphology functions. Different images may need different parameters. 5. Filter White Matter (User Interactive Input) - Selecting this button will automatically identify the white matter given the chosen parameters for the various filters and morphology functions. This may be different compared to the grey matter. Note: A checkbox Refine? is included if the user wants to manually change the selected profile of the white matter. This is because our spinal cords were surrounded with agarose and are indicated by the sharp horns at the lateral ends of the spinal cord. Additional Notes: - Upon finishing steps 4 and 5, the profiles of the white and grey matter now appear bright white. The user can then move onto the next image (or previous image) by selecting the corresponding button. An image counter is used to indicate the current selected image. Additional messages will appear if there are errors or to summarize the filtering effects on the images. - The user only has to repeat 4 and 5 for the remaining images. Our dataset is uniform enough to keep the "centroid guess" and "get background" the same for all images. However, they can be changed during any image if desired. - Each profile for each image can be overwritten if the user applies 4 and 5 to previously saved images. Tab 2: Save Points (optional data Output) - the second tab is to move data in and out of the GUI Save Pts (data Output *.mat) - The GUI outputs the profiles of the white and grey matter. The data output size corresponds to x number of images selected by 2 (white and grey matter). This is to allow the user to do portions of the dataset at a time. Load Pts (data Input *.mat) - The GUI asks to import data, matching the format of the Save Pts function. Tab 3: Recon - the third tab is take the previously extracted profiles of the white and grey matter to reconstruct both independently and output *.stl files Distance Between Images (um) (User Interactive Input) - In micrometers, indicate the distance between image slices. Our image dataset was 800um. Resolution of Pixels (um) (User Interactive Input) - In micrometers, indicate the pixel resolution AxA. Note the resolution is the same in x and y direction. Our image dataset is 100um. White Matter Filename (User Interactive Input) - Indicate the desired output filename with the suffix *.stl. Grey Matter Filename (User Interactive Input) - Indicate the desired output filename with the suffix *.stl. Save both (data Output) - This button will output the grey and white matter reconstructed stl files as specified by their filename inputs. **** End of user guide to SpinalCord_3D_Reconstruction_GUI **** ************************************************************************************ Related publication: Alvarado, et al. (2024). Mechanical Damage to Spinal Cord Tissue from Decompression Bubble Expansion. Forthcoming. Use and Access: This dataset is made available under a Creative Commons Public Domain license (CC0 1.0). To Cite Data: R. Alvarado, C. Hodges, J. Sukovich, J. Greve, and J.-C. Meiners. (2024). Mechanical Damage to Spinal Cord Tissue from Decompression Bubble Expansion [Dataset]. University of Michigan - Deep Blue. https://doi.org/#