zw版_Halcon图像库delphi接口文件

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(PSF Integer; PSFheight: Integer; Blurring: Double; Angle: Integer; 
  33                            Type_: Integer);
  34     function SimulateMotion(Blurring: Double; Angle: Integer; Type_: Integer): IHImageX;
  35     procedure GenPsfDefocus(PSF 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; Band 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;
QQ群 247994767(delphi与halcon) 【zw版《delphi与halcon系列原创教程》,网址,cnblogs.com/ziwang/ 】 QQ:2592439395(zw) , delphi+halcon,图像分析神级配置, 分分钟秒杀 c+opencv,python+opencv,c+matlab, 以及其他各种组合
原文地址:https://www.cnblogs.com/ziwang/p/4852054.html