Name
check_differencecheck_differenceCheckDifferencecheck_differenceCheckDifferenceCheckDifference — Pixelweises Vergleichen zweier Bilder.
Herror check_difference(const Hobject Image, const Hobject Pattern, Hobject* Selected, const char* Mode, const Hlong DiffLowerBound, const Hlong DiffUpperBound, const Hlong GrayOffset, const Hlong AddRow, const Hlong AddCol)
Herror T_check_difference(const Hobject Image, const Hobject Pattern, Hobject* Selected, const Htuple Mode, const Htuple DiffLowerBound, const Htuple DiffUpperBound, const Htuple GrayOffset, const Htuple AddRow, const Htuple AddCol)
Herror check_difference(Hobject Image, Hobject Pattern, Hobject* Selected, const HTuple& Mode, const HTuple& DiffLowerBound, const HTuple& DiffUpperBound, const HTuple& GrayOffset, const HTuple& AddRow, const HTuple& AddCol)
HRegion HImage::CheckDifference(const HImage& Pattern, const HTuple& Mode, const HTuple& DiffLowerBound, const HTuple& DiffUpperBound, const HTuple& GrayOffset, const HTuple& AddRow, const HTuple& AddCol) const
HRegionArray HImageArray::CheckDifference(const HImageArray& Pattern, const HTuple& Mode, const HTuple& DiffLowerBound, const HTuple& DiffUpperBound, const HTuple& GrayOffset, const HTuple& AddRow, const HTuple& AddCol) const
void CheckDifference(const HObject& Image, const HObject& Pattern, HObject* Selected, const HTuple& Mode, const HTuple& DiffLowerBound, const HTuple& DiffUpperBound, const HTuple& GrayOffset, const HTuple& AddRow, const HTuple& AddCol)
HRegion HImage::CheckDifference(const HImage& Pattern, const HString& Mode, Hlong DiffLowerBound, Hlong DiffUpperBound, Hlong GrayOffset, Hlong AddRow, Hlong AddCol) const
HRegion HImage::CheckDifference(const HImage& Pattern, const char* Mode, Hlong DiffLowerBound, Hlong DiffUpperBound, Hlong GrayOffset, Hlong AddRow, Hlong AddCol) const
void HOperatorSetX.CheckDifference(
[in] IHUntypedObjectX* Image, [in] IHUntypedObjectX* Pattern, [out] IHUntypedObjectX** Selected, [in] VARIANT Mode, [in] VARIANT DiffLowerBound, [in] VARIANT DiffUpperBound, [in] VARIANT GrayOffset, [in] VARIANT AddRow, [in] VARIANT AddCol)
IHRegionX* HImageX.CheckDifference(
[in] IHImageX* Pattern, [in] BSTR Mode, [in] Hlong DiffLowerBound, [in] Hlong DiffUpperBound, [in] Hlong GrayOffset, [in] Hlong AddRow, [in] Hlong AddCol)
static void HOperatorSet.CheckDifference(HObject image, HObject pattern, out HObject selected, HTuple mode, HTuple diffLowerBound, HTuple diffUpperBound, HTuple grayOffset, HTuple addRow, HTuple addCol)
HRegion HImage.CheckDifference(HImage pattern, string mode, int diffLowerBound, int diffUpperBound, int grayOffset, int addRow, int addCol)
check_differencecheck_differenceCheckDifferencecheck_differenceCheckDifferenceCheckDifference wählt aus dem Eingabebild die
Bildpunkte (g_{o} = g_{ImageImageImageImageImageimage}) aus, deren Grauwertabweichung
von den entsprechenden Pixel in PatternPatternPatternPatternPatternpattern abhängig vom
Parameter ModeModeModeModeModemode innerhalb bzw.
außerhalb des vorgegebenen Werteintervalls
[DiffLowerBoundDiffLowerBoundDiffLowerBoundDiffLowerBoundDiffLowerBounddiffLowerBound,DiffUpperBoundDiffUpperBoundDiffUpperBoundDiffUpperBoundDiffUpperBounddiffUpperBound]
liegt. Sei g_{p} der
Grauwert aus PatternPatternPatternPatternPatternpattern, der gegenüber g_{o} um den
Vektor (AddRowAddRowAddRowAddRowAddRowaddRow,AddColAddColAddColAddColAddColaddCol) verschoben ist.
Dann werden im Modus 'diff_inside' die Pixel g_{o} selektiert mit
und im Modus 'diff_outside' die g_{o} mit
g_o - g_p - GrayOffset < DiffLowerBound oder
g_o - g_p - GrayOffset > DiffUpperBound
Dieser Test wird für alle Bildpunkte aus dem Definitionsbereich von
ImageImageImageImageImageimage, geschnitten mit dem verschobenen
Definitionsbereich von PatternPatternPatternPatternPatternpattern, durchgeführt. Alle
Punkte, die die obige Bedingung erfüllen, werden in der
Ausgaberegion gespeichert. Die beiden Bilder können
unterschiedliche Größe haben. Typischerweise ist
PatternPatternPatternPatternPatternpattern kleiner als ImageImageImageImageImageimage.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
Punkte, in denen sich die Bilder ähneln/unterscheiden.
Modus: bestimme ähnliche oder verschiedene Pixel.
Defaultwert:
'diff_outside'
"diff_outside"
"diff_outside"
"diff_outside"
"diff_outside"
"diff_outside"
Wertevorschläge: 'diff_inside'"diff_inside""diff_inside""diff_inside""diff_inside""diff_inside", 'diff_outside'"diff_outside""diff_outside""diff_outside""diff_outside""diff_outside"
Untere Grenze der erlaubten Grauwertdifferenz.
Defaultwert: -5
Wertevorschläge: 0, -1, -2, -3, -5, -7, -10, -12, -15, -17, -20, -25, -30
Typischer Wertebereich: -255
≤
DiffLowerBound
DiffLowerBound
DiffLowerBound
DiffLowerBound
DiffLowerBound
diffLowerBound
≤
255 (lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 2
Restriktion: -255 <= DiffLowerBound && DiffLowerBound <= 255
Obere Grenze der erlaubten Grauwertdifferenz.
Defaultwert: 5
Wertevorschläge: 0, 1, 2, 3, 5, 7, 10, 12, 15, 17, 20, 25, 30
Typischer Wertebereich: -255
≤
DiffUpperBound
DiffUpperBound
DiffUpperBound
DiffUpperBound
DiffUpperBound
diffUpperBound
≤
255 (lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 2
Restriktion: -255 <= DiffUpperBound && DiffUpperBound <= 255
Korrekturgrauwert, der im Eingabebild abgezogen wird.
Defaultwert: 0
Wertevorschläge: -30, -25, -20, -17, -15, -12, -10, -7, -5, -3, -2, -1, 0, 1, 2, 3, 5, 7, 10, 12, 15, 17, 20, 25, 30
Typischer Wertebereich: -255
≤
GrayOffset
GrayOffset
GrayOffset
GrayOffset
GrayOffset
grayOffset
≤
255 (lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 2
Restriktion: -255 <= GrayOffset && GrayOffset <= 255
Zeilenkoordinate, um die das Vergleichsbild verschoben wird.
Defaultwert: 0
Wertevorschläge: -200, -100, -20, -10, 0, 10, 20, 100, 200
Typischer Wertebereich: -32000
≤
AddRow
AddRow
AddRow
AddRow
AddRow
addRow
≤
32000 (lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Spaltenkoordinate, um die das Vergleichsbild verschoben wird.
Defaultwert: 0
Wertevorschläge: -200, -100, -20, -10, 0, 10, 20, 100, 200
Typischer Wertebereich: -32000
≤
AddCol
AddCol
AddCol
AddCol
AddCol
addCol
≤
32000 (lin)
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Sei A die Anzahl der gültigen Pixel, dann ist die
Laufzeitkomplexität: O(A).
check_differencecheck_differenceCheckDifferencecheck_differenceCheckDifferenceCheckDifference liefert den Wert 2 (H_MSG_TRUE), falls die
Parameter korrekt sind. Für das Verhalten bzgl. der Eingabebilder
und Ausgaberegionen sind die Flags 'no_object_result'"no_object_result""no_object_result""no_object_result""no_object_result""no_object_result",
'empty_region_result'"empty_region_result""empty_region_result""empty_region_result""empty_region_result""empty_region_result" und 'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region""store_empty_region"
einstellbar (siehe set_systemset_systemSetSystemset_systemSetSystemSetSystem). Gegebenenfalls wird
eine Fehlerbehandlung durchgeführt.
connectionconnectionConnectionconnectionConnectionConnection,
select_shapeselect_shapeSelectShapeselect_shapeSelectShapeSelectShape,
reduce_domainreduce_domainReduceDomainreduce_domainReduceDomainReduceDomain,
select_grayselect_graySelectGrayselect_graySelectGraySelectGray,
rank_regionrank_regionRankRegionrank_regionRankRegionRankRegion,
dilation1dilation1Dilation1dilation1Dilation1Dilation1,
openingopeningOpeningopeningOpeningOpening
sub_imagesub_imageSubImagesub_imageSubImageSubImage,
dyn_thresholddyn_thresholdDynThresholddyn_thresholdDynThresholdDynThreshold
Foundation