22class DicomSegmentItemImageBase;
45 const std::string& segLabel =
"",
46 const std::string& segDescription =
"",
48 const std::string& segAlgorithmName =
"",
49 const Vector3& recommDisplayCIELabValue =
Vector3(100.0, 0.0052605, -0.0104082),
50 const double segImageValueRangeMin = 0.999,
117 std::vector<DicomSegmentItem>& resultItems);
static size_t getNumCodedLinesPerItem(const std::string &codedFirstLine)
SegmentAlgorithmType
Types of algorithms how the segment was calculated, according to the DICOM standard.
@ SEMIAUTOMATIC
calculated segment with user assistance
@ MANUAL
user-entered segment
@ AUTOMATIC
calculated segment
DicomSegmentItem(unsigned int segNumber=1u, const std::string &segLabel="", const std::string &segDescription="", SegmentAlgorithmType segAlgorithmType=MANUAL, const std::string &segAlgorithmName="", const Vector3 &recommDisplayCIELabValue=Vector3(100.0, 0.0052605, -0.0104082), const double segImageValueRangeMin=0.999, const double segImageValueRangeMax=ML_DOUBLE_MAX)
static std::string setUpSegmentSequenceFromLines(std::vector< std::string > &inputLines, std::vector< DicomSegmentItem > &resultItems)
double segmentImageValueRangeMax
Upper border of range in which values are considered as part of the segment; not stored in DICOM file...
std::string segmentLabel
Label of the segment.
@ NumberOfSegmentAlgorithmTypes
void setFromBase64CodedString(const std::string &codedItem)
Return the content of the item as a composition of Base64 coded strings.
SegmentAlgorithmType segmentAlgorithmType
Segment algorithm type (AUTOMATIC, SEMIAUTOMATIC, MANUAL), currently only MANUAL.
std::string getAsBase64CodedString() const
Return the content of the item as a composition of Base64 coded strings.
virtual const DicomSegmentItemImageBase * getSegmentItemImage()
std::string getAlgorithmTypeAsString() const
Get algorithm type as string.
virtual ~DicomSegmentItem()
Virtual destructor.
Vector3 recommendedDisplayCIELabValue
Recommended Display CIELab value defining the color of the segment.
std::string segmentAlgorithmName
Name of the segmentation algorithm used to create the segment if segmentAlgorithmType is not MANUAL.
unsigned int segmentNumber
static std::string getVersionNumber(const std::string &codedFirstLine)
static const char *const SegmentAlgorithmTypeStrings[NumberOfSegmentAlgorithmTypes]
Strings corresponding to the SegmentAlgorithmType.
double segmentImageValueRangeMin
Lower border of range in which values are considered as part of the segment; not stored in DICOM file...
std::string segmentDescription
Description of the segment.
std::vector< DicomSegmentItem > DicomSegmentItemVector
Tvec3< MLdouble > Vector3
A vector with three components of type double.