check_differencecheck_differenceCheckDifferenceCheckDifferencecheck_difference检查差异(算子)

名称

check_differencecheck_differenceCheckDifferenceCheckDifferencecheck_difference — 逐像素比较两幅图像。

签名

check_difference(Image, Pattern : Selected : Mode, DiffLowerBound, DiffUpperBound, GrayOffset, AddRow, AddCol : )

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)

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

HRegion HImage::CheckDifference(const HImage& Pattern, const wchar_t* Mode, Hlong DiffLowerBound, Hlong DiffUpperBound, Hlong GrayOffset, Hlong AddRow, Hlong AddCol) const   ( Windows only)

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)

def check_difference(image: HObject, pattern: HObject, mode: str, diff_lower_bound: int, diff_upper_bound: int, gray_offset: int, add_row: int, add_col: int) -> HObject

描述

check_differencecheck_differenceCheckDifferenceCheckDifferenceCheckDifferencecheck_difference 从输入图像 ImageImageImageImageimageimage 中选取那些像素( ),其灰度值与 PatternPatternPatternPatternpatternpattern 中对应像素的差值位于区间 内(外)。PatternPatternPatternPatternpatternpattern 中的像素相对于 ImageImageImageImageimageimage 平移 步距。设 PatternPatternPatternPatternpatternpattern 中经 步距平移后相对于 的灰度值。

若所选模式 ModeModeModeModemodemode'diff_inside'"diff_inside""diff_inside""diff_inside""diff_inside""diff_inside",选取像素 ,当 若模式设置为 'diff_outside'"diff_outside""diff_outside""diff_outside""diff_outside""diff_outside", 选取像素 ,当 g_o - g_p - GrayOffset < DiffLowerBound or g_o - g_p - GrayOffset > DiffUpperBound. 此测试针对 ImageImageImageImageimageimage 图像域(区域)与平移后的 PatternPatternPatternPatternpatternpattern 图像域相交的所有点进行。所有满足上述条件的点均被聚合到输出区域中。两幅图像尺寸可能不同,通常 PatternPatternPatternPatternpatternpattern 小于 ImageImageImageImageimageimage

执行信息

参数

ImageImageImageImageimageimage (输入对象)  singlechannelimage(-array) objectHImageHObjectHImageHobject (byte)

输入图像。

PatternPatternPatternPatternpatternpattern (输入对象)  singlechannelimage(-array) objectHImageHObjectHImageHobject (byte)

对比图像。

SelectedSelectedSelectedSelectedselectedselected (输出对象)  region(-array) objectHRegionHObjectHRegionHobject *

两幅图像相似/不同之处。

ModeModeModeModemodemode (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

模式:返回相似的或不同的像素。

默认值: 'diff_outside' "diff_outside" "diff_outside" "diff_outside" "diff_outside" "diff_outside"

建议值: 'diff_inside'"diff_inside""diff_inside""diff_inside""diff_inside""diff_inside", 'diff_outside'"diff_outside""diff_outside""diff_outside""diff_outside""diff_outside"

DiffLowerBoundDiffLowerBoundDiffLowerBoundDiffLowerBounddiffLowerBounddiff_lower_bound (输入控制)  number HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

容许灰度值差异的下限值。

默认值: -5

建议值: 0, -1, -2, -3, -5, -7, -10, -12, -15, -17, -20, -25, -30

值范围: -255 ≤ DiffLowerBound DiffLowerBound DiffLowerBound DiffLowerBound diffLowerBound diff_lower_bound ≤ 255 (lin)

最小增量: 1

建议增量: 2

DiffUpperBoundDiffUpperBoundDiffUpperBoundDiffUpperBounddiffUpperBounddiff_upper_bound (输入控制)  number HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

容许灰度值差异的上限。

默认值: 5

建议值: 0, 1, 2, 3, 5, 7, 10, 12, 15, 17, 20, 25, 30

值范围: -255 ≤ DiffUpperBound DiffUpperBound DiffUpperBound DiffUpperBound diffUpperBound diff_upper_bound ≤ 255 (lin)

最小增量: 1

建议增量: 2

GrayOffsetGrayOffsetGrayOffsetGrayOffsetgrayOffsetgray_offset (输入控制)  number HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

从输入图像中减去的偏移灰度值。

默认值: 0

建议值: -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

值范围: -255 ≤ GrayOffset GrayOffset GrayOffset GrayOffset grayOffset gray_offset ≤ 255 (lin)

最小增量: 1

建议增量: 2

AddRowAddRowAddRowAddRowaddRowadd_row (输入控制)  point.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

用于平移比较图像的行坐标。

默认值: 0

建议值: -200, -100, -20, -10, 0, 10, 20, 100, 200

值范围: -32000 ≤ AddRow AddRow AddRow AddRow addRow add_row ≤ 32000 (lin)

最小增量: 1

建议增量: 1

AddColAddColAddColAddColaddColadd_col (输入控制)  point.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

用于平移比较图像的列坐标。

默认值: 0

建议值: -200, -100, -20, -10, 0, 10, 20, 100, 200

值范围: -32000 ≤ AddCol AddCol AddCol AddCol addCol add_col ≤ 32000 (lin)

最小增量: 1

建议增量: 1

复杂度

为有效像素的数量。则运行时间复杂度为

结果

check_differencecheck_differenceCheckDifferenceCheckDifferenceCheckDifferencecheck_difference 在所有参数正确时返回 2 (H_MSG_TRUE)。通过 set_systemset_systemSetSystemSetSystemSetSystemset_system 算子设置标志 '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"'store_empty_region'"store_empty_region""store_empty_region""store_empty_region""store_empty_region""store_empty_region" 的值,可确定系统对输入图像和输出区域的行为方式。如有必要,则抛出异常。

可能的后继

connectionconnectionConnectionConnectionConnectionconnection, select_shapeselect_shapeSelectShapeSelectShapeSelectShapeselect_shape, reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain, select_grayselect_graySelectGraySelectGraySelectGrayselect_gray, rank_regionrank_regionRankRegionRankRegionRankRegionrank_region, dilation1dilation1Dilation1Dilation1Dilation1dilation1, openingopeningOpeningOpeningOpeningopening

替代

sub_imagesub_imageSubImageSubImageSubImagesub_image, dyn_thresholddyn_thresholdDynThresholdDynThresholdDynThresholddyn_threshold

模块

基础