Sha256: 5e0c8a4bf7cc8cfccb1a0b44850a0ad697a00de8d8aa85da5fe4af08c7d25eef

Contents?: true

Size: 1.49 KB

Versions: 1

Compression:

Stored size: 1.49 KB

Contents

#!/usr/bin/env ruby

=begin rdoc
Builds Nifti files from Dicoms.
=end


module UnknownImageDataset
  # Always set AFNI GE DICOM Fix to "No" before conversion with to3d.
  ENV['AFNI_SLICE_SPACING_IS_GAP'] = "NO"

  
  def dataset_to_nifti(nifti_output_directory, nifti_filename, input_options = {} )
    if input_options.has_key?(:dicom_files)
      input_files = input_options[:dicom_files].each {|file| file.to_s }.join(' ')
    elsif input_options.has_key?(:input_directory)
      input_files = "#{input_options[:input_directory]}/'#{glob}'"
    else input_files = "#{Dir.tmpdir}/'#{glob}'"
    end
    
    if @raw_image_files.first.rep_time && @raw_image_files.first.bold_reps && @raw_image_files.first.num_slices
      slice_order = "altplus"
      functional_args = "-time:zt #{@raw_image_files.first.num_slices} #{@raw_image_files.first.bold_reps} #{@raw_image_files.first.rep_time} #{slice_order}"
    end
    
    
    nifti_output_file = File.join(nifti_output_directory, nifti_filename)
    
    File.makedirs(nifti_output_directory) unless File.directory?(nifti_output_directory)
    raise(IOError, "Cannot write to #{nifti_output_directory}") unless File.writable?(nifti_output_directory)
        
    nifti_conversion_command = "to3d -session #{nifti_output_directory} -prefix #{nifti_filename} #{functional_args} #{input_files}"

    return nifti_conversion_command, nifti_output_file
  end
end

module DTIDataset
  def dataset_to_nifti(nifti_output_directory, nifti_filename, input_options = {} )
    
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
metamri-0.1.17 lib/metamri/nifti_builder.rb