Ilastik blockwise object classification RAM issues

Hi there,

I am trying to run a blockwise object classification in ilastik following an autocontext pixel classification.
I have used for training 3 individual tiles of 2k by 3k (6Mb for the image, 80Mb for the probability maps), with hysteresis thresholding.
I have found that the best setting for blockwise prediction is 1900 x 1900 blocks and 600 halo.
I have selected ‘blockwise prediction’ in the export applet, 8bits hdf5 format for the image, and csv for the table.
However when I start the batch prediction with my full stitched image (700Mb image, 8Gb probability maps), ilastik crashes after some time. I’m running it on a Win10 machine with 256Gb RAM.
I have read here that you advise to use smaller training images. How small? Is the size of my probability maps in the full size data a problem too? The HDF5 exported from Autocontext has 4 channels. Would it help to get rid of the 3 i don’t need? If so is there a fast way to do so? It does take ages to export the probability maps from autocontext, I’m not very keen on doing that all again.
Thanks in advance for your help!

Best

Marie

I have also tried to run it on another computer (96Gb RAM) and on the same 256Gb RAM computer to change block size from 1900 to 500, halo from 500 to 300, and I still end up with a crash.
And after the crash, I always have about 700Mb are saved in the hdf5 file…

Is ilastik just silently crashing, or do you get some sort of traceback? Which version of ilastik are you using. Maybe we can reproduce the issue here in a similar setting.

Hi Dominik,

Thanks for the speedy reply!
ilastik silently crashes. I have tried on both computers ilastik 1.3.2rc2, the newer 1.3.2 and the brand new 1.3.2.post1.
Last thing i tried last night is to create a new Obj classif project with only one image used as training, but same result.
Same issue in all cases, I reach 100% memory use and it crashes soon after.
I still don’t get why in all cases I end up with 729mb saved…
Last night I copied the log before leaving. See below

