zw版_Halcon图像库delphi接口文件

Halcon图像库delphi接口文件,根据安装时用户设置的文件目录不同,会有所差异,笔者一般安装在delphi的import目录下。
     参见:《zw版·全程图解Halcon控件安装(delphi版)》,http://www.cnblogs.com/ziwang/p/4850958.html


     安装成功后,import目录下,会有一个文件:HALCONXLib_TLB.pas,大约3900k,
     这个文件,就是Halcon图像库的delphi接口文件,纯delphi源码,7w多行,近4M,挺大的,光THImageX一个图像类,就有数百个函数。
     为方便未安装Halcon图像库的用户,学习参考,特提供相关源码,和下载:
     http://files.cnblogs.com/files/ziwang/HALCONXLib_TLB.zip

【zw版《delphi与halcon系列原创教程》,网址,cnblogs.com/ziwang/】

全部相关源码7w多行,太大,无法上传,只发布其中最重要的 THImageX 类代码,其他自己下载分析:

   1 // *********************************************************************//
   2 // OLE Server Proxy class declaration
   3 // Server Object    : THImageX
   4 // Help String      : Represents an instance of an image object(-array).
   5 // Default Interface: IHImageX
   6 // Def. Intf. DISP? : No
   7 // Event   Interface:
   8 // TypeFlags        : (2) CanCreate
   9 // *********************************************************************//
  10 {$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
  11   THImageXProperties= class;
  12 {$ENDIF}
  13   THImageX = class(TOleServer)
  14   private
  15     FIntf: IHImageX;
  16 {$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
  17     FProps: THImageXProperties;
  18     function GetServerProperties: THImageXProperties;
  19 {$ENDIF}
  20     function GetDefaultInterface: IHImageX;
  21   protected
  22     procedure InitServerData; override;
  23   public
  24     constructor Create(AOwner: TComponent); override;
  25     destructor  Destroy; override;
  26     procedure Connect; override;
  27     procedure ConnectTo(svrIntf: IHImageX);
  28     procedure Disconnect; override;
  29     function WienerFilterNi(const Psf: IHImageX; const NoiseRegion: IHRegionX; MaskWidth: Integer;
  30                             MaskHeight: Integer): IHImageX;
  31     function WienerFilter(const Psf: IHImageX; const FilteredImage: IHImageX): IHImageX;
  32     procedure GenPsfMotion(PSFwidth: Integer; PSFheight: Integer; Blurring: Double; Angle: Integer;
  33                            Type_: Integer);
  34     function SimulateMotion(Blurring: Double; Angle: Integer; Type_: Integer): IHImageX;
  35     procedure GenPsfDefocus(PSFwidth: Integer; PSFheight: Integer; Blurring: Double);
  36     function SimulateDefocus(Blurring: Double): IHImageX;
  37     function CompareExtVariationModel(const ModelID: IHVariationModelX; const Mode: WideString): IHRegionX;
  38     function CompareVariationModel(const ModelID: IHVariationModelX): IHRegionX;
  39     procedure TrainVariationModel(const ModelID: IHVariationModelX);
  40     function ProjMatchPointsDistortionRansacGuided(const Image2: IHImageX; Rows1: OleVariant;
  41                                                    Cols1: OleVariant; Rows2: OleVariant;
  42                                                    Cols2: OleVariant;
  43                                                    const GrayMatchMethod: WideString;
  44                                                    MaskSize: Integer;
  45                                                    const HomMat2dGuide: IHHomMat2DX;
  46                                                    KappaGuide: Double; DistanceTolerance: Double;
  47                                                    MatchThreshold: OleVariant;
  48                                                    const EstimationMethod: WideString;
  49                                                    DistanceThreshold: OleVariant;
  50                                                    RandSeed: Integer; out Kappa: Double;
  51                                                    out Error: Double; out Points1: OleVariant;
  52                                                    out Points2: OleVariant): IHHomMat2DX;
  53     function ProjMatchPointsDistortionRansac(const Image2: IHImageX; Rows1: OleVariant;
  54                                              Cols1: OleVariant; Rows2: OleVariant;
  55                                              Cols2: OleVariant; const GrayMatchMethod: WideString;
  56                                              MaskSize: Integer; RowMove: Integer; ColMove: Integer;
  57                                              RowTolerance: Integer; ColTolerance: Integer;
  58                                              Rotation: OleVariant; MatchThreshold: OleVariant;
  59                                              const EstimationMethod: WideString;
  60                                              DistanceThreshold: OleVariant; RandSeed: Integer;
  61                                              out Kappa: Double; out Error: Double;
  62                                              out Points1: OleVariant; out Points2: OleVariant): IHHomMat2DX;
  63     function ProjMatchPointsRansacGuided(const Image2: IHImageX; Rows1: OleVariant;
  64                                          Cols1: OleVariant; Rows2: OleVariant; Cols2: OleVariant;
  65                                          const GrayMatchMethod: WideString; MaskSize: Integer;
  66                                          const HomMat2dGuide: IHHomMat2DX;
  67                                          DistanceTolerance: Double; MatchThreshold: OleVariant;
  68                                          const EstimationMethod: WideString;
  69                                          DistanceThreshold: Double; RandSeed: Integer;
  70                                          out Points1: OleVariant; out Points2: OleVariant): IHHomMat2DX;
  71     function ProjMatchPointsRansac(const Image2: IHImageX; Rows1: OleVariant; Cols1: OleVariant;
  72                                    Rows2: OleVariant; Cols2: OleVariant;
  73                                    const GrayMatchMethod: WideString; MaskSize: Integer;
  74                                    RowMove: Integer; ColMove: Integer; RowTolerance: Integer;
  75                                    ColTolerance: Integer; Rotation: OleVariant;
  76                                    MatchThreshold: OleVariant; const EstimationMethod: WideString;
  77                                    DistanceThreshold: Double; RandSeed: Integer;
  78                                    out Points1: OleVariant; out Points2: OleVariant): IHHomMat2DX;
  79     procedure ReceiveImage(const Socket: IHSocketX);
  80     procedure SendImage(const Socket: IHSocketX);
  81     function BinocularDistanceMg(const Image2: IHImageX; out Score: IHImageX;
  82                                  CamParamRect1: OleVariant; CamParamRect2: OleVariant;
  83                                  RelPoseRect: OleVariant; GrayConstancy: Double;
  84                                  GradientConstancy: Double; Smoothness: Double;
  85                                  InitialGuess: Double; const CalculateScore: WideString;
  86                                  MGParamName: OleVariant; MGParamValue: OleVariant): IHImageX;
  87     function BinocularDisparityMg(const Image2: IHImageX; out Score: IHImageX;
  88                                   GrayConstancy: Double; GradientConstancy: Double;
  89                                   Smoothness: Double; InitialGuess: Double;
  90                                   const CalculateScore: WideString; MGParamName: OleVariant;
  91                                   MGParamValue: OleVariant): IHImageX;
  92     function GenBinocularProjRectification(const FMatrix: IHHomMat2DX; CovFMat: OleVariant;
  93                                            Width1: Integer; Height1: Integer; Width2: Integer;
  94                                            Height2: Integer; SubSampling: OleVariant;
  95                                            const Mapping: WideString; out CovFMatRect: OleVariant;
  96                                            out H1: IHHomMat2DX; out H2: IHHomMat2DX): IHImageX;
  97     function MatchFundamentalMatrixDistortionRansac(const Image2: IHImageX; Rows1: OleVariant;
  98                                                     Cols1: OleVariant; Rows2: OleVariant;
  99                                                     Cols2: OleVariant;
 100                                                     const GrayMatchMethod: WideString;
 101                                                     MaskSize: Integer; RowMove: Integer;
 102                                                     ColMove: Integer; RowTolerance: Integer;
 103                                                     ColTolerance: Integer; Rotation: OleVariant;
 104                                                     MatchThreshold: OleVariant;
 105                                                     const EstimationMethod: WideString;
 106                                                     DistanceThreshold: OleVariant;
 107                                                     RandSeed: Integer; out Kappa: Double;
 108                                                     out Error: Double; out Points1: OleVariant;
 109                                                     out Points2: OleVariant): IHHomMat2DX;
 110     function MatchRelPoseRansac(const Image2: IHImageX; Rows1: OleVariant; Cols1: OleVariant;
 111                                 Rows2: OleVariant; Cols2: OleVariant; CamPar1: OleVariant;
 112                                 CamPar2: OleVariant; const GrayMatchMethod: WideString;
 113                                 MaskSize: Integer; RowMove: Integer; ColMove: Integer;
 114                                 RowTolerance: Integer; ColTolerance: Integer; Rotation: OleVariant;
 115                                 MatchThreshold: OleVariant; const EstimationMethod: WideString;
 116                                 DistanceThreshold: OleVariant; RandSeed: Integer;
 117                                 out CovRelPose: OleVariant; out Error: OleVariant;
 118                                 out Points1: OleVariant; out Points2: OleVariant): OleVariant;
 119     function MatchEssentialMatrixRansac(const Image2: IHImageX; Rows1: OleVariant;
 120                                         Cols1: OleVariant; Rows2: OleVariant; Cols2: OleVariant;
 121                                         const CamMat1: IHHomMat2DX; const CamMat2: IHHomMat2DX;
 122                                         const GrayMatchMethod: WideString; MaskSize: Integer;
 123                                         RowMove: Integer; ColMove: Integer; RowTolerance: Integer;
 124                                         ColTolerance: Integer; Rotation: OleVariant;
 125                                         MatchThreshold: OleVariant;
 126                                         const EstimationMethod: WideString;
 127                                         DistanceThreshold: OleVariant; RandSeed: Integer;
 128                                         out CovEMat: OleVariant; out Error: OleVariant;
 129                                         out Points1: OleVariant; out Points2: OleVariant): IHHomMat2DX;
 130     function MatchFundamentalMatrixRansac(const Image2: IHImageX; Rows1: OleVariant;
 131                                           Cols1: OleVariant; Rows2: OleVariant; Cols2: OleVariant;
 132                                           const GrayMatchMethod: WideString; MaskSize: Integer;
 133                                           RowMove: Integer; ColMove: Integer;
 134                                           RowTolerance: Integer; ColTolerance: Integer;
 135                                           Rotation: OleVariant; MatchThreshold: OleVariant;
 136                                           const EstimationMethod: WideString;
 137                                           DistanceThreshold: OleVariant; RandSeed: Integer;
 138                                           out CovFMat: OleVariant; out Error: Double;
 139                                           out Points1: OleVariant; out Points2: OleVariant): IHHomMat2DX;
 140     function BinocularDistance(const Image2: IHImageX; out Score: IHImageX;
 141                                CamParamRect1: OleVariant; CamParamRect2: OleVariant;
 142                                RelPoseRect: OleVariant; const Method: WideString;
 143                                MaskWidth: Integer; MaskHeight: Integer; TextureThresh: OleVariant;
 144                                MinDisparity: Integer; MaxDisparity: Integer; NumLevels: Integer;
 145                                ScoreThresh: OleVariant; Filter: OleVariant; SubDistance: OleVariant): IHImageX;
 146     function BinocularDisparity(const Image2: IHImageX; out Score: IHImageX;
 147                                 const Method: WideString; MaskWidth: Integer; MaskHeight: Integer;
 148                                 TextureThresh: OleVariant; MinDisparity: Integer;
 149                                 MaxDisparity: Integer; NumLevels: Integer; ScoreThresh: OleVariant;
 150                                 Filter: OleVariant; const SubDisparity: WideString): IHImageX;
 151     function GenBinocularRectificationMap(CamParam1: OleVariant; CamParam2: OleVariant;
 152                                           RelPose: OleVariant; SubSampling: Double;
 153                                           const Method: WideString; const MapType: WideString;
 154                                           out CamParamRect1: OleVariant;
 155                                           out CamParamRect2: OleVariant;
 156                                           out CamPoseRect1: OleVariant;
 157                                           out CamPoseRect2: OleVariant; out RelPoseRect: OleVariant): IHImageX;
 158     procedure GetSheetOfLightResult(const SheetOfLightModelID: IHSheetOfLightModelX;
 159                                     ResultName: OleVariant);
 160     procedure ApplySheetOfLightCalibration(const SheetOfLightModelID: IHSheetOfLightModelX);
 161     procedure SetProfileSheetOfLight(const SheetOfLightModelID: IHSheetOfLightModelX;
 162                                      MovementPoses: OleVariant);
 163     procedure MeasureProfileSheetOfLight(const SheetOfLightModelID: IHSheetOfLightModelX;
 164                                          MovementPose: OleVariant);
 165     function ShadeHeightField(Slant: OleVariant; Tilt: OleVariant; Albedo: OleVariant;
 166                               Ambient: OleVariant; const Shadows: WideString): IHImageX;
 167     function EstimateAlAm(out Ambient: OleVariant): OleVariant;
 168     function EstimateSlAlZc(out Albedo: OleVariant): OleVariant;
 169     function EstimateSlAlLr(out Albedo: OleVariant): OleVariant;
 170     function EstimateTiltZc: OleVariant;
 171     function EstimateTiltLr: OleVariant;
 172     function PhotStereo(Slants: OleVariant; Tilts: OleVariant): IHImageX;
 173     function ReconstructHeightFieldFromGradient(const ReconstructionMethod: WideString;
 174                                                 GenParamName: OleVariant; GenParamValue: OleVariant): IHImageX;
 175     function PhotometricStereo(out Gradient: IHImageX; out Albedo: IHImageX; Slants: OleVariant;
 176                                Tilts: OleVariant; ResultType: OleVariant;
 177                                const ReconstructionMethod: WideString; GenParamName: OleVariant;
 178                                GenParamValue: OleVariant): IHImageX;
 179     function SfsPentland(Slant: OleVariant; Tilt: OleVariant; Albedo: OleVariant;
 180                          Ambient: OleVariant): IHImageX;
 181     function SfsOrigLr(Slant: OleVariant; Tilt: OleVariant; Albedo: OleVariant; Ambient: OleVariant): IHImageX;
 182     function SfsModLr(Slant: OleVariant; Tilt: OleVariant; Albedo: OleVariant; Ambient: OleVariant): IHImageX;
 183     function FindText(const TextModel: IHTextModelX): IHTextResultX;
 184     function ClassifyImageClassLut(const ClassLUTHandle: IHClassLUTX): IHRegionX;
 185     function ClassifyImageClassKnn(out DistanceImage: IHImageX; const KNNHandle: IHClassKnnX;
 186                                    RejectionThreshold: Double): IHRegionX;
 187     procedure AddSamplesImageClassKnn(const ClassRegions: IHRegionX; const KNNHandle: IHClassKnnX);
 188     function ClassifyImageClassGmm(const GMMHandle: IHClassGmmX; RejectionThreshold: Double): IHRegionX;
 189     procedure AddSamplesImageClassGmm(const ClassRegions: IHRegionX; const GMMHandle: IHClassGmmX;
 190                                       Randomize: Double);
 191     function ClassifyImageClassSvm(const SVMHandle: IHClassSvmX): IHRegionX;
 192     procedure AddSamplesImageClassSvm(const ClassRegions: IHRegionX; const SVMHandle: IHClassSvmX);
 193     function ClassifyImageClassMlp(const MLPHandle: IHClassMlpX; RejectionThreshold: Double): IHRegionX;
 194     procedure AddSamplesImageClassMlp(const ClassRegions: IHRegionX; const MLPHandle: IHClassMlpX);
 195     function LearnNdimNorm(const Foreground: IHRegionX; const Background: IHRegionX;
 196                            const Metric: WideString; Distance: OleVariant;
 197                            MinNumberPercent: OleVariant; out Center: OleVariant; out Quality: Double): OleVariant;
 198     procedure LearnNdimBox(const Foreground: IHRegionX; const Background: IHRegionX;
 199                            const ClassifHandle: IHClassBoxX);
 200     function ClassNdimBox(const ClassifHandle: IHClassBoxX): IHRegionX;
 201     function ClassNdimNorm(const Metric: WideString; const SingleMultiple: WideString;
 202                            Radius: OleVariant; Center: OleVariant): IHRegionX;
 203     function Class2DimSup(const ImageRow: IHImageX; const FeatureSpace: IHRegionX): IHRegionX;
 204     function Class2DimUnsup(const Image2: IHImageX; Threshold: Integer; NumClasses: Integer): IHRegionX;
 205     function CheckDifference(const Pattern: IHImageX; const Mode: WideString;
 206                              DiffLowerBound: Integer; DiffUpperBound: Integer; GrayOffset: Integer;
 207                              AddRow: Integer; AddCol: Integer): IHRegionX;
 208     function CharThreshold(const HistoRegion: IHRegionX; Sigma: Double; Percent: OleVariant;
 209                            out Threshold: OleVariant): IHRegionX;
 210     function LabelToRegion: IHRegionX;
 211     function NonmaxSuppressionAmp(const Mode: WideString): IHImageX;
 212     function NonmaxSuppressionDir(const ImgDir: IHImageX; const Mode: WideString): IHImageX;
 213     function HysteresisThreshold(Low: OleVariant; High: OleVariant; MaxLength: Integer): IHRegionX;
 214     function VarThreshold(MaskWidth: Integer; MaskHeight: Integer; StdDevScale: OleVariant;
 215                           AbsThreshold: OleVariant; const LightDark: WideString): IHRegionX;
 216     function DynThreshold(const ThresholdImage: IHImageX; Offset: OleVariant;
 217                           const LightDark: WideString): IHRegionX;
 218     function Threshold(MinGray: OleVariant; MaxGray: OleVariant): IHRegionX;
 219     function ThresholdSubPix(Threshold: OleVariant): IHXLDContX;
 220     function RegiongrowingN(const Metric: WideString; MinTolerance: OleVariant;
 221                             MaxTolerance: OleVariant; MinSize: Integer): IHRegionX;
 222     function Regiongrowing(Row: Integer; Column: Integer; Tolerance: OleVariant; MinSize: Integer): IHRegionX;
 223     function RegiongrowingMean(StartRows: OleVariant; StartColumns: OleVariant; Tolerance: Double;
 224                                MinSize: Integer): IHRegionX;
 225     function Pouring(const Mode: WideString; MinGray: Integer; MaxGray: Integer): IHRegionX;
 226     function WatershedsThreshold(Threshold: OleVariant): IHRegionX;
 227     function Watersheds(out Watersheds: IHRegionX): IHRegionX;
 228     function ZeroCrossing: IHRegionX;
 229     function ZeroCrossingSubPix: IHXLDContX;
 230     function DualThreshold(MinSize: Integer; MinGray: Double; Threshold: Double): IHRegionX;
 231     function ExpandLine(Coordinate: Integer; const ExpandType: WideString;
 232                         const RowColumn: WideString; Threshold: OleVariant): IHRegionX;
 233     function LocalMin: IHRegionX;
 234     function Lowlands: IHRegionX;
 235     function LowlandsCenter: IHRegionX;
 236     function LocalMax: IHRegionX;
 237     function Plateaus: IHRegionX;
 238     function PlateausCenter: IHRegionX;
 239     function AutoThreshold(Sigma: OleVariant): IHRegionX;
 240     function BinThreshold: IHRegionX;
 241     function FastThreshold(MinGray: OleVariant; MaxGray: OleVariant; MinSize: Integer): IHRegionX;
 242     function ExpandGray(const Regions: IHRegionX; const ForbiddenArea: IHRegionX;
 243                         Iterations: OleVariant; const Mode: WideString; Threshold: OleVariant): IHRegionX;
 244     function ExpandGrayRef(const Regions: IHRegionX; const ForbiddenArea: IHRegionX;
 245                            Iterations: OleVariant; const Mode: WideString; RefGray: OleVariant;
 246                            Threshold: OleVariant): IHRegionX;
 247     function ObjDiff(const ObjectsSub: IHImageX): IHImageX;
 248     procedure SetGrayval(Row: OleVariant; Column: OleVariant; Grayval: OleVariant);
 249     function PaintXld(const XLD: IHXLDX; Grayval: OleVariant): IHImageX;
 250     function PaintRegion(const Region: IHRegionX; Grayval: OleVariant; const Type_: WideString): IHImageX;
 251     procedure OverpaintRegion(const Region: IHRegionX; Grayval: OleVariant; const Type_: WideString);
 252     function GenImageProto(Grayval: OleVariant): IHImageX;
 253     function PaintGray(const ImageDestination: IHImageX): IHImageX;
 254     procedure OverpaintGray(const ImageSource: IHImageX);
 255     procedure IntegerToObj(SurrogateTuple: OleVariant);
 256     function ObjToInteger(Index: Integer; Number: Integer): OleVariant;
 257     function CopyObj(Index: Integer; NumObj: Integer): IHImageX;
 258     function ConcatObj(const Objects2: IHImageX): IHImageX;
 259     function CopyImage: IHImageX;
 260     function SelectObj(Index: OleVariant): IHImageX;
 261     function TestEqualObj(const Objects2: IHImageX): Integer;
 262     function CountObj: Integer;
 263     function GetChannelInfo(const Request: WideString; Channel: OleVariant): OleVariant;
 264     function GetObjClass: OleVariant;
 265     procedure GenImageInterleaved(PixelPointer: Integer; const ColorFormat: WideString;
 266                                   OriginalWidth: Integer; OriginalHeight: Integer;
 267                                   Alignment: Integer; const Type_: WideString; ImageWidth: Integer;
 268                                   ImageHeight: Integer; StartRow: Integer; StartColumn: Integer;
 269                                   BitsPerChannel: Integer; BitShift: Integer);
 270     procedure GenImage3(const Type_: WideString; Width: Integer; Height: Integer;
 271                         PixelPointerRed: Integer; PixelPointerGreen: Integer;
 272                         PixelPointerBlue: Integer);
 273     procedure GenImage1(const Type_: WideString; Width: Integer; Height: Integer;
 274                         PixelPointer: Integer);
 275     procedure GenImageConst(const Type_: WideString; Width: Integer; Height: Integer);
 276     procedure GenEmptyObj;
 277     procedure GenImageGrayRamp(Alpha: Double; Beta: Double; Mean: Double; Row: Integer;
 278                                Column: Integer; Width: Integer; Height: Integer);
 279     procedure GenImage3Extern(const Type_: WideString; Width: Integer; Height: Integer;
 280                               PointerRed: Integer; PointerGreen: Integer; PointerBlue: Integer;
 281                               ClearProc: Integer);
 282     procedure GenImage1Extern(const Type_: WideString; Width: Integer; Height: Integer;
 283                               PixelPointer: Integer; ClearProc: Integer);
 284     procedure GenImage1Rect(PixelPointer: Integer; Width: Integer; Height: Integer;
 285                             VerticalPitch: Integer; HorizontalBitPitch: Integer;
 286                             BitsPerPixel: Integer; const DoCopy: WideString; ClearProc: Integer);
 287     function GetImagePointer1Rect(out Width: Integer; out Height: Integer;
 288                                   out VerticalPitch: Integer; out HorizontalBitPitch: Integer;
 289                                   out BitsPerPixel: Integer): Integer;
 290     function GetImagePointer3(out PointerGreen: OleVariant; out PointerBlue: OleVariant;
 291                               out Type_: OleVariant; out Width: OleVariant; out Height: OleVariant): OleVariant;
 292     function GetImagePointer1(out Type_: OleVariant; out Width: OleVariant; out Height: OleVariant): OleVariant;
 293     function GetImageType: OleVariant;
 294     function GetImageSize(out Height: OleVariant): OleVariant;
 295     function GetImageTime(out Second: Integer; out Minute: Integer; out Hour: Integer;
 296                           out Day: Integer; out YDay: Integer; out Month: Integer; out Year: Integer): Integer;
 297     function GetGrayvalInterpolated(Row: OleVariant; Column: OleVariant;
 298                                     const Interpolation: WideString): OleVariant;
 299     function GetGrayval(Row: OleVariant; Column: OleVariant): OleVariant;
 300     function DoOcvSimple(const OCVHandle: IHOCVX; PatternName: OleVariant;
 301                          const AdaptPos: WideString; const AdaptSize: WideString;
 302                          const AdaptAngle: WideString; const AdaptGray: WideString;
 303                          Threshold: Double): OleVariant;
 304     procedure TraindOcvProj(const OCVHandle: IHOCVX; Name: OleVariant; const Mode: WideString);
 305     function GetFeaturesOcrClassKnn(const OCRHandle: IHOCRKnnX; const Transform: WideString): OleVariant;
 306     function GetFeaturesOcrClassSvm(const OCRHandle: IHOCRSvmX; const Transform: WideString): OleVariant;
 307     function GetFeaturesOcrClassMlp(const OCRHandle: IHOCRMlpX; const Transform: WideString): OleVariant;
 308     function CropDomainRel(Top: Integer; Left: Integer; Bottom: Integer; Right: Integer): IHImageX;
 309     function OcrGetFeatures(const OCRHandle: IHOCRBoxX): OleVariant;
 310     procedure WriteOcrTrainfImage(Class_: OleVariant; const TrainingFile: WideString);
 311     function ReadOcrTrainfSelect(TrainingFile: OleVariant; SearchNames: OleVariant): OleVariant;
 312     function ReadOcrTrainf(TrainingFile: OleVariant): OleVariant;
 313     function GrayBothat(const SE: IHImageX): IHImageX;
 314     function GrayTophat(const SE: IHImageX): IHImageX;
 315     function GrayClosing(const SE: IHImageX): IHImageX;
 316     function GrayOpening(const SE: IHImageX): IHImageX;
 317     function GrayDilation(const SE: IHImageX): IHImageX;
 318     function GrayErosion(const SE: IHImageX): IHImageX;
 319     procedure ReadGraySe(const FileName: WideString);
 320     procedure GenDiscSe(const Type_: WideString; Width: Integer; Height: Integer; Smax: OleVariant);
 321     function MeasureThresh(const MeasureHandle: IHMeasureX; Sigma: Double; Threshold: Double;
 322                            const Select: WideString; out ColumnThresh: OleVariant;
 323                            out Distance: OleVariant): OleVariant;
 324     function MeasureProjection(const MeasureHandle: IHMeasureX): OleVariant;
 325     function FuzzyMeasurePairing(const MeasureHandle: IHMeasureX; Sigma: Double; AmpThresh: Double;
 326                                  FuzzyThresh: Double; const Transition: WideString;
 327                                  const Pairing: WideString; NumPairs: Integer;
 328                                  out ColumnEdgeFirst: OleVariant; out AmplitudeFirst: OleVariant;
 329                                  out RowEdgeSecond: OleVariant; out ColumnEdgeSecond: OleVariant;
 330                                  out AmplitudeSecond: OleVariant; out RowPairCenter: OleVariant;
 331                                  out ColumnPairCenter: OleVariant; out FuzzyScore: OleVariant;
 332                                  out IntraDistance: OleVariant): OleVariant;
 333     function FuzzyMeasurePairs(const MeasureHandle: IHMeasureX; Sigma: Double; AmpThresh: Double;
 334                                FuzzyThresh: Double; const Transition: WideString;
 335                                out ColumnEdgeFirst: OleVariant; out AmplitudeFirst: OleVariant;
 336                                out RowEdgeSecond: OleVariant; out ColumnEdgeSecond: OleVariant;
 337                                out AmplitudeSecond: OleVariant; out RowEdgeCenter: OleVariant;
 338                                out ColumnEdgeCenter: OleVariant; out FuzzyScore: OleVariant;
 339                                out IntraDistance: OleVariant; out InterDistance: OleVariant): OleVariant;
 340     function FuzzyMeasurePos(const MeasureHandle: IHMeasureX; Sigma: Double; AmpThresh: Double;
 341                              FuzzyThresh: Double; const Transition: WideString;
 342                              out ColumnEdge: OleVariant; out Amplitude: OleVariant;
 343                              out FuzzyScore: OleVariant; out Distance: OleVariant): OleVariant;
 344     function MeasurePairs(const MeasureHandle: IHMeasureX; Sigma: Double; Threshold: Double;
 345                           const Transition: WideString; const Select: WideString;
 346                           out ColumnEdgeFirst: OleVariant; out AmplitudeFirst: OleVariant;
 347                           out RowEdgeSecond: OleVariant; out ColumnEdgeSecond: OleVariant;
 348                           out AmplitudeSecond: OleVariant; out IntraDistance: OleVariant;
 349                           out InterDistance: OleVariant): OleVariant;
 350     function MeasurePos(const MeasureHandle: IHMeasureX; Sigma: Double; Threshold: Double;
 351                         const Transition: WideString; const Select: WideString;
 352                         out ColumnEdge: OleVariant; out Amplitude: OleVariant;
 353                         out Distance: OleVariant): OleVariant;
 354     function ApplySampleIdentifier(const SampleIdentifier: IHSampleIdentifierX;
 355                                    NumResults: Integer; RatingThreshold: Double;
 356                                    GenParamName: OleVariant; GenParamValue: OleVariant;
 357                                    out Rating: OleVariant): OleVariant;
 358     function AddSampleIdentifierTrainingData(const SampleIdentifier: IHSampleIdentifierX;
 359                                              ObjectIdx: OleVariant; GenParamName: OleVariant;
 360                                              GenParamValue: OleVariant): Integer;
 361     function AddSampleIdentifierPreparationData(const SampleIdentifier: IHSampleIdentifierX;
 362                                                 ObjectIdx: OleVariant; GenParamName: OleVariant;
 363                                                 GenParamValue: OleVariant): Integer;
 364     function DetermineShapeModelParams(NumLevels: OleVariant; AngleStart: Double;
 365                                        AngleExtent: Double; ScaleMin: OleVariant;
 366                                        ScaleMax: OleVariant; const Optimization: WideString;
 367                                        const Metric: WideString; Contrast: OleVariant;
 368                                        MinContrast: OleVariant; Parameters: OleVariant;
 369                                        out ParameterValue: OleVariant): OleVariant;
 370     function FindAnisoShapeModels(const ModelIDs: IHShapeModelX; AngleStart: OleVariant;
 371                                   AngleExtent: OleVariant; ScaleRMin: OleVariant;
 372                                   ScaleRMax: OleVariant; ScaleCMin: OleVariant;
 373                                   ScaleCMax: OleVariant; MinScore: OleVariant;
 374                                   NumMatches: OleVariant; MaxOverlap: OleVariant;
 375                                   SubPixel: OleVariant; NumLevels: OleVariant;
 376                                   Greediness: OleVariant; out Column: OleVariant;
 377                                   out Angle: OleVariant; out ScaleR: OleVariant;
 378                                   out ScaleC: OleVariant; out Score: OleVariant;
 379                                   out Model: OleVariant): OleVariant;
 380     function FindScaledShapeModels(const ModelIDs: IHShapeModelX; AngleStart: OleVariant;
 381                                    AngleExtent: OleVariant; ScaleMin: OleVariant;
 382                                    ScaleMax: OleVariant; MinScore: OleVariant;
 383                                    NumMatches: OleVariant; MaxOverlap: OleVariant;
 384                                    SubPixel: OleVariant; NumLevels: OleVariant;
 385                                    Greediness: OleVariant; out Column: OleVariant;
 386                                    out Angle: OleVariant; out Scale: OleVariant;
 387                                    out Score: OleVariant; out Model: OleVariant): OleVariant;
 388     function FindShapeModels(const ModelIDs: IHShapeModelX; AngleStart: OleVariant;
 389                              AngleExtent: OleVariant; MinScore: OleVariant; NumMatches: OleVariant;
 390                              MaxOverlap: OleVariant; SubPixel: OleVariant; NumLevels: OleVariant;
 391                              Greediness: OleVariant; out Column: OleVariant; out Angle: OleVariant;
 392                              out Score: OleVariant; out Model: OleVariant): OleVariant;
 393     function FindAnisoShapeModel(const ModelID: IHShapeModelX; AngleStart: Double;
 394                                  AngleExtent: Double; ScaleRMin: Double; ScaleRMax: Double;
 395                                  ScaleCMin: Double; ScaleCMax: Double; MinScore: Double;
 396                                  NumMatches: Integer; MaxOverlap: Double; SubPixel: OleVariant;
 397                                  NumLevels: OleVariant; Greediness: Double; out Column: OleVariant;
 398                                  out Angle: OleVariant; out ScaleR: OleVariant;
 399                                  out ScaleC: OleVariant; out Score: OleVariant): OleVariant;
 400     function FindScaledShapeModel(const ModelID: IHShapeModelX; AngleStart: Double;
 401                                   AngleExtent: Double; ScaleMin: Double; ScaleMax: Double;
 402                                   MinScore: Double; NumMatches: Integer; MaxOverlap: Double;
 403                                   SubPixel: OleVariant; NumLevels: OleVariant; Greediness: Double;
 404                                   out Column: OleVariant; out Angle: OleVariant;
 405                                   out Scale: OleVariant; out Score: OleVariant): OleVariant;
 406     function FindShapeModel(const ModelID: IHShapeModelX; AngleStart: Double; AngleExtent: Double;
 407                             MinScore: Double; NumMatches: Integer; MaxOverlap: Double;
 408                             SubPixel: OleVariant; NumLevels: OleVariant; Greediness: Double;
 409                             out Column: OleVariant; out Angle: OleVariant; out Score: OleVariant): OleVariant;
 410     procedure SetShapeModelMetric(const ModelID: IHShapeModelX; const HomMat2d: IHHomMat2DX;
 411                                   const Metric: WideString);
 412     procedure SetShapeModelParam(const ModelID: IHShapeModelX; GenParamNames: OleVariant;
 413                                  GenParamValues: OleVariant);
 414     function CreateAnisoShapeModel(NumLevels: OleVariant; AngleStart: Double; AngleExtent: Double;
 415                                    AngleStep: OleVariant; ScaleRMin: Double; ScaleRMax: Double;
 416                                    ScaleRStep: OleVariant; ScaleCMin: Double; ScaleCMax: Double;
 417                                    ScaleCStep: OleVariant; Optimization: OleVariant;
 418                                    const Metric: WideString; Contrast: OleVariant;
 419                                    MinContrast: OleVariant): IHShapeModelX;
 420     function CreateScaledShapeModel(NumLevels: OleVariant; AngleStart: Double; AngleExtent: Double;
 421                                     AngleStep: OleVariant; ScaleMin: Double; ScaleMax: Double;
 422                                     ScaleStep: OleVariant; Optimization: OleVariant;
 423                                     const Metric: WideString; Contrast: OleVariant;
 424                                     MinContrast: OleVariant): IHShapeModelX;
 425     function CreateShapeModel(NumLevels: OleVariant; AngleStart: Double; AngleExtent: Double;
 426                               AngleStep: OleVariant; Optimization: OleVariant;
 427                               const Metric: WideString; Contrast: OleVariant;
 428                               MinContrast: OleVariant): IHShapeModelX;
 429     function InspectShapeModel(out ModelRegions: IHRegionX; NumLevels: Integer; Contrast: OleVariant): IHImageX;
 430     function FindCalibDescriptorModel(const ModelID: IHDescriptorModelX;
 431                                       DetectorParamName: OleVariant;
 432                                       DetectorParamValue: OleVariant;
 433                                       DescriptorParamName: OleVariant;
 434                                       DescriptorParamValue: OleVariant; MinScore: OleVariant;
 435                                       NumMatches: Integer; CamParam: OleVariant;
 436                                       ScoreType: OleVariant; out Score: OleVariant): OleVariant;
 437     function FindUncalibDescriptorModel(const ModelID: IHDescriptorModelX;
 438                                         DetectorParamName: OleVariant;
 439                                         DetectorParamValue: OleVariant;
 440                                         DescriptorParamName: OleVariant;
 441                                         DescriptorParamValue: OleVariant; MinScore: OleVariant;
 442                                         NumMatches: Integer; ScoreType: OleVariant;
 443                                         out Score: OleVariant): IHHomMat2DX;
 444     function CreateCalibDescriptorModel(CamParam: OleVariant; ReferencePose: OleVariant;
 445                                         const DetectorType: WideString;
 446                                         DetectorParamName: OleVariant;
 447                                         DetectorParamValue: OleVariant;
 448                                         DescriptorParamName: OleVariant;
 449                                         DescriptorParamValue: OleVariant; Seed: Integer): IHDescriptorModelX;
 450     function CreateUncalibDescriptorModel(const DetectorType: WideString;
 451                                           DetectorParamName: OleVariant;
 452                                           DetectorParamValue: OleVariant;
 453                                           DescriptorParamName: OleVariant;
 454                                           DescriptorParamValue: OleVariant; Seed: Integer): IHDescriptorModelX;
 455     function DetermineDeformableModelParams(NumLevels: OleVariant; AngleStart: Double;
 456                                             AngleExtent: Double; ScaleMin: OleVariant;
 457                                             ScaleMax: OleVariant; const Optimization: WideString;
 458                                             const Metric: WideString; Contrast: OleVariant;
 459                                             MinContrast: OleVariant; ParamName: OleVariant;
 460                                             ParamValue: OleVariant; Parameters: OleVariant;
 461                                             out ParameterValue: OleVariant): OleVariant;
 462     function FindLocalDeformableModel(out VectorField: IHImageX; out DeformedContours: IHXLDContX;
 463                                       const ModelID: IHDeformableModelX; AngleStart: Double;
 464                                       AngleExtent: Double; ScaleRMin: Double; ScaleRMax: Double;
 465                                       ScaleCMin: Double; ScaleCMax: Double; MinScore: Double;
 466                                       NumMatches: Integer; MaxOverlap: Double;
 467                                       NumLevels: OleVariant; Greediness: Double;
 468                                       ResultType: OleVariant; ParamName: OleVariant;
 469                                       ParamValue: OleVariant; out Score: OleVariant;
 470                                       out Row: OleVariant; out Column: OleVariant): IHImageX;
 471     function FindPlanarCalibDeformableModel(const ModelID: IHDeformableModelX; AngleStart: Double;
 472                                             AngleExtent: Double; ScaleRMin: Double;
 473                                             ScaleRMax: Double; ScaleCMin: Double;
 474                                             ScaleCMax: Double; MinScore: Double;
 475                                             NumMatches: Integer; MaxOverlap: Double;
 476                                             NumLevels: OleVariant; Greediness: Double;
 477                                             ParamName: OleVariant; ParamValue: OleVariant;
 478                                             out CovPose: OleVariant; out Score: OleVariant): OleVariant;
 479     function FindPlanarUncalibDeformableModel(const ModelID: IHDeformableModelX;
 480                                               AngleStart: Double; AngleExtent: Double;
 481                                               ScaleRMin: Double; ScaleRMax: Double;
 482                                               ScaleCMin: Double; ScaleCMax: Double;
 483                                               MinScore: Double; NumMatches: Integer;
 484                                               MaxOverlap: Double; NumLevels: OleVariant;
 485                                               Greediness: Double; ParamName: OleVariant;
 486                                               ParamValue: OleVariant; out Score: OleVariant): IHHomMat2DX;
 487     procedure SetLocalDeformableModelMetric(const VectorField: IHImageX;
 488                                             const ModelID: IHDeformableModelX;
 489                                             const Metric: WideString);
 490     procedure SetPlanarCalibDeformableModelMetric(const ModelID: IHDeformableModelX;
 491                                                   Pose: OleVariant; const Metric: WideString);
 492     procedure SetPlanarUncalibDeformableModelMetric(const ModelID: IHDeformableModelX;
 493                                                     const HomMat2d: IHHomMat2DX;
 494                                                     const Metric: WideString);
 495     function CreateLocalDeformableModel(NumLevels: OleVariant; AngleStart: Double;
 496                                         AngleExtent: Double; AngleStep: OleVariant;
 497                                         ScaleRMin: Double; ScaleRMax: Double;
 498                                         ScaleRStep: OleVariant; ScaleCMin: Double;
 499                                         ScaleCMax: Double; ScaleCStep: OleVariant;
 500                                         Optimization: OleVariant; const Metric: WideString;
 501                                         Contrast: OleVariant; MinContrast: OleVariant;
 502                                         ParamName: OleVariant; ParamValue: OleVariant): IHDeformableModelX;
 503     function CreatePlanarCalibDeformableModel(CamParam: OleVariant; ReferencePose: OleVariant;
 504                                               NumLevels: OleVariant; AngleStart: Double;
 505                                               AngleExtent: Double; AngleStep: OleVariant;
 506                                               ScaleRMin: Double; ScaleRMax: Double;
 507                                               ScaleRStep: OleVariant; ScaleCMin: Double;
 508                                               ScaleCMax: Double; ScaleCStep: OleVariant;
 509                                               Optimization: OleVariant; const Metric: WideString;
 510                                               Contrast: OleVariant; MinContrast: OleVariant;
 511                                               ParamName: OleVariant; ParamValue: OleVariant): IHDeformableModelX;
 512     function CreatePlanarUncalibDeformableModel(NumLevels: OleVariant; AngleStart: Double;
 513                                                 AngleExtent: Double; AngleStep: OleVariant;
 514                                                 ScaleRMin: Double; ScaleRMax: Double;
 515                                                 ScaleRStep: OleVariant; ScaleCMin: Double;
 516                                                 ScaleCMax: Double; ScaleCStep: OleVariant;
 517                                                 Optimization: OleVariant; const Metric: WideString;
 518                                                 Contrast: OleVariant; MinContrast: OleVariant;
 519                                                 ParamName: OleVariant; ParamValue: OleVariant): IHDeformableModelX;
 520     function FindNccModel(const ModelID: IHNCCModelX; AngleStart: Double; AngleExtent: Double;
 521                           MinScore: Double; NumMatches: Integer; MaxOverlap: Double;
 522                           const SubPixel: WideString; NumLevels: OleVariant;
 523                           out Column: OleVariant; out Angle: OleVariant; out Score: OleVariant): OleVariant;
 524     procedure SetNccModelParam(const ModelID: IHNCCModelX; GenParamNames: OleVariant;
 525                                GenParamValues: OleVariant);
 526     function CreateNccModel(NumLevels: OleVariant; AngleStart: Double; AngleExtent: Double;
 527                             AngleStep: OleVariant; const Metric: WideString): IHNCCModelX;
 528     function FindComponentModel(const ComponentModelID: IHComponentModelX;
 529                                 RootComponent: OleVariant; AngleStartRoot: OleVariant;
 530                                 AngleExtentRoot: OleVariant; MinScore: Double; NumMatches: Integer;
 531                                 MaxOverlap: Double; const IfRootNotFound: WideString;
 532                                 const IfComponentNotFound: WideString;
 533                                 const PosePrediction: WideString; MinScoreComp: OleVariant;
 534                                 SubPixelComp: OleVariant; NumLevelsComp: OleVariant;
 535                                 GreedinessComp: OleVariant; out ModelEnd: OleVariant;
 536                                 out Score: OleVariant; out RowComp: OleVariant;
 537                                 out ColumnComp: OleVariant; out AngleComp: OleVariant;
 538                                 out ScoreComp: OleVariant; out ModelComp: OleVariant): OleVariant;
 539     function CreateComponentModel(const ComponentRegions: IHRegionX; VariationRow: OleVariant;
 540                                   VariationColumn: OleVariant; VariationAngle: OleVariant;
 541                                   AngleStart: Double; AngleExtent: Double;
 542                                   ContrastLowComp: OleVariant; ContrastHighComp: OleVariant;
 543                                   MinSizeComp: OleVariant; MinContrastComp: OleVariant;
 544                                   MinScoreComp: OleVariant; NumLevelsComp: OleVariant;
 545                                   AngleStepComp: OleVariant; const OptimizationComp: WideString;
 546                                   MetricComp: OleVariant; PregenerationComp: OleVariant;
 547                                   out RootRanking: OleVariant): IHComponentModelX;
 548     function ClusterModelComponents(const ComponentTrainingID: IHComponentTrainingX;
 549                                     const AmbiguityCriterion: WideString;
 550                                     MaxContourOverlap: Double; ClusterThreshold: Double): IHRegionX;
 551     function TrainModelComponents(const InitialComponents: IHRegionX;
 552                                   const TrainingImages: IHImageX; ContrastLow: OleVariant;
 553                                   ContrastHigh: OleVariant; MinSize: OleVariant;
 554                                   MinScore: OleVariant; SearchRowTol: OleVariant;
 555                                   SearchColumnTol: OleVariant; SearchAngleTol: OleVariant;
 556                                   const TrainingEmphasis: WideString;
 557                                   const AmbiguityCriterion: WideString; MaxContourOverlap: Double;
 558                                   ClusterThreshold: Double;
 559                                   out ComponentTrainingID: IHComponentTrainingX): IHRegionX;
 560     function GenInitialComponents(ContrastLow: OleVariant; ContrastHigh: OleVariant;
 561                                   MinSize: OleVariant; const Mode: WideString;
 562                                   GenericName: OleVariant; GenericValue: OleVariant): IHRegionX;
 563     function FindShapeModel3D(const ShapeModel3DID: IHShapeModel3DX; MinScore: Double;
 564                               Greediness: Double; NumLevels: OleVariant; GenParamNames: OleVariant;
 565                               GenParamValues: OleVariant; out CovPose: OleVariant;
 566                               out Score: OleVariant): OleVariant;
 567     function ChannelsToImage: IHImageX;
 568     function ImageToChannels: IHImageX;
 569     function Compose7(const Image2: IHImageX; const Image3: IHImageX; const Image4: IHImageX;
 570                       const Image5: IHImageX; const Image6: IHImageX; const Image7: IHImageX): IHImageX;
 571     function Compose6(const Image2: IHImageX; const Image3: IHImageX; const Image4: IHImageX;
 572                       const Image5: IHImageX; const Image6: IHImageX): IHImageX;
 573     function Compose5(const Image2: IHImageX; const Image3: IHImageX; const Image4: IHImageX;
 574                       const Image5: IHImageX): IHImageX;
 575     function Compose4(const Image2: IHImageX; const Image3: IHImageX; const Image4: IHImageX): IHImageX;
 576     function Compose3(const Image2: IHImageX; const Image3: IHImageX): IHImageX;
 577     function Compose2(const Image2: IHImageX): IHImageX;
 578     function Decompose7(out Image2: IHImageX; out Image3: IHImageX; out Image4: IHImageX;
 579                         out Image5: IHImageX; out Image6: IHImageX; out Image7: IHImageX): IHImageX;
 580     function Decompose6(out Image2: IHImageX; out Image3: IHImageX; out Image4: IHImageX;
 581                         out Image5: IHImageX; out Image6: IHImageX): IHImageX;
 582     function Decompose5(out Image2: IHImageX; out Image3: IHImageX; out Image4: IHImageX;
 583                         out Image5: IHImageX): IHImageX;
 584     function Decompose4(out Image2: IHImageX; out Image3: IHImageX; out Image4: IHImageX): IHImageX;
 585     function Decompose3(out Image2: IHImageX; out Image3: IHImageX): IHImageX;
 586     function Decompose2(out Image2: IHImageX): IHImageX;
 587     function CountChannels: OleVariant;
 588     function AppendChannel(const Image: IHImageX): IHImageX;
 589     function AccessChannel(Channel: Integer): IHImageX;
 590     function TileImagesOffset(OffsetRow: OleVariant; OffsetCol: OleVariant; Row1: OleVariant;
 591                               Col1: OleVariant; Row2: OleVariant; Col2: OleVariant; Width: Integer;
 592                               Height: Integer): IHImageX;
 593     function TileImages(NumColumns: Integer; const TileOrder: WideString): IHImageX;
 594     function TileChannels(NumColumns: Integer; const TileOrder: WideString): IHImageX;
 595     function CropDomain: IHImageX;
 596     function CropRectangle1(Row1: Integer; Column1: Integer; Row2: Integer; Column2: Integer): IHImageX;
 597     function CropPart(Row: Integer; Column: Integer; Width: Integer; Height: Integer): IHImageX;
 598     function ChangeFormat(Width: Integer; Height: Integer): IHImageX;
 599     function ChangeDomain(const NewDomain: IHRegionX): IHImageX;
 600     function Rectangle1Domain(Row1: Integer; Column1: Integer; Row2: Integer; Column2: Integer): IHImageX;
 601     function ReduceDomain(const Region: IHRegionX): IHImageX;
 602     function FullDomain: IHImageX;
 603     function GetDomain: IHRegionX;
 604     function HoughLinesDir(out Lines: IHRegionX; DirectionUncertainty: Integer;
 605                            AngleResolution: Integer; const Smoothing: WideString;
 606                            FilterSize: Integer; Threshold: Integer; AngleGap: Integer;
 607                            DistGap: Integer; const GenLines: WideString; out Angle: OleVariant;
 608                            out Dist: OleVariant): IHImageX;
 609     function HoughLineTransDir(DirectionUncertainty: Integer; AngleResolution: Integer): IHImageX;
 610     function FindRectificationGrid(MinContrast: OleVariant; Radius: OleVariant): IHRegionX;
 611     function ConnectGridPoints(Row: OleVariant; Column: OleVariant; Sigma: OleVariant;
 612                                MaxDist: OleVariant): IHXLDX;
 613     function GenGridRectificationMap(const ConnectingLines: IHXLDX; out Meshes: IHXLDX;
 614                                      GridSpacing: Integer; Rotation: OleVariant; Row: OleVariant;
 615                                      Column: OleVariant; const MapType: WideString): IHImageX;
 616     function UnprojectCoordinates(const WindowHandle: IHWindowX; Row: OleVariant;
 617                                   Column: OleVariant; out ImageColumn: Integer;
 618                                   out Height: OleVariant): Integer;
 619     procedure DumpWindowImage(const WindowHandle: IHWindowX);
 620     procedure DispImage(const WindowHandle: IHWindowX);
 621     procedure DispChannel(const WindowHandle: IHWindowX; Channel: OleVariant);
 622     procedure DispColor(const WindowHandle: IHWindowX);
 623     procedure DispObj(const WindowHandle: IHWindowX);
 624     procedure GnuplotPlotImage(const GnuplotFileID: IHGnuplotX; SamplesX: Integer;
 625                                SamplesY: Integer; ViewRotX: OleVariant; ViewRotZ: OleVariant;
 626                                const Hidden3D: WideString);
 627     function TextureLaws(const FilterTypes: WideString; Shift: Integer; FilterSize: Integer): IHImageX;
 628     function DeviationImage(Width: Integer; Height: Integer): IHImageX;
 629     function EntropyImage(Width: Integer; Height: Integer): IHImageX;
 630     function IsotropicDiffusion(Sigma: Double; Iterations: Integer): IHImageX;
 631     function AnisotropicDiffusion(const Mode: WideString; Contrast: Double; Theta: Double;
 632                                   Iterations: Integer): IHImageX;
 633     function SmoothImage(const Filter: WideString; Alpha: Double): IHImageX;
 634     function SigmaImage(MaskHeight: Integer; MaskWidth: Integer; Sigma: Integer): IHImageX;
 635     function MidrangeImage(const Mask: IHRegionX; Margin: OleVariant): IHImageX;
 636     function TrimmedMean(const Mask: IHRegionX; Number: Integer; Margin: OleVariant): IHImageX;
 637     function MedianSeparate(MaskWidth: Integer; MaskHeight: Integer; Margin: OleVariant): IHImageX;
 638     function MedianRect(MaskWidth: Integer; MaskHeight: Integer): IHImageX;
 639     function MedianImage(const MaskType: WideString; Radius: Integer; Margin: OleVariant): IHImageX;
 640     function MedianWeighted(const MaskType: WideString; MaskSize: Integer): IHImageX;
 641     function RankRect(MaskWidth: Integer; MaskHeight: Integer; Rank: Integer): IHImageX;
 642     function RankImage(const Mask: IHRegionX; Rank: Integer; Margin: OleVariant): IHImageX;
 643     function DualRank(const MaskType: WideString; Radius: Integer; ModePercent: Integer;
 644                       Margin: OleVariant): IHImageX;
 645     function MeanImage(MaskWidth: Integer; MaskHeight: Integer): IHImageX;
 646     function BinomialFilter(MaskWidth: Integer; MaskHeight: Integer): IHImageX;
 647     function GaussImage(Size: Integer): IHImageX;
 648     function EliminateMinMax(MaskWidth: Integer; MaskHeight: Integer; Gap: Double; Mode: Integer): IHImageX;
 649     function AnisotropeDiff(Percent: Integer; Mode: Integer; Iteration: Integer;
 650                             NeighborhoodType: Integer): IHImageX;
 651     function FillInterlace(const Mode: WideString): IHImageX;
 652     function RankN(RankIndex: Integer): IHImageX;
 653     function MeanN: IHImageX;
 654     function EliminateSp(MaskWidth: Integer; MaskHeight: Integer; MinThresh: Integer;
 655                          MaxThresh: Integer): IHImageX;
 656     function MeanSp(MaskWidth: Integer; MaskHeight: Integer; MinThresh: Integer; MaxThresh: Integer): IHImageX;
 657     function PointsSojka(MaskSize: Integer; SigmaW: OleVariant; SigmaD: OleVariant;
 658                          MinGrad: OleVariant; MinApparentness: OleVariant; MinAngle: Double;
 659                          const Subpix: WideString; out Column: OleVariant): OleVariant;
 660     function DotsImage(Diameter: Integer; const FilterType: WideString; PixelShift: Integer): IHImageX;
 661     function LocalMinSubPix(const Filter: WideString; Sigma: Double; Threshold: Double;
 662                             out Column: OleVariant): OleVariant;
 663     function LocalMaxSubPix(const Filter: WideString; Sigma: Double; Threshold: Double;
 664                             out Column: OleVariant): OleVariant;
 665     function SaddlePointsSubPix(const Filter: WideString; Sigma: Double; Threshold: Double;
 666                                 out Column: OleVariant): OleVariant;
 667     function CriticalPointsSubPix(const Filter: WideString; Sigma: Double; Threshold: Double;
 668                                   out ColumnMin: OleVariant; out RowMax: OleVariant;
 669                                   out ColumnMax: OleVariant; out RowSaddle: OleVariant;
 670                                   out ColumnSaddle: OleVariant): OleVariant;
 671     function PointsHarris(SigmaGrad: Double; SigmaSmooth: Double; Alpha: Double;
 672                           Threshold: OleVariant; out Column: OleVariant): OleVariant;
 673     function PointsHarrisBinomial(MaskSizeGrad: Integer; MaskSizeSmooth: Integer; Alpha: Double;
 674                                   Threshold: OleVariant; const Subpix: WideString;
 675                                   out Column: OleVariant): OleVariant;
 676     function PointsLepetit(Radius: Integer; CheckNeighbor: Integer; MinCheckNeighborDiff: Integer;
 677                            MinScore: Integer; const Subpix: WideString; out Column: OleVariant): OleVariant;
 678     function PointsFoerstner(SigmaGrad: OleVariant; SigmaInt: OleVariant; SigmaPoints: OleVariant;
 679                              ThreshInhom: OleVariant; ThreshShape: Double;
 680                              const Smoothing: WideString; const EliminateDoublets: WideString;
 681                              out ColumnJunctions: OleVariant; out CoRRJunctions: OleVariant;
 682                              out CoRCJunctions: OleVariant; out CoCCJunctions: OleVariant;
 683                              out RowArea: OleVariant; out ColumnArea: OleVariant;
 684                              out CoRRArea: OleVariant; out CoRCArea: OleVariant;
 685                              out CoCCArea: OleVariant): OleVariant;
 686     function EstimateNoise(const Method: WideString; Percent: OleVariant): OleVariant;
 687     function NoiseDistributionMean(const ConstRegion: IHRegionX; FilterSize: Integer): OleVariant;
 688     function AddNoiseWhite(Amp: Double): IHImageX;
 689     function AddNoiseDistribution(Distribution: OleVariant): IHImageX;
 690     function DeviationN: IHImageX;
 691     function InpaintingTexture(const Region: IHRegionX; MaskSize: Integer; SearchSize: Integer;
 692                                Anisotropy: Double; const PostIteration: WideString;
 693                                Smoothness: Double): IHImageX;
 694     function InpaintingCt(const Region: IHRegionX; Epsilon: Double; Kappa: Double; Sigma: Double;
 695                           Rho: Double; ChannelCoefficients: OleVariant): IHImageX;
 696     function InpaintingMcf(const Region: IHRegionX; Sigma: Double; Theta: Double;
 697                            Iterations: Integer): IHImageX;
 698     function InpaintingCed(const Region: IHRegionX; Sigma: Double; Rho: Double; Theta: Double;
 699                            Iterations: Integer): IHImageX;
 700     function InpaintingAniso(const Region: IHRegionX; const Mode: WideString; Contrast: Double;
 701                              Theta: Double; Iterations: Integer; Rho: Double): IHImageX;
 702     function HarmonicInterpolation(const Region: IHRegionX; Precision: Double): IHImageX;
 703     function ExpandDomainGray(ExpansionRange: Integer): IHImageX;
 704     function TopographicSketch: IHImageX;
 705     function LinearTransColor(TransMat: OleVariant): IHImageX;
 706     function GenPrincipalCompTrans(out TransInv: OleVariant; out Mean: OleVariant;
 707                                    out Cov: OleVariant; out InfoPerComp: OleVariant): OleVariant;
 708     function PrincipalComp(out InfoPerComp: OleVariant): IHImageX;
 709     function FuzzyEntropy(const Regions: IHRegionX; Apar: Integer; Cpar: Integer): OleVariant;
 710     function FuzzyPerimeter(const Regions: IHRegionX; Apar: Integer; Cpar: Integer): OleVariant;
 711     function GrayClosingShape(MaskHeight: OleVariant; MaskWidth: OleVariant;
 712                               const MaskShape: WideString): IHImageX;
 713     function GrayOpeningShape(MaskHeight: OleVariant; MaskWidth: OleVariant;
 714                               const MaskShape: WideString): IHImageX;
 715     function GrayErosionShape(MaskHeight: OleVariant; MaskWidth: OleVariant;
 716                               const MaskShape: WideString): IHImageX;
 717     function GrayDilationShape(MaskHeight: OleVariant; MaskWidth: OleVariant;
 718                                const MaskShape: WideString): IHImageX;
 719     function GrayRangeRect(MaskHeight: Integer; MaskWidth: Integer): IHImageX;
 720     function GrayClosingRect(MaskHeight: Integer; MaskWidth: Integer): IHImageX;
 721     function GrayOpeningRect(MaskHeight: Integer; MaskWidth: Integer): IHImageX;
 722     function GrayErosionRect(MaskHeight: Integer; MaskWidth: Integer): IHImageX;
 723     function GrayDilationRect(MaskHeight: Integer; MaskWidth: Integer): IHImageX;
 724     function GraySkeleton: IHImageX;
 725     function LutTrans(Lut: OleVariant): IHImageX;
 726     function ConvolImage(FilterMask: OleVariant; Margin: OleVariant): IHImageX;
 727     function ConvertImageType(const NewType: WideString): IHImageX;
 728     function RealToVectorField(const Col: IHImageX; const Type_: WideString): IHImageX;
 729     function VectorFieldToReal(out Col: IHImageX): IHImageX;
 730     function RealToComplex(const ImageImaginary: IHImageX): IHImageX;
 731     function ComplexToReal(out ImageImaginary: IHImageX): IHImageX;
 732     function RegionToMean(const Regions: IHRegionX): IHImageX;
 733     function GrayInside: IHImageX;
 734     function Symmetry(MaskSize: Integer; Direction: Double; Exponent: Double): IHImageX;
 735     function SelectGrayvaluesFromChannels(const IndexImage: IHImageX): IHImageX;
 736     function DepthFromFocus(out Confidence: IHImageX; Filter: OleVariant; Selection: OleVariant): IHImageX;
 737     function UnwarpImageVectorField(const VectorField: IHImageX): IHImageX;
 738     function DerivateVectorField(Sigma: OleVariant; const Component: WideString): IHImageX;
 739     function VectorFieldLength(const Mode: WideString): IHImageX;
 740     function OpticalFlowMg(const Image2: IHImageX; const Algorithm: WideString;
 741                            SmoothingSigma: Double; IntegrationSigma: Double;
 742                            FlowSmoothness: Double; GradientConstancy: Double;
 743                            MGParamName: OleVariant; MGParamValue: OleVariant): IHImageX;
 744     function ExhaustiveMatchMg(const ImageTemplate: IHImageX; const Mode: WideString;
 745                                Level: Integer; Threshold: Integer): IHImageX;
 746     function CreateTemplateRot(NumLevel: Integer; AngleStart: Double; AngleExtend: Double;
 747                                AngleStep: Double; const Optimize: WideString;
 748                                const GrayValues: WideString): IHTemplateX;
 749     function CreateTemplate(FirstError: Integer; NumLevel: Integer; const Optimize: WideString;
 750                             const GrayValues: WideString): IHTemplateX;
 751     procedure AdaptTemplate(const TemplateID: IHTemplateX);
 752     function FastMatchMg(const TemplateID: IHTemplateX; MaxError: Double; NumLevel: OleVariant): IHRegionX;
 753     function BestMatchPreMg(const TemplateID: IHTemplateX; MaxError: Double;
 754                             const SubPixel: WideString; NumLevels: Integer;
 755                             WhichLevels: OleVariant; out Column: Double; out Error: Double): Double;
 756     function BestMatchMg(const TemplateID: IHTemplateX; MaxError: Double;
 757                          const SubPixel: WideString; NumLevels: Integer; WhichLevels: OleVariant;
 758                          out Column: Double; out Error: Double): Double;
 759     function FastMatch(const TemplateID: IHTemplateX; MaxError: Double): IHRegionX;
 760     function BestMatchRotMg(const TemplateID: IHTemplateX; AngleStart: Double; AngleExtend: Double;
 761                             MaxError: Double; const SubPixel: WideString; NumLevels: Integer;
 762                             out Column: OleVariant; out Angle: OleVariant; out Error: OleVariant): OleVariant;
 763     function BestMatchRot(const TemplateID: IHTemplateX; AngleStart: Double; AngleExtend: Double;
 764                           MaxError: Double; const SubPixel: WideString; out Column: OleVariant;
 765                           out Angle: OleVariant; out Error: OleVariant): OleVariant;
 766     function BestMatch(const TemplateID: IHTemplateX; MaxError: Double; const SubPixel: WideString;
 767                        out Column: OleVariant; out Error: OleVariant): OleVariant;
 768     function ExhaustiveMatch(const RegionOfInterest: IHRegionX; const ImageTemplate: IHImageX;
 769                              const Mode: WideString): IHImageX;
 770     function CornerResponse(Size: Integer; Weight: Double): IHImageX;
 771     function GenGaussPyramid(const Mode: WideString; Scale: Double): IHImageX;
 772     function Monotony: IHImageX;
 773     function BandpassImage(const FilterType: WideString): IHImageX;
 774     function LinesColor(Sigma: OleVariant; Low: OleVariant; High: OleVariant;
 775                         const ExtractWidth: WideString; const CompleteJunctions: WideString): IHXLDContX;
 776     function LinesGauss(Sigma: OleVariant; Low: OleVariant; High: OleVariant;
 777                         const LightDark: WideString; const ExtractWidth: WideString;
 778                         const LineModel: WideString; const CompleteJunctions: WideString): IHXLDContX;
 779     function LinesFacet(MaskSize: Integer; Low: OleVariant; High: OleVariant;
 780                         const LightDark: WideString): IHXLDContX;
 781     procedure GenFilterMask(FilterMask: OleVariant; Scale: Double; Width: Integer; Height: Integer);
 782     procedure GenMeanFilter(const MaskShape: WideString; Diameter1: Double; Diameter2: Double;
 783                             Phi: Double; const Norm: WideString; const Mode: WideString;
 784                             Width: Integer; Height: Integer);
 785     procedure GenGaussFilter(Sigma1: Double; Sigma2: Double; Phi: Double; const Norm: WideString;
 786                              const Mode: WideString; Width: Integer; Height: Integer);
 787     procedure GenDerivativeFilter(const Derivative: WideString; Exponent: Integer;
 788                                   const Norm: WideString; const Mode: WideString; Width: Integer;
 789                                   Height: Integer);
 790     procedure GenStdBandpass(Frequency: Double; Sigma: Double; const Type_: WideString;
 791                              const Norm: WideString; const Mode: WideString; Width: Integer;
 792                              Height: Integer);
 793     procedure GenSinBandpass(Frequency: Double; const Norm: WideString; const Mode: WideString;
 794                              Width: Integer; Height: Integer);
 795     procedure GenBandfilter(MinFrequency: Double; MaxFrequency: Double; const Norm: WideString;
 796                             const Mode: WideString; Width: Integer; Height: Integer);
 797     procedure GenBandpass(MinFrequency: Double; MaxFrequency: Double; const Norm: WideString;
 798                           const Mode: WideString; Width: Integer; Height: Integer);
 799     procedure GenLowpass(Frequency: Double; const Norm: WideString; const Mode: WideString;
 800                          Width: Integer; Height: Integer);
 801     procedure GenHighpass(Frequency: Double; const Norm: WideString; const Mode: WideString;
 802                           Width: Integer; Height: Integer);
 803     function PowerLn: IHImageX;
 804     function PowerReal: IHImageX;
 805     function PowerByte: IHImageX;
 806     function PhaseDeg: IHImageX;
 807     function PhaseRad: IHImageX;
 808     function EnergyGabor(const ImageHilbert: IHImageX): IHImageX;
 809     function ConvolGabor(const GaborFilter: IHImageX; out ImageResultHilbert: IHImageX): IHImageX;
 810     procedure GenGabor(Angle: Double; Frequency: Double; Bandwidth: Double; Orientation: Double;
 811                        const Norm: WideString; const Mode: WideString; Width: Integer;
 812                        Height: Integer);
 813     function CorrelationFft(const ImageFFT2: IHImageX): IHImageX;
 814     function ConvolFft(const ImageFilter: IHImageX): IHImageX;
 815     function RftGeneric(const Direction: WideString; const Norm: WideString;
 816                         const ResultType: WideString; Width: Integer): IHImageX;
 817     function FftImageInv: IHImageX;
 818     function FftImage: IHImageX;
 819     function FftGeneric(const Direction: WideString; Exponent: Integer; const Norm: WideString;
 820                         const Mode: WideString; const ResultType: WideString): IHImageX;
 821     function ShockFilter(Theta: Double; Iterations: Integer; const Mode: WideString; Sigma: Double): IHImageX;
 822     function MeanCurvatureFlow(Sigma: Double; Theta: Double; Iterations: Integer): IHImageX;
 823     function CoherenceEnhancingDiff(Sigma: Double; Rho: Double; Theta: Double; Iterations: Integer): IHImageX;
 824     function EquHistoImage: IHImageX;
 825     function Illuminate(MaskWidth: Integer; MaskHeight: Integer; Factor: Double): IHImageX;
 826     function Emphasize(MaskWidth: Integer; MaskHeight: Integer; Factor: Double): IHImageX;
 827     function ScaleImageMax: IHImageX;
 828     function RobinsonDir(out ImageEdgeDir: IHImageX): IHImageX;
 829     function RobinsonAmp: IHImageX;
 830     function KirschDir(out ImageEdgeDir: IHImageX): IHImageX;
 831     function KirschAmp: IHImageX;
 832     function FreiDir(out ImageEdgeDir: IHImageX): IHImageX;
 833     function FreiAmp: IHImageX;
 834     function PrewittDir(out ImageEdgeDir: IHImageX): IHImageX;
 835     function PrewittAmp: IHImageX;
 836     function SobelAmp(const FilterType: WideString; Size: OleVariant): IHImageX;
 837     function SobelDir(out EdgeDirection: IHImageX; const FilterType: WideString; Size: OleVariant): IHImageX;
 838     function Roberts(const FilterType: WideString): IHImageX;
 839     function Laplace(const ResultType: WideString; MaskSize: OleVariant;
 840                      const FilterMask: WideString): IHImageX;
 841     function HighpassImage(Width: Integer; Height: Integer): IHImageX;
 842     function EdgesColorSubPix(const Filter: WideString; Alpha: Double; Low: OleVariant;
 843                               High: OleVariant): IHXLDContX;
 844     function EdgesColor(out ImaDir: IHImageX; const Filter: WideString; Alpha: Double;
 845                         const NMS: WideString; Low: Integer; High: Integer): IHImageX;
 846     function EdgesSubPix(const Filter: WideString; Alpha: Double; Low: OleVariant; High: OleVariant): IHXLDContX;
 847     function EdgesImage(out ImaDir: IHImageX; const Filter: WideString; Alpha: Double;
 848                         const NMS: WideString; Low: OleVariant; High: OleVariant): IHImageX;
 849     function DerivateGauss(Sigma: OleVariant; const Component: WideString): IHImageX;
 850     function LaplaceOfGauss(Sigma: OleVariant): IHImageX;
 851     function DiffOfGauss(Sigma: Double; SigFactor: Double): IHImageX;
 852     function DetectEdgeSegments(SobelSize: Integer; MinAmplitude: Integer; MaxDistance: Integer;
 853                                 MinLength: Integer; out BeginCol: OleVariant;
 854                                 out EndRow: OleVariant; out EndCol: OleVariant): OleVariant;
 855     procedure ClearColorTransLut(const ColorTransLUTHandle: IHColorTransLUTX);
 856     function ApplyColorTransLut(const Image2: IHImageX; const Image3: IHImageX;
 857                                 out ImageResult2: IHImageX; out ImageResult3: IHImageX;
 858                                 const ColorTransLUTHandle: IHColorTransLUTX): IHImageX;
 859     function CreateColorTransLut(const ColorSpace: WideString; const TransDirection: WideString;
 860                                  NumBits: Integer): IHColorTransLUTX;
 861     function CfaToRgb(const CFAType: WideString; const Interpolation: WideString): IHImageX;
 862     function Rgb1ToGray: IHImageX;
 863     function Rgb3ToGray(const ImageGreen: IHImageX; const ImageBlue: IHImageX): IHImageX;
 864     function TransFromRgb(const ImageGreen: IHImageX; const ImageBlue: IHImageX;
 865                           out ImageResult2: IHImageX; out ImageResult3: IHImageX;
 866                           const ColorSpace: WideString): IHImageX;
 867     function TransToRgb(const ImageInput2: IHImageX; const ImageInput3: IHImageX;
 868                         out ImageGreen: IHImageX; out ImageBlue: IHImageX;
 869                         const ColorSpace: WideString): IHImageX;
 870     function BitMask(BitMask: Integer): IHImageX;
 871     function BitSlice(Bit: Integer): IHImageX;
 872     function BitRshift(Shift: Integer): IHImageX;
 873     function BitLshift(Shift: Integer): IHImageX;
 874     function BitNot: IHImageX;
 875     function BitXor(const Image2: IHImageX): IHImageX;
 876     function BitOr(const Image2: IHImageX): IHImageX;
 877     function BitAnd(const Image2: IHImageX): IHImageX;
 878     function GammaImage(Gamma: Double; Offset: Double; Threshold: Double; MaxGray: OleVariant;
 879                         const Encode: WideString): IHImageX;
 880     function PowImage(Exponent: OleVariant): IHImageX;
 881     function ExpImage(Base: OleVariant): IHImageX;
 882     function LogImage(Base: OleVariant): IHImageX;
 883     function Atan2Image(const ImageX: IHImageX): IHImageX;
 884     function AtanImage: IHImageX;
 885     function AcosImage: IHImageX;
 886     function AsinImage: IHImageX;
 887     function TanImage: IHImageX;
 888     function CosImage: IHImageX;
 889     function SinImage: IHImageX;
 890     function AbsDiffImage(const Image2: IHImageX; Mult: OleVariant): IHImageX;
 891     function SqrtImage: IHImageX;
 892     function SubImage(const ImageSubtrahend: IHImageX; Mult: OleVariant; Add: OleVariant): IHImageX;
 893     function ScaleImage(Mult: OleVariant; Add: OleVariant): IHImageX;
 894     function DivImage(const Image2: IHImageX; Mult: OleVariant; Add: OleVariant): IHImageX;
 895     function MultImage(const Image2: IHImageX; Mult: OleVariant; Add: OleVariant): IHImageX;
 896     function AddImage(const Image2: IHImageX; Mult: OleVariant; Add: OleVariant): IHImageX;
 897     function AbsImage: IHImageX;
 898     function MinImage(const Image2: IHImageX): IHImageX;
 899     function MaxImage(const Image2: IHImageX): IHImageX;
 900     function InvertImage: IHImageX;
 901     function AdjustMosaicImages(From: OleVariant; To_: OleVariant; ReferenceImage: Integer;
 902                                 HomMatrices2D: OleVariant; const EstimationMethod: WideString;
 903                                 EstimateParameters: OleVariant; const OECFModel: WideString): IHImageX;
 904     function GenCubeMapMosaic(out Rear: IHImageX; out Left: IHImageX; out Right: IHImageX;
 905                               out Top: IHImageX; out Bottom: IHImageX;
 906                               const CameraMatrices: IHHomMat2DX;
 907                               const RotationMatrices: IHHomMat2DX; CubeMapDimension: Integer;
 908                               StackingOrder: OleVariant; const Interpolation: WideString): IHImageX;
 909     function GenSphericalMosaic(const CameraMatrices: IHHomMat2DX;
 910                                 const RotationMatrices: IHHomMat2DX; LatMin: OleVariant;
 911                                 LatMax: OleVariant; LongMin: OleVariant; LongMax: OleVariant;
 912                                 LatLongStep: OleVariant; StackingOrder: OleVariant;
 913                                 Interpolation: OleVariant): IHImageX;
 914     function GenBundleAdjustedMosaic(const HomMatrices2D: IHHomMat2DX; StackingOrder: OleVariant;
 915                                      const TransformDomain: WideString; out TransMat2D: IHHomMat2DX): IHImageX;
 916     function GenProjectiveMosaic(StartImage: Integer; MappingSource: OleVariant;
 917                                  MappingDest: OleVariant; const HomMatrices2D: IHHomMat2DX;
 918                                  StackingOrder: OleVariant; const TransformDomain: WideString;
 919                                  out MosaicMatrices2D: IHHomMat2DX): IHImageX;
 920     function ProjectiveTransImageSize(const HomMat2d: IHHomMat2DX; const Interpolation: WideString;
 921                                       Width: Integer; Height: Integer;
 922                                       const TransformDomain: WideString): IHImageX;
 923     function ProjectiveTransImage(const HomMat2d: IHHomMat2DX; const Interpolation: WideString;
 924                                   const AdaptImageSize: WideString;
 925                                   const TransformDomain: WideString): IHImageX;
 926     function AffineTransImageSize(const HomMat2d: IHHomMat2DX; const Interpolation: WideString;
 927                                   Width: Integer; Height: Integer): IHImageX;
 928     function AffineTransImage(const HomMat2d: IHHomMat2DX; const Interpolation: WideString;
 929                               const AdaptImageSize: WideString): IHImageX;
 930     function ZoomImageFactor(ScaleWidth: Double; ScaleHeight: Double;
 931                              const Interpolation: WideString): IHImageX;
 932     function ZoomImageSize(Width: Integer; Height: Integer; const Interpolation: WideString): IHImageX;
 933     function MirrorImage(const Mode: WideString): IHImageX;
 934     function RotateImage(Phi: OleVariant; const Interpolation: WideString): IHImageX;
 935     function PolarTransImageInv(Row: OleVariant; Column: OleVariant; AngleStart: Double;
 936                                 AngleEnd: Double; RadiusStart: OleVariant; RadiusEnd: OleVariant;
 937                                 Width: Integer; Height: Integer; const Interpolation: WideString): IHImageX;
 938     function PolarTransImageExt(Row: OleVariant; Column: OleVariant; AngleStart: Double;
 939                                 AngleEnd: Double; RadiusStart: OleVariant; RadiusEnd: OleVariant;
 940                                 Width: Integer; Height: Integer; const Interpolation: WideString): IHImageX;
 941     function PolarTransImage(Row: Integer; Column: Integer; Width: Integer; Height: Integer): IHImageX;
 942     function VectorFieldToHomMat2d: IHHomMat2DX;
 943     procedure DeserializeObject(const SerializedItemHandle: IHSerializedItemX);
 944     function SerializeObject: IHSerializedItemX;
 945     procedure DeserializeImage(const SerializedItemHandle: IHSerializedItemX);
 946     function SerializeImage: IHSerializedItemX;
 947     procedure WriteImage(const Format: WideString; FillColor: OleVariant; FileName: OleVariant);
 948     procedure ReadSequence(HeaderSize: Integer; SourceWidth: Integer; SourceHeight: Integer;
 949                            StartRow: Integer; StartColumn: Integer; DestWidth: Integer;
 950                            DestHeight: Integer; const PixelType: WideString;
 951                            const BitOrder: WideString; const ByteOrder: WideString;
 952                            const Pad: WideString; Index: Integer; const FileName: WideString);
 953     procedure ReadImage(FileName: OleVariant);
 954     function GetGrayvalContourXld(const Contour: IHXLDContX; const Interpolation: WideString): OleVariant;
 955     function FitSurfaceFirstOrder(const Regions: IHRegionX; const Algorithm: WideString;
 956                                   Iterations: Integer; ClippingFactor: Double;
 957                                   out Beta: OleVariant; out Gamma: OleVariant): OleVariant;
 958     function FitSurfaceSecondOrder(const Regions: IHRegionX; const Algorithm: WideString;
 959                                    Iterations: Integer; ClippingFactor: Double;
 960                                    out Beta: OleVariant; out Gamma: OleVariant;
 961                                    out Delta: OleVariant; out Epsilon: OleVariant;
 962                                    out Zeta: OleVariant): OleVariant;
 963     procedure GenImageSurfaceSecondOrder(const Type_: WideString; Alpha: Double; Beta: Double;
 964                                          Gamma: Double; Delta: Double; Epsilon: Double;
 965                                          Zeta: Double; Row: Double; Col: Double; Width: Integer;
 966                                          Height: Integer);
 967     procedure GenImageSurfaceFirstOrder(const Type_: WideString; Alpha: Double; Beta: Double;
 968                                         Gamma: Double; Row: Double; Col: Double; Width: Integer;
 969                                         Height: Integer);
 970     function MinMaxGray(const Regions: IHRegionX; Percent: OleVariant; out Max: OleVariant;
 971                         out Range: OleVariant): OleVariant;
 972     function Intensity(const Regions: IHRegionX; out Deviation: OleVariant): OleVariant;
 973     function GrayHistoRange(const Regions: IHRegionX; Min: OleVariant; Max: OleVariant;
 974                             NumBins: Integer; out BinSize: Double): OleVariant;
 975     function Histo2Dim(const Regions: IHRegionX; const ImageRow: IHImageX): IHImageX;
 976     function GrayHistoAbs(const Regions: IHRegionX; Quantization: OleVariant): OleVariant;
 977     function GrayHisto(const Regions: IHRegionX; out RelativeHisto: OleVariant): OleVariant;
 978     function EntropyGray(const Regions: IHRegionX; out Anisotropy: OleVariant): OleVariant;
 979     function CoocFeatureMatrix(out Correlation: Double; out Homogeneity: Double;
 980                                out Contrast: Double): Double;
 981     function CoocFeatureImage(const Regions: IHRegionX; LdGray: Integer; Direction: OleVariant;
 982                               out Correlation: OleVariant; out Homogeneity: OleVariant;
 983                               out Contrast: OleVariant): OleVariant;
 984     function GenCoocMatrix(const Regions: IHRegionX; LdGray: Integer; Direction: Integer): IHImageX;
 985     function MomentsGrayPlane(const Regions: IHRegionX; out MCol: OleVariant;
 986                               out Alpha: OleVariant; out Beta: OleVariant; out Mean: OleVariant): OleVariant;
 987     function PlaneDeviation(const Regions: IHRegionX): OleVariant;
 988     function EllipticAxisGray(const Regions: IHRegionX; out Rb: OleVariant; out Phi: OleVariant): OleVariant;
 989     function AreaCenterGray(const Regions: IHRegionX; out Row: OleVariant; out Column: OleVariant): OleVariant;
 990     function GrayProjections(const Region: IHRegionX; const Mode: WideString;
 991                              out VertProjection: OleVariant): OleVariant;
 992     function FindDataCode2D(const DataCodeHandle: IHDataCode2DX; GenParamNames: OleVariant;
 993                             GenParamValues: OleVariant; out ResultHandles: OleVariant;
 994                             out DecodedDataStrings: OleVariant): IHXLDContX;
 995     function ConvertMapType(const NewType: WideString; ImageWidth: OleVariant): IHImageX;
 996     function VectorToPose(WorldX: OleVariant; WorldY: OleVariant; WorldZ: OleVariant;
 997                           ImageRow: OleVariant; ImageColumn: OleVariant; CameraParam: OleVariant;
 998                           const Method: WideString; QualityType: OleVariant; out Quality: OleVariant): OleVariant;
 999     function ProjHomMat2dToPose(const Homography: IHHomMat2DX; const CameraMatrix: IHHomMat2DX;
1000                                 const Method: WideString): OleVariant;
1001     function RadiometricSelfCalibration(ExposureRatios: OleVariant; const Features: WideString;
1002                                         const FunctionType: WideString; Smoothness: Double;
1003                                         PolynomialDegree: Integer): OleVariant;
1004     function MapImage(const Map: IHImageX): IHImageX;
1005     procedure GenRadialDistortionMap(CamParamIn: OleVariant; CamParamOut: OleVariant;
1006                                      const MapType: WideString);
1007     procedure GenImageToWorldPlaneMap(CameraParam: OleVariant; WorldPose: OleVariant;
1008                                       WidthIn: Integer; HeightIn: Integer; WidthMapped: Integer;
1009                                       HeightMapped: Integer; Scale: OleVariant;
1010                                       const MapType: WideString);
1011     function ImageToWorldPlane(CameraParam: OleVariant; WorldPose: OleVariant; Width: Integer;
1012                                Height: Integer; Scale: OleVariant; const Interpolation: WideString): IHImageX;
1013     function ChangeRadialDistortionPoints(Row: OleVariant; Col: OleVariant; CamParamIn: OleVariant;
1014                                           CamParamOut: OleVariant; out ColChanged: OleVariant): OleVariant;
1015     function ChangeRadialDistortionImage(const Region: IHRegionX; CamParamIn: OleVariant;
1016                                          CamParamOut: OleVariant): IHImageX;
1017     procedure SimCaltab(const CalTabDescrFile: WideString; CameraParam: OleVariant;
1018                         CaltabPose: OleVariant; GrayBackground: Integer; GrayCaltab: Integer;
1019                         GrayMarks: Integer; ScaleFac: Double);
1020     function FindMarksAndPose(const CalTabRegion: IHRegionX; const CalTabDescrFile: WideString;
1021                               StartCamParam: OleVariant; StartThresh: Integer;
1022                               DeltaThresh: Integer; MinThresh: Integer; Alpha: Double;
1023                               MinContLength: Double; MaxDiamMarks: Double; out CCoord: OleVariant;
1024                               out StartPose: OleVariant): OleVariant;
1025     function FindCaltab(const CalTabDescrFile: WideString; SizeGauss: OleVariant;
1026                         MarkThresh: OleVariant; MinDiamMarks: Integer): IHRegionX;
1027     function DecodeBarCodeRectangle2(const BarCodeHandle: IHBarCodeX; CodeType: OleVariant;
1028                                      Row: OleVariant; Column: OleVariant; Phi: OleVariant;
1029                                      Length1: OleVariant; Length2: OleVariant): OleVariant;
1030     function FindBarCode(const BarCodeHandle: IHBarCodeX; CodeType: OleVariant;
1031                          out DecodedDataStrings: OleVariant): IHRegionX;
1032     function Get2DBarCodePos(const BarCodeRegion: IHRegionX; BarCodeDescr: OleVariant;
1033                              CodeRegDescr: OleVariant; GenParamNames: OleVariant;
1034                              GenParamValues: OleVariant; out BarCodeData: OleVariant;
1035                              out DataElementRow: OleVariant; out DataElementCol: OleVariant): OleVariant;
1036     function Get2DBarCode(const BarCodeRegion: IHRegionX; BarCodeDescr: OleVariant;
1037                           CodeRegDescr: OleVariant; GenParamNames: OleVariant;
1038                           GenParamValues: OleVariant; out BarCodeData: OleVariant): OleVariant;
1039     function Find2DBarCode(BarCodeDescr: OleVariant; GenParamNames: OleVariant;
1040                            GenParamValues: OleVariant; out CodeRegDescr: OleVariant): IHRegionX;
1041     function Get1DBarCodeScanline(BarCodeDescr: OleVariant; GenericName: OleVariant;
1042                                   GenericValue: OleVariant; Orientation: Double;
1043                                   const StopIfFound: WideString; out ScanlineNumPoints: OleVariant;
1044                                   out ScanlineDecoded: OleVariant;
1045                                   out ScanlinePointsRow: OleVariant;
1046                                   out ScanlinePointsColumn: OleVariant): OleVariant;
1047     function Get1DBarCode(BarCodeDescr: OleVariant; GenericName: OleVariant;
1048                           GenericValue: OleVariant; Orientation: Double): OleVariant;
1049     function Find1DBarCodeRegion(BarCodeDescr: OleVariant; GenericName: OleVariant;
1050                                  GenericValue: OleVariant; out Orientation: OleVariant): IHRegionX;
1051     function Find1DBarCodeScanline(BarCodeDescr: OleVariant; GenericName: OleVariant;
1052                                    GenericValue: OleVariant; const StopIfFound: WideString;
1053                                    out BarcodeFound: Integer; out BarCodeElements: OleVariant;
1054                                    out Orientation: Double; out ScanlineNumPoints: OleVariant;
1055                                    out ScanlineDecoded: OleVariant;
1056                                    out ScanlinePointsRow: OleVariant;
1057                                    out ScanlinePointsColumn: OleVariant): IHRegionX;
1058     function Find1DBarCode(BarCodeDescr: OleVariant; GenericName: OleVariant;
1059                            GenericValue: OleVariant; out BarcodeFound: Integer;
1060                            out BarCodeElements: OleVariant; out Orientation: Double): IHRegionX;
1061     procedure GiveBgEsti(const BgEstiHandle: IHBgEstiX);
1062     procedure UpdateBgEsti(const UpDateRegion: IHRegionX; const BgEstiHandle: IHBgEstiX);
1063     function RunBgEsti(const BgEstiHandle: IHBgEstiX): IHRegionX;
1064     function CreateBgEsti(Syspar1: Double; Syspar2: Double; const GainMode: WideString;
1065                           Gain1: Double; Gain2: Double; const AdaptMode: WideString;
1066                           MinDiff: Double; StatNum: Integer; ConfidenceC: Double; TimeC: Double): IHBgEstiX;
1067     function GrabDataAsync(out Contours: IHXLDContX; const AcqHandle: IHFramegrabberX;
1068                            MaxDelay: Double; out Data: OleVariant): IHRegionX;
1069     function GrabData(out Contours: IHXLDContX; const AcqHandle: IHFramegrabberX;
1070                       out Data: OleVariant): IHRegionX;
1071     procedure GrabImageAsync(const AcqHandle: IHFramegrabberX; MaxDelay: Double);
1072     procedure GrabImage(const AcqHandle: IHFramegrabberX);
1073     procedure Cast(const Source: IHObjectX);
1074     property DefaultInterface: IHImageX read GetDefaultInterface;
1075   published
1076 {$IFDEF LIVE_SERVER_AT_DESIGN_TIME}
1077     property Server: THImageXProperties read GetServerProperties;
1078 {$ENDIF}
1079   end;

转载于:https://www.cnblogs.com/ziwang/p/4852054.html

zw版_Halcon图像库delphi接口文件相关推荐

  1. 《zw版Halcon与delphi系列原创教程》发布说明

    <zw版Halcon与delphi系列原创教程>发布说明 zw转载的<台湾nvp系列halcon-delphi教程>,虽然很多,不过基本上都是从cnc.数控角度的demo.. ...

  2. zw版·Halcon与delphi(兼谈opencv)

    zw版·Halcon与delphi(兼谈opencv) QQ群 247994767(delphi与halcon) <Halcon与delphi>系列,早两年就想写,不过一方面,因为Halc ...

  3. 【《zw版·Halcon与delphi系列原创教程》 zw_halcon人脸识别

    [<zw版·Halcon与delphi系列原创教程>zw_halcon人脸识别 经常有用户问,halcon人脸识别方面的问题. 可能是cv在人脸识别.车牌识别方面的投入太多了. 其实,人脸 ...

  4. 《zw版·ddelphi与halcon系列原创教程》Halcon的短板与delphi

    [<zw版·delphi与Halcon系列原创教程> Halcon的短板与delphi 看过<delphi与Halcon系列>blog的网友都知道,笔者对Halcon一直是非常 ...

  5. zw版_zw中文增强版Halcon官方Delphi例程

    [<zw版·delphi与halcon系列原创教程> zw版_zw中文增强版Halcon官方Delphi例程 源码下载:http://files.cnblogs.com/files/ziw ...

  6. 《zw版·delphi与halcon系列原创教程》zw版_THImagex控件函数列表

    <zw版·delphi与halcon系列原创教程>zw版_THImagex控件函数列表 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就要7w多行,但核心控件就是两 ...

  7. zw版【转发·台湾nvp系列Delphi例程】HALCON Histogram

    zw版[转发·台湾nvp系列Delphi例程]HALCON Histogram unit Unit1; interface uses Windows, Messages, SysUtils, Vari ...

  8. zw版【转发·台湾nvp系列Delphi例程】HALCON HSerializedItem

    zw版[转发·台湾nvp系列Delphi例程]HALCON HSerializedItem procedure TForm1.FormShow(Sender: TObject); var img, i ...

  9. zw版【转发·台湾nvp系列Delphi例程】HALCON SmoothImage

    zw版[转发·台湾nvp系列Delphi例程]HALCON SmoothImage procedure TForm1.Button1Click(Sender: TObject); var image0 ...

最新文章

  1. Protocol Buffer技术详解(语言规范)
  2. Android之Debug运行项目一直卡在Debug界面(can‘t bind to local 8066 for debug)
  3. 如何在 Linux 中快速地通过 HTTP 提供文件访问服务
  4. 数据结构(字符串)—— 循环旋转字符串的判断
  5. docker 容器通过桥接方式绑定到宿主机无法访问另外一个docker容器
  6. Mothur3进阶_Mothur扩增子基因序列处理_数据比对、聚类及其处理评估
  7. 工单系统(源代码)PHP语言开发 开发者版
  8. VTK:图形基本操作进阶——连通区域分析
  9. 管理工具 QTTabBar
  10. 基于Python实现五子棋
  11. 随时标注各种物件,一个小标签机就能搞定,汉印M11体验
  12. 10 公众号开发 - 关注/取消关注事件
  13. 如何破解Aspose.word带水印问题
  14. 全国首批城市级5G车联网应用项目落地!
  15. RDKit|分子修改与编辑
  16. 中秋之夜——随笔杂谈
  17. 新近开发了一款Android应用奶爸指南
  18. SpaceX将在菲律宾推出星链服务
  19. 实现 防止视频被下载功能
  20. 虚幻引擎_材质+后处理实现中国风水墨渲染

热门文章

  1. 如果你是一个C++面试官,你会问哪些问题?
  2. python求满足条件的值的个数_计算列表中满足特定条件的值的数目
  3. 【笔记】曝光值EV曝光补偿曝光量
  4. 服务器维护的几个注意点
  5. 微信小程序:更改字体(text)和图标(icon)的颜色以及RGB颜色值与十六进制颜色码之间的转换
  6. mysql自动备份脚本下载+简单解读
  7. 从奥运门票系统瘫痪到家乐福踩踏事件看软件设计中业务模型的处理
  8. 【算法讲11:卡特兰数】默慈金数 | 那罗延数 | 施罗德数
  9. 牛逼!StarRocks 2.0正式发布,新一年,新启航,新极速!
  10. 右击我的电脑--管理--计算机管理,在我的电脑上点右键-管理打不开了?