Beispiel #1
0
def readWriteXMLTransform(projectPath,layerIndex,folder):
	'''
	1-Take the TrakEM project 'projectPath'
	2-Read the transformation of the first patch of layer 'layerIndex'
	3-Read the locations of the first patch of layer 'layerIndex' and layer '1-layerIndex'. This is used to calculate the offset of the EM and LM images in the initial transformation file
	4-Write as a simple text file in folder + title of the project + InitialTransform.txt
	'''
	project = Project.openFSProject(projectPath, False)
	layerset = project.getRootLayerSet()
	layers = layerset.getLayers()
	layer = layerset.getLayers().get(layerIndex)
	patches = layer.getDisplayables(Patch)
	t =  patches.get(0).getAffineTransform()

	transPath = folder + project.getTitle() + 'InitialTransform.txt.txt'
	f = open(transPath,'w')
	f.write( str(t.getScaleX()) + "\n")
	f.write( str(t.getShearY())+ "\n")
	f.write( str(t.getShearX())+ "\n")
	f.write( str(t.getScaleY())+ "\n")
	f.write( str(t.getTranslateX())+ "\n")
	f.write( str(t.getTranslateY())+ "\n")

	f.write ( str( layers.get(layerIndex).getDisplayables(Patch).get(0).getX() ) + '\n')
	f.write ( str( layers.get(layerIndex).getDisplayables(Patch).get(0).getY() ) + '\n')
	f.write ( str( layers.get(1-layerIndex).getDisplayables(Patch).get(0).getX() ) + '\n')
	f.write ( str( layers.get(1-layerIndex).getDisplayables(Patch).get(0).getY() ) + '\n')
	f.close()
	IJ.log('Transformation saved in: ' + transPath)
	# read the parameters of the transformations
	trans = []
	f = open(transPath,'r')
	while 1:
		line = f.readline()
		if not line: break
		IJ.log(line)
		trans.append(float(line))
	f.close
	IJ.log('Transformation: ' + str(trans))
	closeProject(project)
	return trans
Beispiel #2
0
def openTrakemProject(path, mipmap = False):
	project = Project.openFSProject(cleanLinuxPath(path), False)
	return getProjectUtils(project, mipmap)
Beispiel #3
0
    "/data/research/se/celegans/dataset3/N2DA_1430-2/M5/",
    "/data/research/se/celegans/dataset3/N2DA_1430-2/N1/",
    "/data/research/se/celegans/dataset3/N2DA_1430-2/N2/"
]

for i in range(len(proj_list)):

    data_dir = proj_list[i]
    proj_dir = os.path.join(data_dir, "montage_v1")
    img_dir = os.path.join(data_dir, "transformed")

    if not os.path.isdir(img_dir):
        os.makedirs(img_dir)

    proj_name = os.path.join(proj_dir, "montage_v1.xml")
    project = Project.openFSProject(proj_name)
    layerset = project.getRootLayerSet()

    layer_list = layerset.getLayers()

    fname_trans = os.path.join(data_dir, "transform.csv")
    fw = open(fname_trans, "w")
    for j in range(len(layer_list)):

        layer = layer_list[j]
        tiles = layer.getDisplayables(Patch)

        patches = layer.getDisplayables(Patch)

        for k in range(len(patches)):