diff --git a/Modules/Segmentation/Interactions/mitkPixelManipulationTool.cpp b/Modules/Segmentation/Interactions/mitkPixelManipulationTool.cpp deleted file mode 100644 index 1507bbcc3a..0000000000 --- a/Modules/Segmentation/Interactions/mitkPixelManipulationTool.cpp +++ /dev/null @@ -1,191 +0,0 @@ -/*============================================================================ - -The Medical Imaging Interaction Toolkit (MITK) - -Copyright (c) German Cancer Research Center (DKFZ) -All rights reserved. - -Use of this source code is governed by a 3-clause BSD license that can be -found in the LICENSE file. - -============================================================================*/ -#include "mitkPixelManipulationTool.h" - -#include "mitkBoundingObjectToSegmentationFilter.h" -#include "mitkImage.h" -#include "mitkImageAccessByItk.h" -#include "mitkImageCast.h" -#include "mitkProperties.h" -#include "mitkToolManager.h" -#include - -#include "mitkPixelManipulationTool.xpm" - -namespace mitk -{ - MITK_TOOL_MACRO(MITKSEGMENTATION_EXPORT, PixelManipulationTool, "Pixel manipulation tool"); -} - -mitk::PixelManipulationTool::PixelManipulationTool() : Tool("dummy"), m_Value(0), m_FixedValue(false) -{ -} - -mitk::PixelManipulationTool::~PixelManipulationTool() -{ -} - -void mitk::PixelManipulationTool::Activated() -{ - Superclass::Activated(); - - this->GetToolManager()->RoiDataChanged += - mitk::MessageDelegate(this, &mitk::PixelManipulationTool::OnRoiDataChanged); - m_OriginalImageNode = this->GetToolManager()->GetReferenceData(0); - - if (m_OriginalImageNode.IsNotNull()) - { - mitk::Image::Pointer image = dynamic_cast(m_OriginalImageNode->GetData()); - if (image.IsNotNull()) - { - // mitk::ScalarType scalar = image->GetScalarValueMax(); - } - } - else - this->GetToolManager()->ActivateTool(-1); -} - -void mitk::PixelManipulationTool::Deactivated() -{ - this->GetToolManager()->RoiDataChanged -= - mitk::MessageDelegate(this, &mitk::PixelManipulationTool::OnRoiDataChanged); - - Superclass::Deactivated(); -} - -const char *mitk::PixelManipulationTool::GetName() const -{ - return "pixelmanipulation"; -} - -const char **mitk::PixelManipulationTool::GetXPM() const -{ - return mitkPixelManipulationTool_xpm; -} - -void mitk::PixelManipulationTool::OnRoiDataChanged() -{ -} - -void mitk::PixelManipulationTool::CalculateImage() -{ - if (m_OriginalImageNode.IsNotNull()) - { - mitk::Image::Pointer image = dynamic_cast(m_OriginalImageNode->GetData()); - mitk::DataNode *maskNode = this->GetToolManager()->GetRoiData(0); - mitk::Image::Pointer roi = mitk::Image::New(); - - if (maskNode) - { - auto *boundingObject = dynamic_cast(maskNode->GetData()); - - if (boundingObject) - { - mitk::BoundingObjectToSegmentationFilter::Pointer filter = mitk::BoundingObjectToSegmentationFilter::New(); - filter->SetBoundingObject(boundingObject); - filter->SetInput(image); - filter->Update(); - roi = filter->GetOutput(); - } - else - roi = dynamic_cast(maskNode->GetData()); - - mitk::Image::Pointer newImage = mitk::Image::New(); - newImage->Initialize(image); - - if (image) - { - AccessByItk_3(image, ITKPixelManipulation, roi, newImage, m_Value); - this->AddImageToDataStorage(newImage); - } - } - } -} - -template -void mitk::PixelManipulationTool::ITKPixelManipulation(itk::Image *originalImage, - Image *maskImage, - Image *newImage, - int newValue) -{ - typedef itk::Image itkImageType; - typedef itk::Image itkMaskType; - typename itkImageType::Pointer itkImage; - typename itkMaskType::Pointer itkMask; - CastToItkImage(newImage, itkImage); - CastToItkImage(maskImage, itkMask); - - typedef itk::ImageRegionConstIterator InputIteratorType; - typedef itk::ImageRegionIterator OutputIteratorType; - typedef itk::ImageRegionConstIterator MaskIteratorType; - - MaskIteratorType maskIterator(itkMask, itkMask->GetLargestPossibleRegion()); - InputIteratorType inputIterator(originalImage, originalImage->GetLargestPossibleRegion()); - OutputIteratorType outputIterator(itkImage, itkImage->GetLargestPossibleRegion()); - - inputIterator.GoToBegin(); - outputIterator.GoToBegin(); - maskIterator.GoToBegin(); - - while (!outputIterator.IsAtEnd()) - { - if (maskIterator.Get()) - { - if (m_FixedValue) - outputIterator.Set(newValue); - else - outputIterator.Set(inputIterator.Get() + newValue); - } - else - outputIterator.Set(inputIterator.Get()); - - ++inputIterator; - ++outputIterator; - ++maskIterator; - } -} - -void mitk::PixelManipulationTool::AddImageToDataStorage(mitk::Image::Pointer image) -{ - if (image.IsNotNull()) - { - mitk::DataNode::Pointer node = mitk::DataNode::New(); - std::string name = m_OriginalImageNode->GetName(); - name.append("_modified"); - node->SetName(name); - node->SetProperty("binary", mitk::BoolProperty::New(false)); - node->SetData(image); - - if (nullptr != this->GetToolManager()) - this->GetToolManager()->GetDataStorage()->Add(node, m_OriginalImageNode); - } -} - -void mitk::PixelManipulationTool::SetValue(int value) -{ - m_Value = value; -} - -int mitk::PixelManipulationTool::GetValue() -{ - return m_Value; -} - -void mitk::PixelManipulationTool::SetFixedValue(int value) -{ - m_FixedValue = value; -} - -int mitk::PixelManipulationTool::GetFixedValue() -{ - return m_FixedValue; -} diff --git a/Modules/Segmentation/Interactions/mitkPixelManipulationTool.h b/Modules/Segmentation/Interactions/mitkPixelManipulationTool.h deleted file mode 100644 index 9e55cea83b..0000000000 --- a/Modules/Segmentation/Interactions/mitkPixelManipulationTool.h +++ /dev/null @@ -1,63 +0,0 @@ -/*============================================================================ - -The Medical Imaging Interaction Toolkit (MITK) - -Copyright (c) German Cancer Research Center (DKFZ) -All rights reserved. - -Use of this source code is governed by a 3-clause BSD license that can be -found in the LICENSE file. - -============================================================================*/ -#ifndef MITKPIXELMANIPULATIONTOOL_H -#define MITKPIXELMANIPULATIONTOOL_H - -#include "mitkTool.h" -#include - -#include "itkImage.h" - -namespace mitk -{ - class Image; - - class MITKSEGMENTATION_EXPORT PixelManipulationTool : public Tool - { - public: - mitkClassMacro(PixelManipulationTool, Tool); - itkFactorylessNewMacro(Self); - itkCloneMacro(Self); - - void SetValue(int value); - int GetValue(); - - void SetFixedValue(int value); - int GetFixedValue(); - - const char *GetName() const override; - const char **GetXPM() const override; - - void Activated() override; - void Deactivated() override; - - virtual void CalculateImage(); - - protected: - PixelManipulationTool(); - ~PixelManipulationTool() override; - - virtual void OnRoiDataChanged(); - void AddImageToDataStorage(itk::SmartPointer image); - - template - void ITKPixelManipulation(itk::Image *originalImage, - Image *maskImage, - Image *newImage, - int newValue); - - mitk::DataNode::Pointer m_OriginalImageNode; - int m_Value; - bool m_FixedValue; - }; // clas -} // namespace -#endif diff --git a/Modules/Segmentation/Interactions/mitkPixelManipulationTool.xpm b/Modules/Segmentation/Interactions/mitkPixelManipulationTool.xpm deleted file mode 100644 index daafedc1be..0000000000 --- a/Modules/Segmentation/Interactions/mitkPixelManipulationTool.xpm +++ /dev/null @@ -1,31 +0,0 @@ -/* XPM */ -static const char * mitkPixelManipulationTool_xpm[] = { -"20 20 8 1", -" c None", -". c #2E3436", -"+ c #EEEEEC", -"@ c #EFEFEF", -"# c #F7F3F7", -"$ c #F7F7F7", -"% c #FFFBFF", -"& c #FFFFFF", -". . . . . . . . . . ", -" .", -". . . . . ", -" .. .. .", -". ... ... ", -" .", -". ........ ", -" .++++++. .", -". .+@@@##. ", -" .+@###$. .", -". .+##$$%. ", -" .+#$$%%. .", -". .+$$%%&. ", -" ........ .", -". ", -" ... ... .", -". .. .. ", -" . . . . .", -". ", -" . . . . . . . . . ."}; \ No newline at end of file diff --git a/Modules/Segmentation/files.cmake b/Modules/Segmentation/files.cmake index 2cdf1bcdf5..ca8904312e 100644 --- a/Modules/Segmentation/files.cmake +++ b/Modules/Segmentation/files.cmake @@ -1,112 +1,111 @@ set(CPP_FILES Algorithms/mitkCalculateSegmentationVolume.cpp Algorithms/mitkContourModelSetToImageFilter.cpp Algorithms/mitkContourSetToPointSetFilter.cpp Algorithms/mitkContourUtils.cpp Algorithms/mitkCorrectorAlgorithm.cpp Algorithms/mitkDiffImageApplier.cpp Algorithms/mitkDiffSliceOperation.cpp Algorithms/mitkDiffSliceOperationApplier.cpp Algorithms/mitkFeatureBasedEdgeDetectionFilter.cpp Algorithms/mitkImageLiveWireContourModelFilter.cpp Algorithms/mitkImageToContourFilter.cpp #Algorithms/mitkImageToContourModelFilter.cpp Algorithms/mitkImageToLiveWireContourFilter.cpp Algorithms/mitkManualSegmentationToSurfaceFilter.cpp Algorithms/mitkOtsuSegmentationFilter.cpp Algorithms/mitkSegmentationHelper.cpp Algorithms/mitkSegmentationObjectFactory.cpp Algorithms/mitkShapeBasedInterpolationAlgorithm.cpp Algorithms/mitkShowSegmentationAsSmoothedSurface.cpp Algorithms/mitkShowSegmentationAsSurface.cpp Algorithms/mitkVtkImageOverwrite.cpp Controllers/mitkSegmentationInterpolationController.cpp Controllers/mitkToolManager.cpp Controllers/mitkSegmentationModuleActivator.cpp Controllers/mitkToolManagerProvider.cpp DataManagement/mitkContour.cpp DataManagement/mitkContourSet.cpp DataManagement/mitkExtrudedContour.cpp Interactions/mitkAddContourTool.cpp Interactions/mitkAutoCropTool.cpp Interactions/mitkSegWithPreviewTool.cpp Interactions/mitkBinaryThresholdBaseTool.cpp Interactions/mitkBinaryThresholdTool.cpp Interactions/mitkBinaryThresholdULTool.cpp Interactions/mitkCalculateGrayValueStatisticsTool.cpp Interactions/mitkCalculateVolumetryTool.cpp Interactions/mitkContourModelInteractor.cpp Interactions/mitkContourModelLiveWireInteractor.cpp Interactions/mitkEditableContourTool.cpp Interactions/mitkLiveWireTool2D.cpp Interactions/mitkLassoTool.cpp Interactions/mitkContourTool.cpp Interactions/mitkCreateSurfaceTool.cpp Interactions/mitkDrawPaintbrushTool.cpp Interactions/mitkErasePaintbrushTool.cpp Interactions/mitkEraseRegionTool.cpp Interactions/mitkFeedbackContourTool.cpp Interactions/mitkFillRegionTool.cpp Interactions/mitkOtsuTool3D.cpp Interactions/mitkPaintbrushTool.cpp - Interactions/mitkPixelManipulationTool.cpp Interactions/mitkRegionGrowingTool.cpp Interactions/mitkSegmentationsProcessingTool.cpp Interactions/mitkSetRegionTool.cpp Interactions/mitkSegTool2D.cpp Interactions/mitkSubtractContourTool.cpp Interactions/mitkTool.cpp Interactions/mitkToolCommand.cpp Interactions/mitkPickingTool.cpp Interactions/mitknnUnetTool.cpp Interactions/mitkSegmentationInteractor.cpp #SO Interactions/mitkProcessExecutor.cpp Rendering/mitkContourMapper2D.cpp Rendering/mitkContourSetMapper2D.cpp Rendering/mitkContourSetVtkMapper3D.cpp Rendering/mitkContourVtkMapper3D.cpp SegmentationUtilities/BooleanOperations/mitkBooleanOperation.cpp SegmentationUtilities/MorphologicalOperations/mitkMorphologicalOperations.cpp #Added from ML Controllers/mitkSliceBasedInterpolationController.cpp Algorithms/mitkSurfaceStampImageFilter.cpp ) set(RESOURCE_FILES Add_48x48.png Add_Cursor_32x32.png AI_48x48.png AI_Cursor_32x32.png Erase_48x48.png Erase_Cursor_32x32.png Fill_48x48.png Fill_Cursor_32x32.png LiveWire_48x48.png LiveWire_Cursor_32x32.png NewAdd_48x48.png NewAdd_Cursor_32x32.png Otsu_48x48.png Paint_48x48.png Paint_Cursor_32x32.png Pick_48x48.png RegionGrowing_48x48.png RegionGrowing_Cursor_32x32.png Subtract_48x48.png Subtract_Cursor_32x32.png Threshold_48x48.png TwoThresholds_48x48.png Wipe_48x48.png Wipe_Cursor_32x32.png Interactions/dummy.xml Interactions/EditableContourTool.xml Interactions/PickingTool.xml Interactions/PressMoveRelease.xml Interactions/PressMoveReleaseAndPointSetting.xml Interactions/PressMoveReleaseWithCTRLInversion.xml Interactions/PressMoveReleaseWithCTRLInversionAllMouseMoves.xml Interactions/SegmentationToolsConfig.xml Interactions/ContourModelModificationConfig.xml Interactions/ContourModelModificationInteractor.xml ) diff --git a/Modules/SegmentationUI/Qmitk/QmitkPixelManipulationToolGUI.cpp b/Modules/SegmentationUI/Qmitk/QmitkPixelManipulationToolGUI.cpp deleted file mode 100644 index 7d2a831a20..0000000000 --- a/Modules/SegmentationUI/Qmitk/QmitkPixelManipulationToolGUI.cpp +++ /dev/null @@ -1,116 +0,0 @@ -/*============================================================================ - -The Medical Imaging Interaction Toolkit (MITK) - -Copyright (c) German Cancer Research Center (DKFZ) -All rights reserved. - -Use of this source code is governed by a 3-clause BSD license that can be -found in the LICENSE file. - -============================================================================*/ -#include "QmitkPixelManipulationToolGUI.h" - -#include -#include -#include - -MITK_TOOL_GUI_MACRO(, QmitkPixelManipulationToolGUI, ""); - -QmitkPixelManipulationToolGUI::QmitkPixelManipulationToolGUI() : QmitkToolGUI() -{ - QBoxLayout *mainLayout = new QVBoxLayout(this); - QRadioButton *radio1 = new QRadioButton("change the masked pixels by value: ", this); - QRadioButton *radio2 = new QRadioButton("set the masked pixels to value: ", this); - - radio1->setChecked(true); - - connect(radio1, SIGNAL(toggled(bool)), this, SLOT(SetFixedValueOff(bool))); - connect(radio2, SIGNAL(toggled(bool)), this, SLOT(SetFixedValueOn(bool))); - - mainLayout->addWidget(radio1); - mainLayout->addWidget(radio2); - - m_Slider = new QSlider(Qt::Horizontal, this); - m_Slider->setRange(-5000, 5000); - m_Slider->setValue(0); - - connect(m_Slider, SIGNAL(valueChanged(int)), this, SLOT(OnSliderValueChanged(int))); - - m_Spinner = new QSpinBox(this); - m_Spinner->setRange(-5000, 5000); - m_Spinner->setValue(0); - - connect(m_Spinner, SIGNAL(editingFinished()), this, SLOT(OnSpinBoxChanged())); - - QBoxLayout *layout1 = new QHBoxLayout(); - layout1->addWidget(m_Slider); - layout1->addWidget(m_Spinner); - - QPushButton *okButton = new QPushButton("Ok"); - - connect(okButton, SIGNAL(clicked()), this, SLOT(OnOkButtonClicked())); - - mainLayout->addLayout(layout1); - mainLayout->addWidget(okButton); - - connect(this, SIGNAL(NewToolAssociated(mitk::Tool *)), this, SLOT(OnNewToolAssociated(mitk::Tool *))); -} - -QmitkPixelManipulationToolGUI::~QmitkPixelManipulationToolGUI() -{ - if (m_PixelManipulationTool.IsNotNull()) - { - } -} - -void QmitkPixelManipulationToolGUI::OnNewToolAssociated(mitk::Tool *tool) -{ - if (m_PixelManipulationTool.IsNotNull()) - { - } - m_PixelManipulationTool = dynamic_cast(tool); - if (m_PixelManipulationTool.IsNotNull()) - { - } -} - -void QmitkPixelManipulationToolGUI::SetFixedValueOff(bool flag) -{ - if (flag) - { - if (m_PixelManipulationTool.IsNotNull()) - m_PixelManipulationTool->SetFixedValue(false); - } -} - -void QmitkPixelManipulationToolGUI::SetFixedValueOn(bool flag) -{ - if (flag) - { - if (m_PixelManipulationTool.IsNotNull()) - m_PixelManipulationTool->SetFixedValue(true); - } -} - -void QmitkPixelManipulationToolGUI::OnSpinBoxChanged() -{ - m_Slider->setValue(m_Spinner->value()); -} - -void QmitkPixelManipulationToolGUI::OnSliderValueChanged(int value) -{ - if (m_PixelManipulationTool.IsNotNull()) - { - m_PixelManipulationTool->SetValue(value); - m_Spinner->setValue(value); - } -} - -void QmitkPixelManipulationToolGUI::OnOkButtonClicked() -{ - if (m_PixelManipulationTool.IsNotNull()) - { - m_PixelManipulationTool->CalculateImage(); - } -} diff --git a/Modules/SegmentationUI/Qmitk/QmitkPixelManipulationToolGUI.h b/Modules/SegmentationUI/Qmitk/QmitkPixelManipulationToolGUI.h deleted file mode 100644 index e19705892a..0000000000 --- a/Modules/SegmentationUI/Qmitk/QmitkPixelManipulationToolGUI.h +++ /dev/null @@ -1,47 +0,0 @@ -/*============================================================================ - -The Medical Imaging Interaction Toolkit (MITK) - -Copyright (c) German Cancer Research Center (DKFZ) -All rights reserved. - -Use of this source code is governed by a 3-clause BSD license that can be -found in the LICENSE file. - -============================================================================*/ -#ifndef QMITKPIXELMANIPULATIONTOOLGUI_H -#define QMITKPIXELMANIPULATIONTOOLGUI_H - -#include "QmitkDataStorageComboBox.h" -#include "QmitkToolGUI.h" -#include "mitkPixelManipulationTool.h" -#include -#include - -class QmitkPixelManipulationToolGUI : public QmitkToolGUI -{ - Q_OBJECT -public: - mitkClassMacro(QmitkPixelManipulationToolGUI, QmitkToolGUI); - itkFactorylessNewMacro(Self); - itkCloneMacro(Self); - - protected slots : - - void OnNewToolAssociated(mitk::Tool *); - void OnSliderValueChanged(int); - void OnSpinBoxChanged(); - void OnOkButtonClicked(); - void SetFixedValueOn(bool); - void SetFixedValueOff(bool); - -protected: - QmitkPixelManipulationToolGUI(); - ~QmitkPixelManipulationToolGUI() override; - - mitk::PixelManipulationTool::Pointer m_PixelManipulationTool; - QSlider *m_Slider; - QSpinBox *m_Spinner; - -}; // class -#endif diff --git a/Modules/SegmentationUI/files.cmake b/Modules/SegmentationUI/files.cmake index 466772d08a..183f6c5b26 100644 --- a/Modules/SegmentationUI/files.cmake +++ b/Modules/SegmentationUI/files.cmake @@ -1,83 +1,81 @@ set( CPP_FILES Qmitk/QmitkSegWithPreviewToolGUIBase.cpp Qmitk/QmitkMultiLabelSegWithPreviewToolGUIBase.cpp Qmitk/QmitkBinaryThresholdToolGUIBase.cpp Qmitk/QmitkBinaryThresholdToolGUI.cpp Qmitk/QmitkBinaryThresholdULToolGUI.cpp Qmitk/QmitkCalculateGrayValueStatisticsToolGUI.cpp Qmitk/QmitkConfirmSegmentationDialog.cpp Qmitk/QmitkCopyToClipBoardDialog.cpp Qmitk/QmitkDrawPaintbrushToolGUI.cpp Qmitk/QmitkErasePaintbrushToolGUI.cpp Qmitk/QmitkEditableContourToolGUIBase.cpp Qmitk/QmitkLiveWireTool2DGUI.cpp Qmitk/QmitkLassoToolGUI.cpp Qmitk/QmitkOtsuTool3DGUI.cpp Qmitk/QmitkPaintbrushToolGUI.cpp Qmitk/QmitkPickingToolGUI.cpp -Qmitk/QmitkPixelManipulationToolGUI.cpp Qmitk/QmitkSlicesInterpolator.cpp Qmitk/QmitkToolGUI.cpp Qmitk/QmitkToolGUIArea.cpp Qmitk/QmitkToolSelectionBox.cpp Qmitk/QmitknnUNetFolderParser.cpp Qmitk/QmitknnUNetToolGUI.cpp Qmitk/QmitknnUNetWorker.cpp Qmitk/QmitknnUNetGPU.cpp Qmitk/QmitkSurfaceStampWidget.cpp Qmitk/QmitkMaskStampWidget.cpp Qmitk/QmitkSliceBasedInterpolatorWidget.cpp Qmitk/QmitkStaticDynamicSegmentationDialog.cpp Qmitk/QmitkSurfaceBasedInterpolatorWidget.cpp Qmitk/QmitkSimpleLabelSetListWidget.cpp ) set(MOC_H_FILES Qmitk/QmitkSegWithPreviewToolGUIBase.h Qmitk/QmitkMultiLabelSegWithPreviewToolGUIBase.h Qmitk/QmitkBinaryThresholdToolGUIBase.h Qmitk/QmitkBinaryThresholdToolGUI.h Qmitk/QmitkBinaryThresholdULToolGUI.h Qmitk/QmitkCalculateGrayValueStatisticsToolGUI.h Qmitk/QmitkConfirmSegmentationDialog.h Qmitk/QmitkCopyToClipBoardDialog.h Qmitk/QmitkDrawPaintbrushToolGUI.h Qmitk/QmitkErasePaintbrushToolGUI.h Qmitk/QmitkEditableContourToolGUIBase.h Qmitk/QmitkLiveWireTool2DGUI.h Qmitk/QmitkLassoToolGUI.h Qmitk/QmitkOtsuTool3DGUI.h Qmitk/QmitkPaintbrushToolGUI.h Qmitk/QmitkPickingToolGUI.h -Qmitk/QmitkPixelManipulationToolGUI.h Qmitk/QmitkSlicesInterpolator.h Qmitk/QmitkToolGUI.h Qmitk/QmitkToolGUIArea.h Qmitk/QmitkToolSelectionBox.h Qmitk/QmitknnUNetFolderParser.h Qmitk/QmitknnUNetToolGUI.h Qmitk/QmitknnUNetGPU.h Qmitk/QmitknnUNetWorker.h Qmitk/QmitknnUNetEnsembleLayout.h Qmitk/QmitkSurfaceStampWidget.h Qmitk/QmitkMaskStampWidget.h Qmitk/QmitkSliceBasedInterpolatorWidget.h Qmitk/QmitkStaticDynamicSegmentationDialog.h Qmitk/QmitkSurfaceBasedInterpolatorWidget.h Qmitk/QmitkSimpleLabelSetListWidget.h ) set(UI_FILES Qmitk/QmitkConfirmSegmentationDialog.ui Qmitk/QmitkOtsuToolWidgetControls.ui Qmitk/QmitkSurfaceStampWidgetGUIControls.ui Qmitk/QmitkMaskStampWidgetGUIControls.ui Qmitk/QmitkSliceBasedInterpolatorWidgetGUIControls.ui Qmitk/QmitkSurfaceBasedInterpolatorWidgetGUIControls.ui Qmitk/QmitknnUNetToolGUIControls.ui Qmitk/QmitkEditableContourToolGUIControls.ui ) set(QRC_FILES resources/SegmentationUI.qrc )