15#include <mitkProperties.h>
16#include <mitkNodePredicateAnd.h>
17#include <mitkNodePredicateDataType.h>
18#include <mitkNodePredicateProperty.h>
39 m_Controls =
new Ui::QmitkToFCompositeFilterWidgetControls;
42 int min =
m_Controls->m_ThresholdFilterMinValueSpinBox->value();
43 int max =
m_Controls->m_ThresholdFilterMaxValueSpinBox->value();
44 m_Controls->m_ThresholdFilterRangeSlider->setMinimum(min);
45 m_Controls->m_ThresholdFilterRangeSlider->setMaximum(max);
46 m_Controls->m_ThresholdFilterRangeSlider->setMinimumValue(min);
47 m_Controls->m_ThresholdFilterRangeSlider->setMaximumValue(max);
73 connect(
m_Controls->m_ThresholdFilterRangeSlider, SIGNAL(valuesChanged(
int,
int) ),
this, SLOT(
OnSpanChanged(
int ,
int ) ));
97 m_DataStorage = dataStorage;
98 m_Controls->maskImageComboBox->SetDataStorage(dataStorage);
99 m_Controls->maskImageComboBox->SetPredicate(mitk::NodePredicateAnd::New(mitk::NodePredicateDataType::New(
"Image"),mitk::NodePredicateProperty::New(
"binary", mitk::BoolProperty::New(
true))));
113 m_Controls->m_ThresholdFilterCheckBox->setChecked(threshold);
114 m_Controls->maskSegmentationCheckBox->setChecked(mask);
115 m_Controls->m_TemporalMedianFilterCheckBox->setChecked(tempMedian);
116 m_Controls->m_AverageFilterCheckBox->setChecked(tempAverage);
117 m_Controls->m_MedianFilterCheckBox->setChecked(median);
118 m_Controls->m_BilateralFilterCheckBox->setChecked(bilateral);
123 m_Controls->m_BilateralFilterDomainSigmaSpinBox->setValue(domainSigma);
124 m_Controls->m_BilateralFilterRangeSigmaSpinBox->setValue(rangeSigma);
125 m_Controls->m_BilateralFilterKernelRadiusSpinBox->setValue(kernelRadius);
130 m_Controls->m_ThresholdFilterMinValueSpinBox->setValue(min);
131 m_Controls->m_ThresholdFilterMaxValueSpinBox->setValue(max);
136 m_Controls->m_TemporalMedianFilterNumOfFramesSpinBox->setValue(nImages);
145 m_Controls->m_AverageFilterCheckBox->setChecked(
false);
156 m_Controls->m_TemporalMedianFilterCheckBox->setChecked(
false);
163 this->
m_Controls->m_AverageFilterCheckBox->setVisible(checked);
164 this->
m_Controls->m_BilateralFilterCheckBox->setVisible(checked);
165 this->
m_Controls->m_BilateralFilterDomainSigmaSpinBox->setVisible(checked);
166 this->
m_Controls->m_BilateralFilterKernelRadiusSpinBox->setVisible(checked);
167 this->
m_Controls->m_BilateralFilterRangeSigmaSpinBox->setVisible(checked);
168 this->
m_Controls->m_MedianFilterCheckBox->setVisible(checked);
169 this->
m_Controls->m_TemporalMedianFilterCheckBox->setVisible(checked);
170 this->
m_Controls->m_TemporalMedianFilterNumOfFramesSpinBox->setVisible(checked);
171 this->
m_Controls->m_ThresholdFilterCheckBox->setVisible(checked);
172 this->
m_Controls->m_ThresholdFilterMaxValueSpinBox->setVisible(checked);
173 this->
m_Controls->m_ThresholdFilterMinValueSpinBox->setVisible(checked);
174 this->
m_Controls->m_ThresholdFilterRangeSlider->setVisible(checked);
175 this->
m_Controls->m_ThresholdFilterRangeSliderReset->setVisible(checked);
176 this->
m_Controls->label_3->setVisible(checked);
177 this->
m_Controls->label_4->setVisible(checked);
178 this->
m_Controls->label_12->setVisible(checked);
179 this->
m_Controls->maskImageComboBox->setVisible(checked);
180 this->
m_Controls->maskSegmentationCheckBox->setVisible(checked);
193 mitk::DataNode::Pointer maskImageNode =
m_Controls->maskImageComboBox->GetSelectedNode();
194 if (maskImageNode.IsNotNull())
196 mitk::Image::Pointer maskImage =
dynamic_cast<mitk::Image*
>(maskImageNode->GetData());
219 SetBilateralFilterParameter();
224 SetBilateralFilterParameter();
229 SetBilateralFilterParameter();
234 m_Controls->m_ThresholdFilterRangeSlider->setMinimumValue(value);
235 SetThresholdFilterParameter();
240 m_Controls->m_ThresholdFilterRangeSlider->setMaximumValue(value);
241 SetThresholdFilterParameter();
245void QmitkToFCompositeFilterWidget::SetThresholdFilterParameter()
247 int min =
m_Controls->m_ThresholdFilterMinValueSpinBox->value();
248 int max =
m_Controls->m_ThresholdFilterMaxValueSpinBox->value();
252void QmitkToFCompositeFilterWidget::SetBilateralFilterParameter()
254 double domainSigma =
m_Controls->m_BilateralFilterDomainSigmaSpinBox->value();
255 double rangeSigma =
m_Controls->m_BilateralFilterRangeSigmaSpinBox->value();
256 int kernelRadius =
m_Controls->m_BilateralFilterKernelRadiusSpinBox->value();
262 int lowerVal =
m_Controls->m_ThresholdFilterRangeSlider->minimumValue();
263 int upperVal =
m_Controls->m_ThresholdFilterRangeSlider->maximumValue();
265 m_Controls->m_ThresholdFilterMinValueSpinBox->setValue(lowerVal);
266 m_Controls->m_ThresholdFilterMaxValueSpinBox->setValue(upperVal);
274 m_Controls->m_ThresholdFilterRangeSlider->setMinimumValue(lower);
275 m_Controls->m_ThresholdFilterRangeSlider->setMaximumValue(upper);
277 m_Controls->m_ThresholdFilterMinValueSpinBox->setValue(lower);
278 m_Controls->m_ThresholdFilterMaxValueSpinBox->setValue(upper);
Applies a common filter-pipeline to the first input of this filter.