vigra
vigra copied to clipboard
generalize tensorEigenvalues, hessianOfgaussian, hessianOfGaussianEigenvalues
For this functions either the functionality is not implemented for multi array or is missing the glue function which exports the code to python
Traceback (most recent call last): File "/usr/lib/python2.6/threading.py", line 532, in **bootstrap_inner self.run() File "/home/lfiaschi/workspace/lazyflow/lazyflow/graph.py", line 2054, in run gr.switch( reqObject) File "/home/lfiaschi/workspace/lazyflow/lazyflow/graph.py", line 2023, in processReqObject reqObject.func(reqObject.arg1, reqObject.key, reqObject.destination) File "/home/lfiaschi/workspace/lazyflow/lazyflow/graph.py", line 1293, in getOutSlot return self.operator.getSubOutSlot((self, slot,),(index,),key, result) File "/home/lfiaschi/workspace/lazyflow/lazyflow/operators/vigraOperators.py", line 117, in getSubOutSlot result[:] = slot[key].allocate().wait() File "/home/lfiaschi/workspace/lazyflow/lazyflow/graph.py", line 325, in wait self.func(self.arg1,self.key, self.destination) File "/home/lfiaschi/workspace/lazyflow/lazyflow/operators/vigraOperators.py", line 324, in getOutSlot temp = self.vigraFilter(t, kwparams) File "/usr/lib/python2.6/dist-packages/vigra/__init.py", line 335, in hessianOfGaussianEigenvalues return filters.tensorEigenvalues(filters.hessianOfGaussian(image, scale), out=out) RuntimeError: tensorEigenvaluesMultiArray(): Sorry, can only handle dimensions up to 3.
Just a quick comment, it would be useful to generalize the eigenvalues computation if we can give different weights to channels, spatial and time dimension in the original matrix. Anyway if this also implies a drop in the performance due to not efficient algorithms for eigenvalues computations in >4 dimension, I'm not sure if it will compensate the effort.