Example #1
0
def calc_attr(theattr):
    img = load_nii('../iso2.0_dtifitresult_{}.nii.gz'.format(theattr))
    atlasobj = atlas.getbywd()
    atlasname = atlasobj.name
    atlasimg = load_nii(os.path.join('nativespace', 'wtemplate_2.nii.gz'))
    res = niicalc.calc_region_mean(img, atlasobj, atlasimg)
    save_csvmat(os.path.join('nativespace', 'mean{}.csv'.format(theattr)), res)
Example #2
0
	def gen_net(self):
		ts = self.gen_timeseries()
		save_csvmat(self.outpath('timeseries.csv'), ts)
		timepoints = ts.shape[1] # number of total timepoints
		start = 0
		while start + self.windowLength < timepoints:
			tscorr = np.corrcoef(ts[:, start:start + self.windowLength])
			save_csvmat(self.outpath('corrcoef-%d.%d.csv' % (start, start + self.windowLength)), tscorr)
			start += self.stepsize
Example #3
0
	def gen_net(self):
		# print(self.get_total_time_points())
		for start in range(0, self.get_total_time_points()-self.windowLength+1, self.stepSize):
			ts = self.gen_timeseries(start)
			if ts is None:
				# print(start,)
				raise Exception('Dynamic sliding window exceeds total time points')
			save_csvmat(self.outpath('timeseries-%d-%d.csv' % (start, start+self.windowLength)), ts)
			tscorr = np.corrcoef(ts)
			save_csvmat(self.outpath('corrcoef-%d-%d.csv' % (start, start+self.windowLength)), tscorr)
Example #4
0
 def save(self, outfile, addticks=True):
     """Save the attr, can add ticks defined in atlasobj."""
     if addticks is False:
         save_csvmat(outfile, self.data)
     else:
         path.makedirs_file(outfile)
         with open(outfile, 'w', newline='') as f:
             writer = csv.writer(f)
             writer.writerow(('Region', 'Value'))
             for tick, value in zip(self.atlasobj.ticks, self.data):
                 writer.writerow((tick, value))
Example #5
0
def gen_net_csv():
    netpickle = 'net_gen_net.pickle'
    net = pickles.load_pickle(netpickle)
    M = net.M
    atlasdir = os.path.dirname(os.getcwd())
    atlasname = os.path.basename(atlasdir)
    atlasobj = atlas.get(atlasname)
    idx = atlasobj.regions
    realM = M[idx][:, idx]
    save_csvmat('dwinetraw.csv', realM)
    save_csvmat('dwinet.csv', np.log1p(realM))
    return realM
Example #6
0
 def save(self, outfile, addticks=True):
     """Save the net, can add ticks defined in atlasobj."""
     if addticks is False:
         save_csvmat(outfile, self.data)
     else:
         path.makedirs_file(outfile)
         with open(outfile, 'w', newline='') as f:
             writer = csv.writer(f)
             ticks = self.atlasobj.ticks
             firstrow = ['Region']
             firstrow.extend(ticks)
             writer.writerow(firstrow)
             for tick, datarow in zip(self.atlasobj.ticks, self.data):
                 currow = [tick]
                 currow.extend(datarow)
                 writer.writerow(currow)
Example #7
0
 def gen_net(self):
     ts = self.gen_timeseries()
     save_csvmat(self.outpath('timeseries.csv'), ts)
     tscorr = np.corrcoef(ts)
     save_csvmat(self.outpath('corrcoef.csv'), tscorr)
Example #8
0
import os
import t1_niicalc as niicalc
from mmdps.proc import atlas
from mmdps.util.loadsave import load_nii, save_csvmat

if __name__ == '__main__':
    img = load_nii('../grey.hdr')
    curatlas = atlas.getbywd()
    atlasimg = load_nii(curatlas.get_volume('1mm')['niifile'])
    res = niicalc.calc_region_mean(img, curatlas, atlasimg)
    save_csvmat(os.path.join('t1mean', 'greyvolume.csv'), res)
    loadsave.load_csvmat(
        'Y:/BOLD/xiezhihao_20180416/brodmann_lrce/bold_net/corrcoef.csv'),
    atlasobj)
