def volumina_flexible_layer(data, layer_types, labels=None):

    assert len(layer_types) == len(data)

    app = QApplication (sys.argv)
    import volumina
    from volumina.api import Viewer

    v = Viewer ()
    v.title = " Volumina Demo "
    v.showMaximized ()

    for i, d in enumerate(data):
        layer_name = "layer_" + str(i)
        if labels is not None:
            layer_name = labels[i]

        # get data type of the elements d, to determine
        # if we use a grayscale overlay (float32) or a randomcolors overlay (uint) for labels
        data_type = d.dtype

        if layer_types[i] == 'Grayscale':
            v.addGrayscaleLayer(d , name = layer_name)
        elif layer_types[i] == 'RandomColors':
            v.addRandomColorsLayer(d.astype(np.uint32), name=layer_name)
        elif layer_types[i] == 'Red':
            v.addAlphaModulatedLayer(d , name=layer_name, tintColor=QColor(255,0,0))
        elif layer_types[i] == 'Green':
            v.addAlphaModulatedLayer(d , name=layer_name, tintColor=QColor(0,255,0))
        elif layer_types[i] == 'Blue':
            v.addAlphaModulatedLayer(d , name=layer_name, tintColor=QColor(0,0,255))
        else:
            raise KeyError("Invalid Layer Type, %s!" % layer_types[i])

    app.exec_()
def volumina_n_layer(data, labels = None):

    app = QApplication(sys.argv)
    import volumina
    from volumina.api import Viewer

    v = Viewer ()
    v.title = " Volumina Demo "
    v.showMaximized ()

    for ind, d in enumerate(data):
        layer_name = "layer_" + str(ind)

        if labels is not None:
            layer_name = labels[ind]
            # get data type of the elements d, to determine
            # if we use a grayscale overlay (float32) or a randomcolors overlay (uint) for labels

        data_type = d.dtype
        if data_type == np.float32 or data_type == np.float64:
            v.addGrayscaleLayer(d , name = layer_name)
        else:
            v.addRandomColorsLayer(d.astype(np.uint32), name = layer_name)

    app.exec_()
Ejemplo n.º 3
0
def view(data, labels=None, layer_types=None):
    """
    """

    if labels is not None:
        assert len(labels) == len(data)
    if layer_types is not None:
        assert len(layer_types) == len(data)
        assert all(ltype in ('Grayscale', 'RandomColors', 'Red', 'Green', 'Blue')
                   for ltype in layer_types)

    app = QApplication(sys.argv)
    from volumina.api import Viewer

    v = Viewer()
    v.title = "Volumina Viewer"
    v.showMaximized()

    for i, d in enumerate(data):
        layer_name = layer_name = "layer_" + str(i) if labels is None else labels[i]
        if layer_types is None:
            _dtype_to_layer(v, d, layer_name)
        else:
            _name_to_layer(v, d, layer_types[i], layer_name)

    app.exec_()
Ejemplo n.º 4
0
def show():
    import numpy as np

    import sys , h5py ; from numpy import float32 , uint8
    from vigra.filters import hessianOfGaussianEigenvalues , gaussianSmoothing
    from vigra.analysis import watersheds
    from vigra.analysis import labelVolumeWithBackground, extendedLocalMinima3D
    from PyQt4.QtCore import QTimer ; from PyQt4 . QtGui import QApplication
    app = QApplication ( sys.argv )
    from volumina.api import Viewer
    v = Viewer ()
    v . title = " Volumina Demo "
    v . showMaximized ()
    print "blubb"

    print a

    data = np.random.random((50,50,50))

    v . addGrayscaleLayer ( data , name =" raw data ")

    t = QTimer ()
    t.setInterval (200)

    app.exec_ ()
def volumina_single_layer(data):
	app = QApplication (sys.argv)
	from volumina.api import Viewer

	v = Viewer ()
	v.title = " Volumina Demo "
	v.showMaximized ()
	v.addGrayscaleLayer (data , name =" raw data ")

	app . exec_ ()
def volumina_double_layer(data, overlay):
	# get data type of the elements of overlay, to determine
	# if we use a grayscale overlay (float32) or a randomcolors overlay (uint) for labels
	mask = []
	for i in range( len(overlay.shape) ):
		mask.append(0)
	mask = tuple(mask)
	data_type = type(overlay[mask])

	app = QApplication (sys.argv)
	from volumina.api import Viewer

	v = Viewer ()
	v.title = " Volumina Demo "
	v.showMaximized ()
	v.addGrayscaleLayer(data , name = " raw data ")

	if data_type == np.float32:
		v.addGrayscaleLayer(overlay , name = " overlay ")
	else:
		v.addRandomColorsLayer(overlay, name = " overlay ")

	app . exec_ ()