HObject类是halcon对有关图像的对象进行抽象而来的类
HObject类是HImage、HRegion、HXLD的基类
当VS引用了halcon的halcondotnet程序集,C#就可以看到如下关于HObject的信息:
继承关系
继承于HObjectBase基类、ISerializable接口和ICloneable接口;
构造方法
[EditorBrowsable(EditorBrowsableState.Never)]参见相关博客介绍
- public HObject();
- public HObject(IntPtr key);
- public HObject(HObject obj);
- public HObject(IntPtr key, bool copy);
- public HObject(SerializationInfo info, StreamingContext context);
索引器
public HObject this[HTuple index] { get; }
方法
- public static HObject Deserialize(Stream stream);
- public HObject Clone();
- public int CompareObj(HObject objects2, double epsilon);
- public int CompareObj(HObject objects2, HTuple epsilon);
- public HObject ConcatObj(HObject objects2);
- public HObject CopyObj(int index, int numObj);
- public int CountObj();
- public void DeserializeObject(HSerializedItem serializedItemHandle);
- public void DispObj(HWindow windowHandle);
- public void GenEmptyObj();
- public HTuple GetChannelInfo(string request, HTuple channel);
- public string GetChannelInfo(string request, int channel);
- public HTuple GetObjClass();
- public void IntegerToObj(IntPtr surrogateTuple);
- public void IntegerToObj(HTuple surrogateTuple);
- public HObject ObjDiff(HObject objectsSub);
- public HTuple ObjToInteger(int index, int number);
- public void ReadObject(string fileName);
- public HObject SelectObj(HTuple index);
- public HObject SelectObj(int index);
- public void Serialize(Stream stream);
- public HSerializedItem SerializeObject();
- public int TestEqualObj(HObject objects2);
- public void WriteObject(string fileName);
[EditorBrowsable(EditorBrowsableState.Never)]
25. public static int LoadNew(IntPtr proc, int parIndex, int err, out HObject obj);
下面解释每条方法(不一定按顺序):
public int CompareObj(HObject objects2, double epsilon);
参数:objects2输入要比较的HObject对象,epsilon为同一位置的像素灰度差
返回:int 类型的比较结果
描述:当前HObject对象和objects2对象比较相等性,两组HObject对象在epsilon像素灰度差差值范围内仍然认为是相等的。
例程
public int CompareObj(HObject objects2, HTuple epsilon);
参数:objects2输入要比较的HObject对象,epsilon为同一位置的像素灰度差数组
返回:int 类型的比较结果
描述:当前HObject对象和objects2对象比较相等性,两组HObject对象在epsilon像素灰度差差值范围内仍然认为是相等的。
例程
public int TestEqualObj(HObject objects2);
参数:objects2输入要比较的HObject对象
返回:int 类型的比较结果
描述:当前HObject对象和objects2对象比较相等性,即内存一致性(对于regions则只比较像素灰度是否一致)。
例程
public HObject ConcatObj(HObject objects2);
参数:输入的objects2对象,用于与当前对象连接
返回:HObject 类型的对象
描述:当前Objects1对象和Objects2的两个对象连接,并返回一个新的HObject对象。因此,这个HObject对象包含了两个 HObject 对象,假设返回的是ObjectsConcat对象,则ObjectsConcat = [Objects1 Objects2];在ObjectsConcat对象中, 首先存储Objects1的对象,然后存储Objects2的对象。注意,只有对相应HImage和HRegion的引用才存储在 ObjectsConcat中,并且不分配新内存,这意味着输入图像(Objects1和Objects2)的修改,直接影响ObjectsConcat的 图像,反之亦然。
例程
public HObject CopyObj(int index, int numObj)
参数:index输入待复制图像的起始索引,numObj为复制多少个成员
返回:HObject 类型的对象
描述:从当前HObject对象index开始,复制numObj个成员,放到一个新的HObject对象并返回。
例程
public int CountObj();
参数:无
返回:int类型的结果,即成员数量
描述:计算并返回当前HObject对象成员数。
例程
public void DispObj(HWindow windowHandle)
参数:windowHandle为HWindow窗体控件对象
返回:空
描述:将当前HObject对象显示在HWindow窗体控件对象windowHandle上。
例程
public void GenEmptyObj();
参数:无
返回:空
描述:当前HObject对象设置为空,CountObj()调用将返回0。
例程
public HObject ObjDiff(HObject objectsSub);
参数:HObject 类型objectsSub对象
返回:HObject 类型的对象
描述:比较当前HObject对象和objectsSub的不同,并返回不同之处的集合HObject对象。
例程
public void WriteObject(string fileName);
参数:string 类型fileName,生成的HOBJ二进制文件名
返回:空
描述:将当前HObject对象写成HOBJ二进制文件,文件名为fileName。
例程
public void ReadObject(string fileName);
参数:string 类型fileName,
返回:空
描述:读取文件名为fileName的HOBJ二进制文件到当前的HObject对象。
例程
public HSerializedItem SerializeObject();
参数:无
返回:HSerializedItem 类型
描述:
例程
public static HObject Deserialize(Stream stream);
参数:Stream 类型
返回:HObject 类型的对象
描述:反序列化stream并返回HObject类型的对象;
例程
public void Serialize(Stream stream);
参数:Stream 类型
返回:空
描述:
例程
public HTuple GetChannelInfo(string request, HTuple channel);
参数:request ,int 类型的channel表示...
返回:HTuple 类型
描述:
例程
public string GetChannelInfo(string request, int channel);
参数:request ,int 类型的channel参数表示...
返回:string 类型
描述:
例程
public void IntegerToObj(IntPtr surrogateTuple);
参数:IntPtr 类型的surrogateTuple参数表示...
返回:空
描述:
例程
public void IntegerToObj(HTuple surrogateTuple);
参数:HTuple 类型的surrogateTuple参数表示...
返回:空
描述:
例程
public HTuple ObjToInteger(int index, int number);
参数:HTuple 类型的surrogateTuple参数表示...
返回:空
描述:
例程
public HObject Clone();
参数:空
返回:HObject 类型
描述:
例程
下面为halcon帮助文档里的描述:
未完待续...