net2 = netattr.Net(
    loadsave.load_csvmat(
        'Y:/BOLD/xiezhihao_20180524/brodmann_lrce/bold_net/corrcoef.csv'),
    atlasobj)

net2.data -= net1.data

# set a threshold mask
netList = sorted(abs(net2.data.ravel()))
threshold = netList[int(0.8 * len(netList))]
net2.data[abs(net2.data) < threshold] = 0
loadsave.save_csvmat(
    'E:/Changgung works/jixieshou_20180703/xiezhihao/xiezhihao 21 link.edge',
    net2.data,
    delimiter='\t')
mstr = gen_matlab(
    'E:/MMDPSoftware/mmdps/atlas/brodmann_lrce/brodmann_lrce_samesize.node',
    'E:/Changgung works/jixieshou_20180703/xiezhihao/xiezhihao 21 link.edge',
    'abc',
    'E:/Changgung works/jixieshou_20180703/xiezhihao/xiezhihao 21 link.png',
    get_mesh('ch2cere'),
    'E:/Changgung works/jixieshou_20180703/BNV_diffedge_options.mat')
j = job.MatlabJob('bnv', mstr)
j.run()
exit()

jobList = []
for i in range(1, len(subject_list)):
    # load in the given subject's net
Example #10
0
def yujia_method():
    atlasobj = atlas.getbywd()
    track_path = 'tractogram_probabilistic.trk'
    roi_feature = ROI_atlas(atlasobj, track_path=track_path)
    loadsave.save_csvmat('tract_count_yujia.csv', roi_feature)
Example #11
0
def dipy_method():
    atlasobj = atlas.getbywd()
    track_path = '../tractogram_probabilistic.trk'
    roi_feature = ROI_atlas_dipy(atlasobj, track_path)
    loadsave.save_csvmat('tract_count.csv', roi_feature)
Example #12
0
sigConnections = []  # a list of tuples
with open(
        'Z:/changgeng/jixieshou/controlexperimental/bold_net/net_ttest/original_value/patientE_after-before_paired_ttest_report.csv'
) as f:
    reader = csv.DictReader(f, delimiter=',')
    for row in reader:
        connection = (row['RegionA'], row['RegionB'])
        reversedConnection = (row['RegionB'], row['RegionA'])
        if connection in sigConnections or reversedConnection in sigConnections:
            continue
        sigConnections.append(connection)

# load in the given subject's net
atlasobj = atlas.get('brodmann_lrce')
net = netattr.Net(
    loadsave.load_csvmat(
        'Y:/BOLD/wangwei_20171107/brodmann_lrce/bold_net/corrcoef.csv'),
    atlasobj)

# find the appropriate nodes and links and output as BNV expected
plotNet = netattr.Net(np.zeros((atlasobj.count, atlasobj.count)),
                      atlasobj)  # all zero matrix
for connection in sigConnections:
    plotNet.data[atlasobj.ticks.index(connection[0]),
                 atlasobj.ticks.index(connection[1])] = 1.0
    plotNet.data[atlasobj.ticks.index(connection[1]),
                 atlasobj.ticks.index(connection[0])] = 1.0
loadsave.save_csvmat(
    'E:/Changgung works/jixieshou_20180703/wangwei_20171107_link.edge',
    plotNet.data)
Example #13
0
import os
import t1_niicalc as niicalc
from mmdps.proc import atlas
from mmdps.util.loadsave import load_nii, save_csvmat

if __name__ == '__main__':
    img = load_nii('../grey.hdr')
    curatlas = atlas.getbywd()
    atlasimg = load_nii(curatlas.get_volume('1mm')['niifile'])
    res = niicalc.calc_binary_density(img, curatlas, atlasimg)
    save_csvmat(os.path.join('t1mean', 'greydensity.csv'), res)