zoukankan      html  css  js  c++  java
  • 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, 以及其他各种组合
  • 相关阅读:
    cubestore driver 添加auth认证
    cubestore 添加auth 认证
    基于s3 扩展cubestore
    cube.js 预聚合检查
    cube.js 集成cubestore 时间格式问题的一些说明
    cube.js 集成cubestore 时间格式问题
    Building a GraphQL to SQL Compiler on Postgres, MS SQL and MySQL
    支持minio cubestore docker 镜像
    数据治理怎么做
    使用project制定项目计划可以分为六个步骤
  • 原文地址:https://www.cnblogs.com/ziwang/p/4852054.html
Copyright © 2011-2022 走看看