In T29396#243822, @kalali wrote:Yes that's what I found out too. I wanted to test something by changing the threshold tool to accept a vector image and work with AccessVectorPixelTypeByItk_n and itk::VectorImage<TPixel, VImageDimension> VectorImageType; but let's discuss how we want to prioritize this.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Feed Advanced Search
Advanced Search
Advanced Search
Nov 18 2022
Nov 18 2022
kalali triaged T29402: [mxn multi widget] Concept for blocking individual render windows as Normal priority.
floca added a revision to T29391: [Segmentation] Prevent multi-label images to be saved as unsupported image formats: Restricted Differential Revision.
floca added a revision to T29391: [Segmentation] Prevent multi-label images to be saved as unsupported image formats: Restricted Differential Revision.
Yes that's what I found out too. I wanted to test something by changing the threshold tool to accept a vector image and work with AccessVectorPixelTypeByItk_n and itk::VectorImage<TPixel, VImageDimension> VectorImageType; but let's discuss how we want to prioritize this.
Nov 17 2022
Nov 17 2022
And we should add this case to our checklist in order to test seg not also with 3D and 3D+t, but also vector images.
The problem is that Peter used a vector image. and now the mask is a vector image too, this is why the accessors do complain. I guess we have to fix the function that generates the plain segmentation image based on the image as template.
kalali updated subscribers of T29396: [Segmentation] Newly created labelset image has wrong image type.
@floca The error seems to be inside AccessFixedTypeByItk_n, which produces a _accessByItkPixelTypeException (from inside Modules/Core/include/mitkImageAccessByItk.h
I looked into this and can verify the behavior.
I debugged and the crash happens inside ``
I tested other 3D tools, e.g. "Threshold" or "UL Threshold" (and even Otsu) and the following error message is shown:
Pixel type vector is not in (int)( unsigned int)( short)( unsigned short)( char)( unsigned char)(double)( float)
kalali added a revision to T29394: [mxn multi widget] Image cropper shows weird behavior: Restricted Differential Revision.
When initializing the plane nodes inside CrosshairManager DataNode::SetMapper is called which results in the node's m_Mapper variable to hold a PlaneGeometryDataMapper2D at position 1 (mapper slot id is Standard2D = 1).
But if DataNode::GetMapper is called later with MapperSlotId = 1 the list m_Mappers is completely empty and a new mapper is created via the BoundingShapeObjectFactory.
Somehow it seems as if the BoundingShapeObjectFactory is the last factory to be checked for extra factories to create valid mappers and this one is then used (it overwrites previously existing mappers). I wonder why this does not happen for the StdMultiWidget.
neher triaged T29396: [Segmentation] Newly created labelset image has wrong image type as Normal priority.
It seems as if there is something wrong with mitk::CoreObjectFactory::CreateMapper but I have to go a little bit deeper. Maybe this is also related to {D755} because the crosshair planes do not get a specific mapper set.
Nov 16 2022
Nov 16 2022
kalali updated the task description for T29240: [mxn multi widget] Allow different time navigation controller for each individual render window.
kalali added a comment to T29393: [mxn multi widget] Concept for individual render window synchronization.
I added T24704: [Multi widget] Rules for updating the render windows as a somewhat related task.
kalali triaged T29393: [mxn multi widget] Concept for individual render window synchronization as Normal priority.
kalali closed T25604: New concept for switching between different render windows, a subtask of T25603: Combine render window manager with custom multi widget, as Invalid.
This task is invalid since we moved the functionality of the render window manager to render window specific drop-down menus. More discussion about the concept will happen in T29297: [mxn multi widget] Optimize data accessibility inside render windows.
kalali added a comment to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
We will add the two suggested changes as a hotfix / release patch because
- we should definitely avoid workbench crashes
- also old legacy segmentations / scene files will provoke the crash
s434n triaged T29392: [SEG] Add dedicated writer to store multi-label images in nifti as Normal priority.
s434n updated subscribers of T29391: [Segmentation] Prevent multi-label images to be saved as unsupported image formats.
s434n triaged T29391: [Segmentation] Prevent multi-label images to be saved as unsupported image formats as Unbreak Now! priority.
floca removed a project from T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash: Request for Discussion.
floca moved T29389: Python utility module from Backlog to MITK Meeting on the Request for Discussion board.
floca moved T29381: Move Multilabel classes to Core module from Backlog to MITK Meeting on the Request for Discussion board.
floca moved T29390: How to ease the handling of external generated segmentations from Backlog to MITK Meeting on the Request for Discussion board.
kalali added a comment to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
In T29388#243635, @floca wrote:The seg predicate of the view is wrong. Should not be able to select the nifti at all.
Also seg in nifti form have to be converted into label image currently via context menu "convert to segmentation".
kalali renamed T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash from [Segmentation] Loading a nifty segmentation (nii) leads to a crash to [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
kalali added a revision to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash: Restricted Differential Revision.
kalali moved T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash from Backlog to MITK Meeting on the Request for Discussion board.
Nov 15 2022
Nov 15 2022
floca added a comment to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
Is this reason for a patch release?
floca updated the task description for T29390: How to ease the handling of external generated segmentations.
That would also help to avoid problems like T29388
floca added a comment to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
The seg predicate of the view is wrong. Should not be able to select the nifti at all.
kalali added a comment to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
I added a first fix to avoid crashes. More changes are required:
Inside QmitkSegmentationView::UpdateGUI() the two functions m_Controls->layersWidget->UpdateGUI() and m_Controls->labelsWidget->UpdateGUI() are called. They both require the working image to be a LabelSetImage, otherwise the GUI elements will stay deactivated. Also, since no layer is available the toolselectionboxes stay deactivated.
kalali added a revision to T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash: Restricted Differential Revision.
kalali updated subscribers of T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash.
kalali triaged T29388: [Segmentation] Loading a nifti segmentation (nii) leads to a crash as Unbreak Now! priority.
Nov 11 2022
Nov 11 2022
kalali added a revision to T29385: [mxn multi widget] Pixel value view does not change on crosshair selection: Restricted Differential Revision.
kalali triaged T29386: [mxn multi widget] StdDisplay unnecessarily uses the crosshair manager as Normal priority.
kalali updated the task description for T29385: [mxn multi widget] Pixel value view does not change on crosshair selection.
Nov 10 2022
Nov 10 2022
kalali renamed T29385: [mxn multi widget] Pixel value view does not change on crosshair selection from [mxn to [mxn multi widget] Pixel value view does not change on crosshair selection.
kalali added a revision to T29383: [mxn multi widget] Crosshair does not show a gap: Restricted Differential Revision.
Nov 9 2022
Nov 9 2022
Unfortunately not solved. Same error.
kalali updated the task description for T26543: Enum for AXIAL, SAGITTAL, CORONAL 3D/ORIGINAL/NONE is provided at many different locations.
Nov 8 2022
Nov 8 2022
In T28989#233817, @kalali wrote:mitk::Tool::CanHandle:
The basic mitk::Tool restricts the data that can be handled to reference-data - working-data pairs, where
- the reference-data is valid
Why is it not required for the working-data to be valid? This is a requirement for all following CanHandle-functions (working data needs to be an mitk::LabelSetImage or an mitk::Image) that override the basic function, so why not put it in the basic class function?
kalali added a revision to T28989: [Segmentation] CanHandle functions seem to be inconsistent: Restricted Differential Revision.
kalali updated the task description for T28989: [Segmentation] CanHandle functions seem to be inconsistent.
kalali updated the task description for T28989: [Segmentation] CanHandle functions seem to be inconsistent.
kalali updated the task description for T28989: [Segmentation] CanHandle functions seem to be inconsistent.
kalali edited projects for T28989: [Segmentation] CanHandle functions seem to be inconsistent, added: MITK; removed MITK (v2022.10).
@kompan and I created this guide some time ago. We can reuse it, extend it and put the content into the Phabricator wiki: https://hub.dkfz.de/f/7173768
kalali edited projects for T29140: [Selection widget] Optional selection can not be removed if a fitting node is always found, added: MITK, Next Milestone, Request for Discussion; removed MITK (v2022.10).
kalali edited projects for T29313: Add a Test to check if the GrowCut algorithm produces a different output, added: MITK; removed MITK (v2022.10).
kalali added a revision to T26543: Enum for AXIAL, SAGITTAL, CORONAL 3D/ORIGINAL/NONE is provided at many different locations: Restricted Differential Revision.
kalali added a comment to T26543: Enum for AXIAL, SAGITTAL, CORONAL 3D/ORIGINAL/NONE is provided at many different locations.
It seems as if there is a mapping between the SliceNavigationController::ViewDirection and PlaneGeometry::PlaneOrientation, which makes it unnecessary to keep the direction / orientation in both classes.
kislinsk added a revision to T29380: [Segmentation] Loading a segmentation while the Segmentation View is open may lead to a crash: Restricted Differential Revision.
kislinsk added a comment to T29380: [Segmentation] Loading a segmentation while the Segmentation View is open may lead to a crash.
Shortcut to reproduce the crash:
- Start the Workbench
- If not already opened, open the Segmentation View
- Close the project or close the Standard Display
- Load any segmentation
Nov 7 2022
Nov 7 2022
kalali edited projects for T26959: [Segmentation] Newly created LabelSet segmentation is not displayed as "outline binary", added: MITK, Next Milestone; removed MITK (v2022.10).
kalali edited projects for T29163: [XNAT] Opening XNAT session fails, added: MITK; removed MITK (v2022.10).
kalali edited projects for T25057: Check IContextMenuActions and extension points, added: MITK; removed MITK (v2022.10).
kalali closed T29220: StatusBar info is dependent on the pointer position, not on the crosshair / mouse click as Resolved.
All related tasks have been resolved so we can close this task as well. The "issue" still remains but we are exploiting it on purpose now using the changes made in {D686}, to show pixel information dynamically (position under the mouse cursor) in the status bar.
With the changes made in {D749} we now have the possibility to explicitly show image pixel information for the crosshair position in the newly introduced pixel value view.
kislinsk added a comment to T29380: [Segmentation] Loading a segmentation while the Segmentation View is open may lead to a crash.
The interesting part here is that m_Time of mitk::BaseController is not supposed to be nullptr in particular as m_Slice is a valid stepper. My first guess is that a partly deconstructed controller is triggered here.
kislinsk added a comment to T29380: [Segmentation] Loading a segmentation while the Segmentation View is open may lead to a crash.
The crash happens in mitk::SliceNavigationController::GetSelectedTimeStep() as m_Time (mitk::Stepper::Pointer) is accessed while it is a nullptr. The events that lead to this situation are that the mitk::ToolManager notifies QmitkSlicesInterpolator via OnToolManagerWorkingDataModified(). This method calls SetCurrentContourListID() in turn, which executes the crashing line of code:
In T29025#243469, @kislinsk wrote:In T29025#243461, @kalali wrote:I stumbled upon this while working on T28752: [Segmentation] Move Segmentation utilities widgets to SegmentationUI module. I would like to tackle this issue and already started looking into this. Do you already have an idea how to approach it or do we want to discuss it next week?
I already implemented most of it as core service a while ago but then was interrupted by something else. As far as I remember it is nearly complete except for the equivalent of BlueBerry's preference storage. I will look for the branch the upcoming week and push it. Never assigned the task, sorry.