Starting ilastik from “C:\Program Files\ilastik-1.3.2”.
ERROR 2019-05-09 18:03:59,759 excepthooks 16372 6920 Unhandled exception in thread: ‘Worker #4
ERROR 2019-05-09 18:03:59,760 excepthooks 16372 11992 Unhandled exception in thread: ‘Worker #1
ERROR 2019-05-09 18:04:00,031 excepthooks 16372 6920 Traceback (most recent call last):
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\tiling.py”, line 773, in _fetch_tile_layer
img = ims_req.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\imagesources.py”, line 387, in wait
return self.toImage()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\imagesources.py”, line 393, in toImage
self._arrayreq.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\slicesources.py”, line 46, in wait
return self._sp(self._ar.wait())
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py”, line 473, in wait
rawData = self._rawRequest.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py”, line 204, in wrapper
return func(*args, **kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py”, line 228, in wait
a = self._req.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opReorderAxes.py”, line 160, in execute
self.Input( *in_roi ).writeInto( result_input_view ).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opSlicedBlockedArrayCache.py”, line 178, in execute
op.outputs[“Output”][key].writeInto(result).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opUnblockedArrayCache.py”, line 83, in execute
self._execute_Output(slot, subindex, roi, result)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opSimpleBlockedArrayCache.py”, line 100, in _execute_Output
pool.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 1313, in wait
self._clear_finishing_requests()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 1390, in _clear_finishing_requests
req.block()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 506, in block
self._wait(timeout) # No return value. Use wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 609, in wait_within_request
raise_with_traceback(exc_type(exc_value), exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opSimpleBlockedArrayCache.py”, line 76, in copy_block
self._execute_Output_impl( clipped_block_roi, result[roiToSlice(*output_roi)] )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opUnblockedArrayCache.py”, line 108, in _execute_Output_impl
self._fetch_and_store_block(request_roi, out=result)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opUnblockedArrayCache.py”, line 146, in _fetch_and_store_block
block_data = req.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opCacheFixer.py”, line 63, in execute
self.Input(roi.start, roi.stop).writeInto(result).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self.result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\ilastik\ilastik\applets\objectClassification\opObjectClassification.py”, line 1337, in execute
map
= self.ObjectMap([t]).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\ilastik\ilastik\applets\objectClassification\opObjectClassification.py”, line 1253, in execute
labels[t] = 1 + numpy.argmax(self.prob_cache[t], axis=1)
KeyError: KeyError(0,)

ERROR 2019-05-09 18:04:00,034 excepthooks 16372 11992 Traceback (most recent call last):
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\tiling.py”, line 773, in _fetch_tile_layer
img = ims_req.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\imagesources.py”, line 387, in wait
return self.toImage()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\imagesources.py”, line 393, in toImage
self._arrayreq.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\slicesources.py”, line 46, in wait
return self._sp(self._ar.wait())
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py”, line 473, in wait
rawData = self._rawRequest.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py”, line 204, in wrapper
return func(*args, **kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py”, line 228, in wait
a = self._req.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opReorderAxes.py”, line 160, in execute
self.Input( *in_roi ).writeInto( result_input_view ).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opSlicedBlockedArrayCache.py”, line 178, in execute
op.outputs[“Output”][key].writeInto(result).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opUnblockedArrayCache.py”, line 83, in execute
self._execute_Output(slot, subindex, roi, result)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opSimpleBlockedArrayCache.py”, line 100, in _execute_Output
pool.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 1313, in wait
self._clear_finishing_requests()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 1390, in _clear_finishing_requests
req.block()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 506, in block
self._wait(timeout) # No return value. Use wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 609, in wait_within_request
raise_with_traceback(exc_type(exc_value), exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opSimpleBlockedArrayCache.py”, line 76, in copy_block
self._execute_Output_impl( clipped_block_roi, result[roiToSlice(*output_roi)] )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opUnblockedArrayCache.py”, line 108, in _execute_Output_impl
self._fetch_and_store_block(request_roi, out=result)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opUnblockedArrayCache.py”, line 146, in _fetch_and_store_block
block_data = req.wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\operators\opCacheFixer.py”, line 63, in execute
self.Input(roi.start, roi.stop).writeInto(result).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self.result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 793, in call
return self.func( *totalargs, **self.kwargs)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\ilastik\ilastik\applets\objectClassification\opObjectClassification.py”, line 1337, in execute
map
= self.ObjectMap([t]).wait()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 500, in wait
return self._wait(timeout)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 526, in _wait
self._wait_within_request( current_request )
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 651, in wait_within_request
raise_with_traceback(exc_value, exc_tb)
File "C:\Program Files\ilastik-1.3.2\lib\site-packages\future\utils_init
.py", line 421, in raise_with_traceback
raise exc.with_traceback(traceback)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\request\request.py”, line 324, in _execute
self._result = self.fn()
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\lazyflow\lazyflow\slot.py”, line 887, in call
result_op = self.operator.execute(self.slot, (), self.roi, destination)
File “C:\Program Files\ilastik-1.3.2\ilastik-meta\ilastik\ilastik\applets\objectClassification\opObjectClassification.py”, line 1243, in execute
self.prob_cache[t] = prob_predictions[t]
KeyError: KeyError(0,)

QObject::connect: Cannot queue arguments of type ‘QVector’
(Make sure ‘QVector’ is registered using qRegisterMetaType().)
QObject::connect: Cannot queue arguments of type ‘QVector’
(Make sure ‘QVector’ is registered using qRegisterMetaType().)
QObject::connect: Cannot queue arguments of type ‘QVector’
(Make sure ‘QVector’ is registered using qRegisterMetaType().)

Quick update.
I have cropped my data, exported the proba maps (channel 1 only) in autocontext and run Obj Classif again, with blockwise prediction 1900 blocks and 500 halo.
I have selected ‘blockwise prediction’ in the export applet, 8bits hdf5 format for the image, and csv for the table.
This time no crash, I do get a HDF5 with a binary image that I can open in Fiji of about 200Mb but also a csv that is not a csv, that I cannot open in Excel or R but that I can open in HDView… I can there see a table with all the data (75934 rows!) but also ROIs for eack object. So it looks very much like the HDF5 export option.
I have now double checked, I had indeed selected csv.
Any idea how to fix that? Or how to get this table to a usable csv format?
Thanks v much!

M

Sorry for the spam, I have now been able to export the table from HDView as text and open it in excel.
Main question left is, as size seems to be the main problem of my obj classif crashes, is there a way to figure out what is the max size image/proba maps that I can load into Obj classif? Apart from just trial and error that is time consuming.
Thanks for all!