Commit 6b2c120c authored by Guillaume Pasero's avatar Guillaume Pasero

RM: deprecated class (name typo)

parent 17ee4492
/*
* Copyright (C) 2005-2017 Centre National d'Etudes Spatiales (CNES)
*
* This file is part of Orfeo Toolbox
*
* https://www.orfeo-toolbox.org/
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef otbAssymmetricFusionOfLineDetectorImageFilter_h
#define otbAssymmetricFusionOfLineDetectorImageFilter_h
#include "itkImageToImageFilter.h"
#include "otbLineRatioDetectorImageFilter.h"
#include "otbLineCorrelationDetectorImageFilter.h"
#include "otbAssociativeSymmetricalSumImageFilter.h"
#include "vcl_deprecated_header.h"
namespace otb
{
/** \class AssymmetricFusionOfLineDetectorImageFilter
*
* This class implements a composite filter that combines three filters:
* two filters of line detector ( a line detector by ratio and a line
* detector by croos-correlation) and a filter that produces a fusion of
* those two line detector filters.
*
*
* \ingroup OTBEdge
*/
template <class TInputImage,
class TOutputImage,
class TOutputImageDirection = TOutputImage,
class TInterpolator = itk::LinearInterpolateImageFunction<TInputImage> >
class ITK_EXPORT AssymmetricFusionOfLineDetectorImageFilter :
public LineDetectorImageFilterBase<TInputImage, TOutputImage, TOutputImageDirection, TInterpolator>
{
public:
itkStaticConstMacro(InputImageDimension,
unsigned int,
TInputImage::ImageDimension);
itkStaticConstMacro(OutputImageDimension,
unsigned int,
TOutputImage::ImageDimension);
typedef AssymmetricFusionOfLineDetectorImageFilter Self;
typedef LineDetectorImageFilterBase<TInputImage, TOutputImage, TOutputImageDirection, TInterpolator> Superclass;
typedef itk::SmartPointer<Self> Pointer;
typedef itk::SmartPointer<const Self> ConstPointer;
itkNewMacro(Self);
itkTypeMacro(AssymmetricFusionOfLineDetectorImageFilter, LineDetectorImageFilterBase);
typedef typename Superclass::InputImageType InputImageType;
typedef typename Superclass::OutputImageType OutputImageType;
typedef typename Superclass::OutputImageDirectionType OutputImageDirectionType;
typedef typename Superclass::InterpolatorType InterpolatorType;
typedef OutputImageType InputImageType1;
typedef OutputImageType InputImageType2;
typedef typename InputImageType::PixelType InputPixelType;
typedef typename InputImageType::SizeType SizeType;
typedef typename OutputImageType::PixelType OutputPixelType;
protected:
AssymmetricFusionOfLineDetectorImageFilter();
~AssymmetricFusionOfLineDetectorImageFilter() ITK_OVERRIDE {}
typedef otb::LineRatioDetectorImageFilter<InputImageType, OutputImageType, OutputImageDirectionType,
InterpolatorType> LineRatioType;
typedef otb::LineCorrelationDetectorImageFilter<InputImageType, OutputImageType, OutputImageDirectionType,
InterpolatorType> LineCorrelationType;
typedef otb::AssociativeSymmetricalSumImageFilter<InputImageType1, InputImageType2,
OutputImageType> AssSymSumType;
void GenerateData() ITK_OVERRIDE;
void PrintSelf(std::ostream& os, itk::Indent indent) const ITK_OVERRIDE;
private:
AssymmetricFusionOfLineDetectorImageFilter(const Self &); //purposely not implemented
void operator =(const Self&); //purposely not implemented
typename LineRatioType::Pointer m_LineRatio;
typename LineCorrelationType::Pointer m_LineCorrelation;
typename AssSymSumType::Pointer m_AssSymSum;
};
} // end namespace otb
#ifndef OTB_MANUAL_INSTANTIATION
#include "otbAssymmetricFusionOfLineDetectorImageFilter.txx"
#endif
#endif
/*
* Copyright (C) 2005-2017 Centre National d'Etudes Spatiales (CNES)
*
* This file is part of Orfeo Toolbox
*
* https://www.orfeo-toolbox.org/
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef otbAssymmetricFusionOfLineDetectorImageFilter_txx
#define otbAssymmetricFusionOfLineDetectorImageFilter_txx
#include "otbAssymmetricFusionOfLineDetectorImageFilter.h"
namespace otb
{
/**
*
*/
template <class TInputImage, class TOutputImage, class TOutputImageDirection, class TInterpolator>
AssymmetricFusionOfLineDetectorImageFilter<TInputImage, TOutputImage, TOutputImageDirection, TInterpolator>
::AssymmetricFusionOfLineDetectorImageFilter()
{
this->m_Radius.Fill(1);
this->m_LengthLine = 1;
this->m_WidthLine = 0;
this->m_NumberOfDirections = 8;
m_LineRatio = LineRatioType::New();
m_LineCorrelation = LineCorrelationType::New();
m_AssSymSum = AssSymSumType::New();
}
template <class TInputImage, class TOutputImage, class TOutputImageDirection, class TInterpolator>
void
AssymmetricFusionOfLineDetectorImageFilter<TInputImage, TOutputImage, TOutputImageDirection, TInterpolator>
::GenerateData()
{
m_LineRatio->SetInput( this->GetInput() );
m_LineRatio->SetLengthLine( this->m_LengthLine );
m_LineRatio->SetWidthLine( this->m_WidthLine );
m_LineRatio->SetNumberOfDirections( this->m_NumberOfDirections );
m_LineCorrelation->SetInput( this->GetInput() );
m_LineCorrelation->SetLengthLine( this->m_LengthLine );
m_LineCorrelation->SetWidthLine( this->m_WidthLine );
m_LineCorrelation->SetNumberOfDirections( this->m_NumberOfDirections );
m_AssSymSum->SetInput1( m_LineRatio->GetOutput() );
m_AssSymSum->SetInput2( m_LineCorrelation->GetOutput() );
m_AssSymSum->GraftOutput(this->GetOutput() );
m_AssSymSum->Update();
this->GraftOutput(m_AssSymSum->GetOutput() );
}
/**
* Standard "PrintSelf" method
*/
template <class TInputImage, class TOutputImage, class TOutputImageDirection, class TInterpolator>
void
AssymmetricFusionOfLineDetectorImageFilter<TInputImage, TOutputImage, TOutputImageDirection, TInterpolator>
::PrintSelf(std::ostream& os, itk::Indent indent) const
{
Superclass::PrintSelf(os, indent);
}
} //namespace otb
#endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment