IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
SubImageExtractor.h
Go to the documentation of this file.
1 // SubImageExtractor.h:
3 // --------------------
4 //
14 
15 #ifndef __IPSDKIMAGE_SUBIMAGEEXTRACTOR_H__
16 #define __IPSDKIMAGE_SUBIMAGEEXTRACTOR_H__
17 
20 #include <IPSDKUtil/Tools/ProcessingResult.h>
21 
22 namespace ipsdk {
23 namespace image {
24 
25 class BaseImageGeometry;
26 
29 
31 {
42  template <typename ImageType>
43  static BoolResult extractPlan(const ipUInt64 zPlanIdx,
44  const ipUInt64 cPlanIdx,
45  const ipUInt64 tPlanIdx,
46  ImageType& inputImage,
47  boost::shared_ptr<ImageType>& pSubImage);
48 
59  template <typename ImageType>
60  static BoolResult extractVolume(const ipUInt64 cPlanIdx,
61  const ipUInt64 tPlanIdx,
62  ImageType& inputImage,
63  boost::shared_ptr<ImageType>& pSubImage);
64 
75  template <typename ImageType>
76  static BoolResult extractColor(const ipUInt64 zPlanIdx,
77  const ipUInt64 tPlanIdx,
78  ImageType& inputImage,
79  boost::shared_ptr<ImageType>& pSubImage);
80 
91  template <typename ImageType>
92  static BoolResult extractTemporal(const ipUInt64 zPlanIdx,
93  const ipUInt64 cPlanIdx,
94  ImageType& inputImage,
95  boost::shared_ptr<ImageType>& pSubImage);
96 
107  template <typename ImageType>
108  static BoolResult extractColorVolume(const ipUInt64 tPlanIdx,
109  ImageType& inputImage,
110  boost::shared_ptr<ImageType>& pSubImage);
111 
122  template <typename ImageType>
123  static BoolResult extractTemporalVolume(const ipUInt64 cPlanIdx,
124  ImageType& inputImage,
125  boost::shared_ptr<ImageType>& pSubImage);
126 
137  template <typename ImageType>
138  static BoolResult extractTemporalColor(const ipUInt64 zPlanIdx,
139  ImageType& inputImage,
140  boost::shared_ptr<ImageType>& pSubImage);
141 
152  template <typename ImageType>
153  static BoolResult extractSubSequence(const ipUInt64 temporalStartOffset,
154  const ipUInt64 temporalSize,
155  ImageType& inputImage,
156  boost::shared_ptr<ImageType>& pSubImage);
157 
168  template <typename ImageType>
169  static BoolResult extractSubVolume(const ipUInt64 volStartOffset,
170  const ipUInt64 volSize,
171  ImageType& inputImage,
172  boost::shared_ptr<ImageType>& pSubImage);
173 
180  template <typename ImageType>
181  static BoolResult extractCudaSubImage(const ipUInt64 deviceIdx,
182  ImageType& inputImage,
183  boost::shared_ptr<ImageType>& pSubImage);
184 
185 
195  template <typename ImageType>
196  static boost::shared_ptr<BaseImageGeometry>
197  getGeometryResultingFromSeqConcatenation(
198  const std::vector<boost::shared_ptr<ImageType> >& vImages);
199 
209  static BoolResult concatenateDiskSequences(const std::vector<boost::shared_ptr<BaseImage> >& inputImages,
210  boost::shared_ptr<DiskImage>& pSubImage);
211 
222  template <typename ImageType>
223  static BoolResult concatenateSequences(const std::vector<boost::shared_ptr<ImageType> >& inputImages,
224  boost::shared_ptr<ImageType>& pSubImage);
225 
234  template <typename ImageType>
235  static boost::shared_ptr<BaseImageGeometry>
236  getGeometryResultingFromVolConcatenation(
237  const std::vector<boost::shared_ptr<ImageType> >& inputImages);
238 
248  static BoolResult
249  concatenateDiskVolumes(
250  const std::vector<boost::shared_ptr<BaseImage> >& inputImages,
251  boost::shared_ptr<DiskImage>& pSubImage);
252 
263  template <typename ImageType>
264  static BoolResult
266  const std::vector<boost::shared_ptr<ImageType> >& inputImages,
267  boost::shared_ptr<ImageType>& pSubImage);
268 
273  template <typename ImageType>
274  static BoolResult reInterpretImageData(ImageType& originalImage,
275  const BaseImageGeometry& targetGeometry,
276  boost::shared_ptr<ImageType>& pSubImage);
277 };
278 
281 
282 } // end of namespace image
283 } // end of namespace ipsdk
284 
285 #endif // __IPSDKIMAGE_SUBIMAGEEXTRACTOR_H__
PYIPSDKBASE_API image::ImageConstPtr extractColor(const ipUInt64 zPlanIdx, const ipUInt64 tPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of color plans from an other image
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
PYIPSDKBASE_API image::ImageConstPtr extractPlan(const ipUInt64 zPlanIdx, const ipUInt64 cPlanIdx, const ipUInt64 tPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of a single plan from an other image
PYIPSDKBASE_API image::ImageConstPtr extractTemporalVolume(const ipUInt64 cPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of a sequence 3d volume from an other image
PYIPSDKBASE_API image::ImageConstPtr extractVolume(const ipUInt64 cPlanIdx, const ipUInt64 tPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of a 3d volume from an other image
PYIPSDKBASE_API image::ImageConstPtr extractTemporalColor(const ipUInt64 zPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of sequence color plans from an other image
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
PYIPSDKBASE_API image::ImageConstPtr extractSubVolume(const ipUInt64 volStartOffset, const ipUInt64 volSize, const image::BaseImage &inputImage)
extraction of a sub image composed of a sub volume from an other image
PYIPSDKBASE_API image::ImageConstPtr extractColorVolume(const ipUInt64 tPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of a color 3d volume from an other image
Base class for image geometry.
Definition: BaseImageGeometry.h:38
IPSDKIMAGE_API ImagePtr reInterpretImageData(const ImagePtr &pOriginalImage, const BaseImageGeometry &targetGeometry)
function allowing to create a reinterpreted version of an image
PYIPSDKBASE_API image::ImageConstPtr concatenateVolumes(const image::ImageConstPtr &pInputImage1, const image::ImageConstPtr &inputImage2)
generation of a sub image composed of the volume concatenation of two 3d images
PYIPSDKBASE_API image::ImageConstPtr extractSubSequence(const ipUInt64 temporalStartOffset, const ipUInt64 temporalSize, const image::BaseImage &inputImage)
extraction of a sub image composed of a sub sequence from an other image
Definition of import/export macro for library.
#define IPSDKIMAGE_API
Import/Export macro for library IPSDKImage.
Definition: IPSDKImageExports.h:27
Definition: SubImageExtractor.h:30
Predefined type for image management.
PYIPSDKBASE_API image::ImageConstPtr extractTemporal(const ipUInt64 zPlanIdx, const ipUInt64 cPlanIdx, const image::BaseImage &inputImage)
extraction of a sub image composed of sequence plans from an other image
PYIPSDKBASE_API image::ImageConstPtr concatenateSequences(const image::ImageConstPtr &pInputImage1, const image::ImageConstPtr &pInputImage2)
generation of a sub image composed of the concatenation of two sequence images