def addHocViewer(grayData=None, segData=None, title="viewer", visu=True): if visu: app = QApp.Instance().app v = Viewer() if grayData is not None: for name in grayData.keys(): data = grayData[name] if _hasVigra: if isinstance(data, vigra.arraytypes.VigraArray): v.addGrayscaleLayer(data.view(numpy.ndarray), name=name) else: v.addGrayscaleLayer(data, name=name) else: v.addGrayscaleLayer(data, name=name) if segData is not None: for name in segData.keys(): data = segData[name] if _hasVigra: if isinstance(data, vigra.arraytypes.VigraArray): v.addColorTableLayer(data.view(numpy.ndarray), name=name) else: v.addColorTableLayer(data, name=name) else: v.addGrayscaleLayer(data, name=name) v.setWindowTitle(title) v.showMaximized() app.exec_()
def addHocViewer(grayData=None, segData=None, title="viewer", visu=True): if visu: app = QApp.Instance().app v = Viewer() if grayData is not None: for name in grayData.keys(): data = grayData[name] if hasVigra: if isinstance(data, vigra.arraytypes.VigraArray): v.addGrayscaleLayer(data.view(numpy.ndarray), name=name) else: v.addGrayscaleLayer(data, name=name) else: v.addGrayscaleLayer(data, name=name) if segData is not None: for name in segData.keys(): data = segData[name] if hasVigra: if isinstance(data, vigra.arraytypes.VigraArray): v.addColorTableLayer(data.view(numpy.ndarray), name=name) else: v.addColorTableLayer(data, name=name) else: v.addGrayscaleLayer(data, name=name) v.setWindowTitle(title) v.showMaximized() app.exec_()
l1 = v.addGrayscaleLayer(raw, name="raw", direct=True) l1.visible = direct colortable = [ QColor(0, 0, 0, 0).rgba(), QColor(255, 0, 0).rgba(), QColor(0, 255, 0).rgba(), QColor(0, 0, 255).rgba() ] s = ((raw // 64)).astype(numpy.uint8) def onClick(layer, pos5D, pos): print("here i am: ", pos5D, s[pos5D]) l2 = v.addColorTableLayer(s, clickFunctor=onClick, name="thresh", colortable=colortable, direct=direct) l2.colortableIsRandom = True l2.zeroIsTransparent = True l2.visible = False v.addClickableSegmentationLayer(s, "click it", direct=True) v.show() app.exec_()
print "seg " labels = vigra.readHDF5(lPath, 'data') labelsS = vigra.readHDF5(lsPath, 'data') #labelsSS = vigra.readHDF5(lssPath, 'data') labelsPS = vigra.readHDF5( "/mnt/CLAWS1/tbeier/data/stack_with_holes/lps.h5", 'data') print ew.shape print "datashape", data.shape print "resshape", smoothedT.shape app = QApplication(sys.argv) v = Viewer() v.addGrayscaleLayer(data, name="raw") v.addGrayscaleLayer(smoothedT, name="smoothedT") v.addGrayscaleLayer(ew, name="hessian ew") v.addGrayscaleLayer(ews, name="hessian ews") v.addGrayscaleLayer(ewss, name="hessian ewss") v.addGrayscaleLayer(pEws, name="hessian p80ews") #v.addGrayscaleLayer(dd, name="diff ews") v.addColorTableLayer(labels, name="labels") v.addColorTableLayer(labelsS, name="labelsS") #v.addColorTableLayer(labelsSS, name="labelsSS") v.addColorTableLayer(labelsPS, name="labelsPS") v.setWindowTitle("stack with holes") v.showMaximized() app.exec_()
item1.setPath(path1) # Create images back = (numpy.ones((100, 200, 300)) * 0).astype(numpy.uint8) back[0:60, 0:60, 0:60] = 255 back[40:80, 40:80, 40:80] = 120 back[40:100, 40:100, 0:40] = 80 back[0:45, 50:100, 0:100] = 200 ol = (numpy.zeros((100, 200, 300))).astype(numpy.uint8) # ol[0:99, 0:99, 0:99] = 120 # ol[0:99, 120:140, 0:99] = 255 ol[:] = back back.shape = (1,)+back.shape+(1,) ol.shape = (1,)+ol.shape+(1,) # Add layers l1 = v.addGrayscaleLayer(back, name="back") l1.visible = True l2 = v.addColorTableLayer(ol, name="overlay") # Add the path to the graphics scene # v.editor.imageScenes[0].addItem(item1) # v.editor.imageScenes[1].addItem(item1) v.editor.imageScenes[2].addItem(item1) v.setWindowTitle("Clickable Border Viewer") v.show() app.exec_()
#load data f = h5py.File(fname, 'r') raw = f[gname].value assert raw.ndim == 3 assert raw.dtype == numpy.uint8 f.close() app = QApplication([]) v = Viewer() direct = True raw.shape = (1,)+raw.shape+(1,) l1 = v.addGrayscaleLayer(raw, name="raw", direct=True) l1.visible = direct colortable = [QColor(0,0,0,0).rgba(), QColor(255,0,0).rgba(), QColor(0,255,0).rgba(), QColor(0,0,255).rgba()] s = ((raw/64)).astype(numpy.uint8) def onClick(layer, pos5D, pos): print "here i am: ", pos5D, s[pos5D] l2 = v.addColorTableLayer(s, clickFunctor=onClick, name="thresh", colortable=colortable, direct=direct) l2.colortableIsRandom = True l2.zeroIsTransparent = True l2.visible = False v.addClickableSegmentationLayer(s, "click it", direct=True) v.show() app.exec_()
labelsS = vigra.readHDF5(lsPath, 'data') #labelsSS = vigra.readHDF5(lssPath, 'data') labelsPS = vigra.readHDF5("/mnt/CLAWS1/tbeier/data/stack_with_holes/lps.h5", 'data') print ew.shape print "datashape",data.shape print "resshape",smoothedT.shape app = QApplication(sys.argv) v = Viewer() v.addGrayscaleLayer(data, name="raw") v.addGrayscaleLayer(smoothedT, name="smoothedT") v.addGrayscaleLayer(ew, name="hessian ew") v.addGrayscaleLayer(ews, name="hessian ews") v.addGrayscaleLayer(ewss, name="hessian ewss") v.addGrayscaleLayer(pEws, name="hessian p80ews") #v.addGrayscaleLayer(dd, name="diff ews") v.addColorTableLayer(labels, name="labels") v.addColorTableLayer(labelsS, name="labelsS") #v.addColorTableLayer(labelsSS, name="labelsSS") v.addColorTableLayer(labelsPS, name="labelsPS") v.setWindowTitle("stack with holes") v.showMaximized() app.exec_()
##----- app = QApplication(sys.argv) v = Viewer() graph = Graph() def mkH5source(fname, gname): h5file = h5py.File(fname) source = OpStreamingHdf5Reader(graph=graph) source.Hdf5File.setValue(h5file) source.InternalPath.setValue(gname) op = OpCompressedCache(parent=None, graph=graph) op.BlockShape.setValue([100, 100, 100]) op.Input.connect(source.OutputImage) return op.Output rawSource = mkH5source("raw.h5", "raw") segSource = mkH5source("seg.h5", "seg") v.addGrayscaleLayer(rawSource, name="raw") v.addColorTableLayer(segSource, name="seg") v.setWindowTitle("streaming viewer") v.showMaximized() app.exec_()
item1 = ClickablePathItem(v.editor.imageScenes[2], clickable_width=11) item1.set_path_from_coordinates(c_x, c_y) # Create images back = (numpy.ones((100, 200, 300)) * 0).astype(numpy.uint8) back[0:60, 0:60, 0:60] = 255 back[40:80, 40:80, 40:80] = 120 back[40:100, 40:100, 0:40] = 80 back[0:45, 50:100, 0:100] = 200 ol = (numpy.zeros((100, 200, 300))).astype(numpy.uint8) # ol[0:99, 0:99, 0:99] = 120 # ol[0:99, 120:140, 0:99] = 255 ol[:] = back back.shape = (1,)+back.shape+(1,) ol.shape = (1,)+ol.shape+(1,) # Add layers l1 = v.addGrayscaleLayer(back, name="back") l1.visible = True l2 = v.addColorTableLayer(ol, name="overlay") # Add the path to the graphics scene # v.editor.imageScenes[0].addItem(item1) # v.editor.imageScenes[1].addItem(item1) # v.editor.imageScenes[2].addItem(item1) v.setWindowTitle("Clickable Border Viewer") v.show() app.exec_()
##----- app = QApplication(sys.argv) v = Viewer() graph = Graph() def mkH5source(fname, gname): h5file = h5py.File(fname) source = OpStreamingH5N5Reader(graph=graph) source.H5N5File.setValue(h5file) source.InternalPath.setValue(gname) op = OpCompressedCache(parent=None, graph=graph) op.BlockShape.setValue([100, 100, 100]) op.Input.connect(source.OutputImage) return op.Output rawSource = mkH5source("raw.h5", "raw") segSource = mkH5source("seg.h5", "seg") v.addGrayscaleLayer(rawSource, name="raw") v.addColorTableLayer(segSource, name="seg") v.setWindowTitle("streaming viewer") v.showMaximized() app.exec_()